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

; 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" }
%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.107", 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.107", 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.107", 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 i8, align 1
  %151 = alloca i8, align 1
  %152 = alloca i8, align 1
  %153 = alloca i8, align 1
  %154 = alloca %"class.sc_dt::sc_int.0", align 8
  %155 = alloca i8, align 1
  %156 = alloca i8, align 1
  %157 = alloca i8, align 1
  %158 = alloca %"class.sc_dt::sc_int.1", align 8
  %159 = alloca %"class.sc_dt::sc_int.107", align 8
  %160 = alloca %"class.sc_dt::sc_int.7", align 8
  %161 = alloca %"class.sc_dt::sc_int.107", align 8
  %162 = alloca %"class.sc_dt::sc_int.1", align 8
  %163 = alloca %"class.sc_dt::sc_int.0", align 8
  %164 = alloca %"class.sc_dt::sc_int.107", 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 %"class.sc_dt::sc_int.1", align 8
  %170 = alloca %"class.sc_dt::sc_int.107", align 8
  %171 = alloca %"class.sc_dt::sc_int.8", align 8
  %172 = alloca i8, align 1
  %173 = alloca i8, align 1
  %174 = alloca %"class.sc_dt::sc_int.1", align 8
  %175 = alloca i8, align 1
  %176 = alloca i8, align 1
  %177 = alloca i8, align 1
  %178 = alloca %"class.sc_dt::sc_int.1", align 8
  %179 = alloca %"class.sc_dt::sc_int.107", align 8
  %180 = alloca %"class.sc_dt::sc_int.7", align 8
  %181 = alloca %"class.sc_dt::sc_int.107", align 8
  %182 = alloca %"class.sc_dt::sc_int.1", align 8
  %183 = alloca %"class.sc_dt::sc_int.0", align 8
  %184 = alloca %"class.sc_dt::sc_int.107", 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.1", align 8
  %189 = alloca %"class.sc_dt::sc_int.1", align 8
  %190 = alloca %"class.sc_dt::sc_int.8", align 8
  %191 = alloca i8, align 1
  %192 = alloca i8, align 1
  %193 = alloca %"class.sc_dt::sc_int.0", align 8
  %194 = alloca i8, align 1
  %195 = alloca i8, align 1
  %196 = alloca i8, align 1
  %197 = alloca %"class.sc_dt::sc_int.0", align 8
  %198 = alloca i8, align 1
  %199 = alloca i8, align 1
  %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 %"class.sc_dt::sc_int.1", align 8
  %208 = alloca %"class.sc_dt::sc_int.107", align 8
  %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.107", align 8
  %212 = alloca %"class.sc_dt::sc_int.107", 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.1", align 8
  %217 = alloca %"class.sc_dt::sc_int.1", align 8
  %218 = alloca %"class.sc_dt::sc_int.8", align 8
  %219 = alloca i8, align 1
  %220 = alloca i8, align 1
  %221 = alloca %"class.sc_dt::sc_int.0", align 8
  %222 = alloca i8, align 1
  %223 = alloca i8, align 1
  %224 = alloca i8, align 1
  %225 = alloca %"class.sc_dt::sc_int.0", align 8
  %226 = alloca i8, align 1
  %227 = alloca i8, align 1
  %228 = alloca i8, align 1
  %229 = alloca %"class.sc_dt::sc_int.1", align 8
  %230 = alloca %"class.sc_dt::sc_int.107", align 8
  %231 = alloca %"class.sc_dt::sc_int.8", align 8
  %232 = alloca i8, align 1
  %233 = alloca i8, align 1
  %234 = alloca %"class.sc_dt::sc_int.0", align 8
  %235 = alloca i8, align 1
  %236 = alloca i8, align 1
  %237 = alloca i8, align 1
  %238 = alloca %"class.sc_dt::sc_int.0", align 8
  %239 = alloca %"class.sc_dt::sc_int.0", align 8
  %240 = alloca %"class.sc_dt::sc_int.0", align 8
  %241 = alloca %"class.sc_dt::sc_int.0", align 8
  %242 = alloca %"class.sc_dt::sc_int.0", align 8
  %243 = alloca i8, align 1
  %244 = alloca i8, align 1
  %245 = alloca i8, align 1
  %246 = alloca %"class.sc_dt::sc_int.107", align 8
  %247 = alloca i8, align 1
  %248 = alloca i8, align 1
  %249 = alloca i8, align 1
  %250 = alloca i8, align 1
  %251 = alloca i8, align 1
  %252 = alloca i8, align 1
  %253 = alloca %"class.sc_dt::sc_int.107", align 8
  %254 = alloca i8, align 1
  %255 = alloca i8, align 1
  %256 = alloca i8, align 1
  %257 = alloca i8, align 1
  %258 = alloca i8, align 1
  %259 = alloca i8, align 1
  %260 = alloca %"class.sc_dt::sc_int.0", align 8
  %261 = alloca i8, align 1
  %262 = alloca i8, align 1
  %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 %"class.sc_dt::sc_int.1", align 8
  %271 = alloca %"class.sc_dt::sc_int.107", align 8
  %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.107", align 8
  %275 = alloca %"class.sc_dt::sc_int.107", 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.1", align 8
  %280 = alloca %"class.sc_dt::sc_int.1", align 8
  %281 = alloca %"class.sc_dt::sc_int.8", align 8
  %282 = alloca i8, align 1
  %283 = alloca i8, align 1
  %284 = alloca %"class.sc_dt::sc_int.0", align 8
  %285 = alloca i8, align 1
  %286 = alloca i8, align 1
  %287 = alloca i8, align 1
  %288 = alloca %"class.sc_dt::sc_int.107", align 8
  %289 = alloca i8, align 1
  %290 = alloca i8, align 1
  %291 = alloca i8, align 1
  %292 = alloca %"class.sc_dt::sc_int.0", align 8
  %293 = alloca i8, align 1
  %294 = alloca i8, align 1
  %295 = alloca i8, align 1
  %296 = alloca i8, align 1
  %297 = alloca i8, align 1
  %298 = alloca i8, align 1
  %299 = alloca %"class.sc_dt::sc_int.0", align 8
  %300 = alloca i8, align 1
  %301 = alloca i8, align 1
  %302 = alloca i8, align 1
  %303 = alloca %"class.sc_dt::sc_int.1", align 8
  %304 = alloca %"class.sc_dt::sc_int.107", align 8
  %305 = alloca %"class.sc_dt::sc_int.8", align 8
  %306 = alloca i8, align 1
  %307 = alloca i8, align 1
  %308 = alloca %"class.sc_dt::sc_int.0", align 8
  %309 = alloca i8, align 1
  %310 = alloca i8, align 1
  %311 = alloca i8, align 1
  %312 = alloca %"class.sc_dt::sc_int.0", align 8
  %313 = alloca i8, align 1
  %314 = alloca i8, align 1
  %315 = alloca i8, align 1
  %316 = alloca %"class.sc_dt::sc_int.0", align 8
  %317 = alloca i8, align 1
  %318 = alloca i8, align 1
  %319 = alloca i8, align 1
  %320 = alloca %"class.sc_dt::sc_int.0", align 8
  %321 = alloca i8, align 1
  %322 = alloca i8, align 1
  %323 = alloca i8, align 1
  %324 = alloca %"class.sc_dt::sc_int.107", align 8
  %325 = alloca i8, align 1
  %326 = alloca i8, align 1
  %327 = alloca i8, align 1
  %328 = alloca %"class.sc_dt::sc_int.107", align 8
  %329 = alloca %"class.sc_dt::sc_int.107", align 8
  %330 = alloca i8, align 1
  %331 = alloca i8, align 1
  %332 = alloca i8, align 1
  %333 = alloca %"class.sc_dt::sc_int.1", align 8
  %334 = alloca %"class.sc_dt::sc_int.0", align 8
  %335 = alloca %"class.sc_dt::sc_int.1", align 8
  %336 = alloca %"class.sc_dt::sc_int.0", 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.1", align 8
  %342 = alloca %"class.sc_dt::sc_int.107", align 8
  %343 = alloca %"class.sc_dt::sc_int.8", align 8
  %344 = alloca i8, align 1
  %345 = alloca i8, align 1
  %346 = alloca %"class.sc_dt::sc_int.0", align 8
  %347 = alloca i8, align 1
  %348 = alloca i8, align 1
  %349 = alloca i8, align 1
  %350 = alloca %"class.sc_dt::sc_int.0", align 8
  %351 = alloca %"class.sc_dt::sc_int.108", align 8
  %352 = alloca i8, align 1
  %353 = alloca i8, align 1
  %354 = alloca i8, align 1
  %355 = alloca %"class.sc_dt::sc_int.0", align 8
  %356 = alloca i8, align 1
  %357 = alloca i8, align 1
  %358 = alloca i8, align 1
  %359 = alloca %"class.sc_dt::sc_int.0", align 8
  %360 = alloca i8, align 1
  %361 = alloca i8, align 1
  %362 = alloca i8, align 1
  %363 = alloca %"class.sc_dt::sc_int.0", align 8
  %364 = alloca %"class.sc_dt::sc_int.107", align 8
  %365 = alloca i8, align 1
  %366 = alloca i8, align 1
  %367 = alloca i8, align 1
  %368 = alloca %"class.sc_dt::sc_int.1", align 8
  %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.0", align 8
  %372 = alloca %"class.sc_dt::sc_int.5", align 8
  %373 = alloca %"class.sc_dt::sc_int.8", align 8
  %374 = alloca i8, align 1
  %375 = alloca i8, align 1
  %376 = alloca %"class.sc_dt::sc_int.1", align 8
  %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.0", align 8
  %380 = alloca %"class.sc_dt::sc_int.5", align 8
  %381 = alloca %"class.sc_dt::sc_int.8", align 8
  %382 = alloca i8, align 1
  %383 = alloca i8, align 1
  %384 = alloca %"class.sc_dt::sc_int.1", align 8
  %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.0", align 8
  %388 = alloca %"class.sc_dt::sc_int.5", align 8
  %389 = alloca %"class.sc_dt::sc_int.8", align 8
  %390 = alloca i8, align 1
  %391 = alloca i8, align 1
  %392 = alloca %"class.sc_dt::sc_int.5", align 8
  %393 = alloca %"class.sc_dt::sc_int.5", align 8
  %394 = alloca %"class.sc_dt::sc_int.1", 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.0", align 8
  %398 = alloca %"class.sc_dt::sc_int.8", align 8
  %399 = alloca i8, align 1
  %400 = alloca i8, align 1
  %401 = alloca %"class.sc_dt::sc_int.1", align 8
  %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.0", align 8
  %405 = alloca %"class.sc_dt::sc_int.5", align 8
  %406 = alloca %"class.sc_dt::sc_int.8", align 8
  %407 = alloca i8, align 1
  %408 = alloca i8, align 1
  %409 = alloca %"class.sc_dt::sc_int.1", align 8
  %410 = alloca %"class.sc_dt::sc_int.1", align 8
  %411 = alloca %"class.sc_dt::sc_int.0", 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 %"class.sc_dt::sc_int.1", align 8
  %417 = alloca %"class.sc_dt::sc_int.0", align 8
  %418 = alloca %"class.sc_dt::sc_int.5", align 8
  %419 = alloca %"class.sc_dt::sc_int.8", align 8
  %420 = alloca i8, align 1
  %421 = alloca i8, align 1
  %422 = alloca i8, align 1
  %423 = alloca i8, align 1
  %424 = alloca i8, align 1
  %425 = alloca %"class.sc_dt::sc_int.0", align 8
  %426 = alloca i8, align 1
  %427 = alloca i8, align 1
  %428 = alloca i8, align 1
  %429 = alloca %"class.sc_dt::sc_int.0", align 8
  %430 = alloca %"class.sc_dt::sc_int.0", align 8
  %431 = alloca i8, align 1
  %432 = alloca i8, align 1
  %433 = alloca i8, align 1
  %434 = alloca %"class.sc_dt::sc_int.8", align 8
  %435 = alloca i8, align 1
  %436 = alloca i8, align 1
  %437 = alloca %"class.sc_dt::sc_int.1", align 8
  %438 = alloca i8, align 1
  %439 = alloca i8, align 1
  %440 = alloca i8, align 1
  %441 = alloca %"class.sc_dt::sc_int.0", align 8
  %442 = alloca %"class.sc_dt::sc_int.0", align 8
  %443 = alloca i8, align 1
  %444 = alloca i8, align 1
  %445 = alloca i8, align 1
  %446 = alloca %"class.sc_dt::sc_int.5", align 8
  %447 = alloca i8, align 1
  %448 = alloca i8, align 1
  %449 = alloca i8, align 1
  %450 = alloca %"class.sc_dt::sc_int.107", align 8
  %451 = alloca i8, align 1
  %452 = alloca i8, align 1
  %453 = alloca i8, align 1
  %454 = alloca %"class.sc_dt::sc_int.5", align 8
  %455 = alloca i8, align 1
  %456 = alloca i8, align 1
  %457 = alloca i8, align 1
  %458 = alloca %"class.sc_dt::sc_int.1", align 8
  %459 = alloca %"class.sc_dt::sc_int.1", align 8
  %460 = alloca %"class.sc_dt::sc_int.107", align 8
  %461 = alloca %"class.sc_dt::sc_int.5", align 8
  %462 = alloca %"class.sc_dt::sc_int.107", align 8
  %463 = alloca %"class.sc_dt::sc_int.8", align 8
  %464 = alloca i8, align 1
  %465 = alloca i8, align 1
  %466 = alloca %"class.sc_dt::sc_int.1", align 8
  %467 = alloca %"class.sc_dt::sc_int.0", align 8
  %468 = alloca %"class.sc_dt::sc_int.1", align 8
  %469 = alloca %"class.sc_dt::sc_int.107", align 8
  %470 = alloca %"class.sc_dt::sc_int.8", align 8
  %471 = alloca i8, align 1
  %472 = alloca i8, align 1
  %473 = alloca %"class.sc_dt::sc_int.1", align 8
  %474 = alloca %"class.sc_dt::sc_int.107", align 8
  %475 = alloca %"class.sc_dt::sc_int.8", align 8
  %476 = alloca i8, align 1
  %477 = alloca i8, align 1
  %478 = alloca %"class.sc_dt::sc_int.107", align 8
  %479 = alloca i8, align 1
  %480 = alloca i8, align 1
  %481 = alloca i8, align 1
  %482 = alloca %"class.sc_dt::sc_int.0", align 8
  %483 = alloca i8, align 1
  %484 = alloca i8, align 1
  %485 = alloca i8, align 1
  %486 = alloca %"class.sc_dt::sc_int.0", align 8
  %487 = alloca i8, align 1
  %488 = alloca i8, align 1
  %489 = alloca i8, align 1
  %490 = alloca %"class.sc_dt::sc_int.107", align 8
  %491 = alloca i8, align 1
  %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.0", align 8
  %496 = alloca %"class.sc_dt::sc_int.5", align 8
  %497 = alloca %"class.sc_dt::sc_int.8", align 8
  %498 = alloca i8, align 1
  %499 = alloca i8, align 1
  %500 = alloca %"class.sc_dt::sc_int.1", align 8
  %501 = alloca %"class.sc_dt::sc_int.0", align 8
  %502 = alloca %"class.sc_dt::sc_int.5", align 8
  %503 = alloca %"class.sc_dt::sc_int.1", align 8
  %504 = alloca %"class.sc_dt::sc_int.1", align 8
  %505 = alloca %"class.sc_dt::sc_int.8", align 8
  %506 = alloca i8, align 1
  %507 = alloca i8, align 1
  %508 = alloca %"class.sc_dt::sc_int.1", align 8
  %509 = alloca %"class.sc_dt::sc_int.0", align 8
  %510 = alloca %"class.sc_dt::sc_int.5", align 8
  %511 = alloca %"class.sc_dt::sc_int.1", align 8
  %512 = alloca %"class.sc_dt::sc_int.1", align 8
  %513 = alloca %"class.sc_dt::sc_int.8", align 8
  %514 = alloca i8, align 1
  %515 = alloca i8, align 1
  %516 = alloca %"class.sc_dt::sc_int.1", align 8
  %517 = alloca %"class.sc_dt::sc_int.0", 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.1", align 8
  %521 = alloca %"class.sc_dt::sc_int.1", align 8
  %522 = alloca %"class.sc_dt::sc_int.8", align 8
  %523 = alloca i8, align 1
  %524 = alloca i8, align 1
  %525 = alloca %"class.sc_dt::sc_int.0", align 8
  %526 = alloca %"class.sc_dt::sc_int.5", align 8
  %527 = alloca %"class.sc_dt::sc_int.8", align 8
  %528 = alloca i8, align 1
  %529 = alloca i8, align 1
  %530 = alloca %"class.sc_dt::sc_int.1", align 8
  %531 = alloca %"class.sc_dt::sc_int.0", align 8
  %532 = alloca %"class.sc_dt::sc_int.1", align 8
  %533 = alloca %"class.sc_dt::sc_int.5", align 8
  %534 = alloca %"class.sc_dt::sc_int.8", align 8
  %535 = alloca i8, align 1
  %536 = alloca i8, align 1
  %537 = alloca %"class.sc_dt::sc_int.0", align 8
  %538 = alloca i8, align 1
  %539 = alloca i8, align 1
  %540 = alloca i8, align 1
  %541 = alloca %"class.sc_dt::sc_int.0", align 8
  %542 = alloca i8, align 1
  %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 %"class.sc_dt::sc_int.107", align 8
  %549 = alloca %"class.sc_dt::sc_int.5", align 8
  %550 = alloca i8, align 1
  %551 = alloca i8, align 1
  %552 = alloca i8, align 1
  %553 = alloca %"class.sc_dt::sc_int.107", align 8
  %554 = alloca %"class.sc_dt::sc_int.107", align 8
  %555 = alloca %"class.sc_dt::sc_int.1", align 8
  %556 = alloca i8, align 1
  %557 = alloca i8, align 1
  %558 = alloca i8, align 1
  %559 = alloca %"class.sc_dt::sc_int.0", align 8
  %560 = alloca i8, align 1
  %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 %"class.sc_dt::sc_int.1", align 8
  %570 = alloca %"class.sc_dt::sc_int.107", align 8
  %571 = alloca %"class.sc_dt::sc_int.1", align 8
  %572 = alloca %"class.sc_dt::sc_int.107", align 8
  %573 = alloca %"class.sc_dt::sc_int.5", align 8
  %574 = alloca %"class.sc_dt::sc_int.8", align 8
  %575 = alloca i8, align 1
  %576 = alloca i8, align 1
  %577 = alloca %"class.sc_dt::sc_int.1", align 8
  %578 = alloca %"class.sc_dt::sc_int.107", align 8
  %579 = alloca %"class.sc_dt::sc_int.1", align 8
  %580 = alloca %"class.sc_dt::sc_int.107", align 8
  %581 = alloca %"class.sc_dt::sc_int.8", align 8
  %582 = alloca i8, align 1
  %583 = alloca i8, align 1
  %584 = alloca %"class.sc_dt::sc_int.0", align 8
  %585 = alloca i8, align 1
  %586 = alloca i8, align 1
  %587 = alloca i8, align 1
  %588 = alloca %"class.sc_dt::sc_int.1", align 8
  %589 = alloca %"class.sc_dt::sc_int.1", align 8
  %590 = alloca %"class.sc_dt::sc_int.0", align 8
  %591 = alloca %"class.sc_dt::sc_int.5", align 8
  %592 = alloca %"class.sc_dt::sc_int.8", align 8
  %593 = alloca i8, align 1
  %594 = alloca i8, align 1
  %595 = alloca %"class.sc_dt::sc_int.1", align 8
  %596 = alloca %"class.sc_dt::sc_int.1", align 8
  %597 = alloca %"class.sc_dt::sc_int.0", 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.0", align 8
  %605 = alloca %"class.sc_dt::sc_int.8", align 8
  %606 = alloca i8, align 1
  %607 = alloca i8, align 1
  %608 = alloca %"class.sc_dt::sc_int.1", align 8
  %609 = alloca %"class.sc_dt::sc_int.1", align 8
  %610 = alloca %"class.sc_dt::sc_int.0", align 8
  %611 = alloca %"class.sc_dt::sc_int.0", align 8
  %612 = alloca %"class.sc_dt::sc_int.0", align 8
  %613 = alloca %"class.sc_dt::sc_int.5", align 8
  %614 = alloca %"class.sc_dt::sc_int.0", align 8
  %615 = alloca %"class.sc_dt::sc_int.0", align 8
  %616 = alloca %"class.sc_dt::sc_int.5", align 8
  %617 = alloca %"class.sc_dt::sc_int.8", align 8
  %618 = alloca i8, align 1
  %619 = alloca i8, align 1
  %620 = alloca %"class.sc_dt::sc_int.1", align 8
  %621 = alloca %"class.sc_dt::sc_int.5", align 8
  %622 = alloca %"class.sc_dt::sc_int.8", align 8
  %623 = alloca i8, align 1
  %624 = alloca i8, align 1
  %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 %"class.sc_dt::sc_int.1", align 8
  %632 = alloca %"class.sc_dt::sc_int.107", align 8
  %633 = alloca %"class.sc_dt::sc_int.8", align 8
  %634 = alloca i8, align 1
  %635 = alloca i8, align 1
  %636 = alloca %"class.sc_dt::sc_int.1", align 8
  %637 = alloca i8, align 1
  %638 = alloca i8, align 1
  %639 = alloca i8, align 1
  %640 = alloca %"class.sc_dt::sc_int.1", align 8
  %641 = alloca %"class.sc_dt::sc_int.107", align 8
  %642 = alloca %"class.sc_dt::sc_int.1", align 8
  %643 = alloca %"class.sc_dt::sc_int.107", align 8
  %644 = alloca %"class.sc_dt::sc_int.5", align 8
  %645 = alloca %"class.sc_dt::sc_int.8", align 8
  %646 = alloca i8, align 1
  %647 = alloca i8, align 1
  %648 = alloca %"class.sc_dt::sc_int.1", align 8
  %649 = alloca %"class.sc_dt::sc_int.107", align 8
  %650 = alloca %"class.sc_dt::sc_int.1", align 8
  %651 = alloca %"class.sc_dt::sc_int.107", align 8
  %652 = alloca %"class.sc_dt::sc_int.8", align 8
  %653 = alloca i8, align 1
  %654 = alloca i8, align 1
  %655 = alloca %"class.sc_dt::sc_int.0", align 8
  %656 = alloca i8, align 1
  %657 = alloca i8, align 1
  %658 = alloca i8, align 1
  %659 = alloca %"class.sc_dt::sc_int.1", align 8
  %660 = alloca %"class.sc_dt::sc_int.1", align 8
  %661 = alloca %"class.sc_dt::sc_int.0", align 8
  %662 = alloca %"class.sc_dt::sc_int.5", align 8
  %663 = alloca %"class.sc_dt::sc_int.8", align 8
  %664 = alloca i8, align 1
  %665 = alloca i8, align 1
  %666 = alloca %"class.sc_dt::sc_int.1", align 8
  %667 = alloca %"class.sc_dt::sc_int.1", align 8
  %668 = alloca %"class.sc_dt::sc_int.0", 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.0", align 8
  %676 = alloca %"class.sc_dt::sc_int.8", align 8
  %677 = alloca i8, align 1
  %678 = alloca i8, align 1
  %679 = alloca %"class.sc_dt::sc_int.1", align 8
  %680 = alloca %"class.sc_dt::sc_int.1", align 8
  %681 = alloca %"class.sc_dt::sc_int.0", 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.1", align 8
  %700 = alloca %"class.sc_dt::sc_int.8", align 8
  %701 = alloca i8, align 1
  %702 = alloca i8, align 1
  %703 = alloca %"class.sc_dt::sc_int.1", align 8
  %704 = alloca %"class.sc_dt::sc_int.0", align 8
  %705 = alloca %"class.sc_dt::sc_int.1", align 8
  %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.8", align 8
  %709 = alloca i8, align 1
  %710 = alloca i8, align 1
  %711 = alloca %"class.sc_dt::sc_int.1", align 8
  %712 = alloca %"class.sc_dt::sc_int.0", 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.0", align 8
  %719 = alloca %"class.sc_dt::sc_int.8", align 8
  %720 = alloca i8, align 1
  %721 = alloca i8, align 1
  %722 = alloca %"class.sc_dt::sc_int.1", align 8
  %723 = alloca %"class.sc_dt::sc_int.0", align 8
  %724 = alloca %"class.sc_dt::sc_int.5", 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.5", align 8
  %731 = alloca %"class.sc_dt::sc_int.8", align 8
  %732 = alloca i8, align 1
  %733 = alloca i8, align 1
  %734 = alloca %"class.sc_dt::sc_int.1", align 8
  %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.8", align 8
  %738 = alloca i8, align 1
  %739 = alloca i8, align 1
  %740 = alloca %"class.sc_dt::sc_int.1", align 8
  %741 = alloca %"class.sc_dt::sc_int.107", align 8
  %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.107", align 8
  %745 = alloca %"class.sc_dt::sc_int.107", 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.1", 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.1", align 8
  %755 = alloca %"class.sc_dt::sc_int.107", align 8
  %756 = alloca %"class.sc_dt::sc_int.8", align 8
  %757 = alloca i8, align 1
  %758 = alloca i8, align 1
  %759 = alloca %"class.sc_dt::sc_int.107", align 8
  %760 = alloca %"class.sc_dt::sc_int.107", align 8
  %761 = alloca %"class.sc_dt::sc_int.1", align 8
  %762 = alloca i8, align 1
  %763 = alloca i8, align 1
  %764 = alloca i8, align 1
  store ptr %0, ptr %2, align 8, !tbaa !5
  %765 = 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 %766 unwind label %904

766:                                              ; 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 %767 unwind label %908

767:                                              ; preds = %766
  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 %768 unwind label %912

768:                                              ; preds = %767
  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 %769 unwind label %916

769:                                              ; preds = %768
  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 %770 unwind label %920

770:                                              ; preds = %769
  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 %771 unwind label %924

771:                                              ; preds = %770
  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 %772 unwind label %928

772:                                              ; preds = %771
  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 %773 unwind label %932

773:                                              ; preds = %772
  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 %774 unwind label %936

774:                                              ; preds = %773
  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 %775 unwind label %940

775:                                              ; preds = %774
  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 %776 unwind label %944

776:                                              ; preds = %775
  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 %777 unwind label %948

777:                                              ; preds = %776
  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 %778 unwind label %952

778:                                              ; preds = %777
  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 %779 unwind label %956

779:                                              ; preds = %778
  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 %780 unwind label %960

780:                                              ; preds = %779
  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 %781 unwind label %964

781:                                              ; preds = %780
  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 %782 unwind label %968

782:                                              ; preds = %781
  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 %783 unwind label %972

783:                                              ; preds = %782
  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 %784 unwind label %976

784:                                              ; preds = %783
  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 %785 unwind label %980

785:                                              ; preds = %784
  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 %786 unwind label %984

786:                                              ; preds = %785
  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 %787 unwind label %988

787:                                              ; preds = %786
  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 %788 unwind label %992

788:                                              ; preds = %787
  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 %789 unwind label %996

789:                                              ; preds = %788
  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 %790 unwind label %1000

790:                                              ; preds = %789
  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 %791 unwind label %1004

791:                                              ; preds = %790
  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 %792 unwind label %1008

792:                                              ; preds = %791
  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 %793 unwind label %1012

793:                                              ; preds = %792
  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 %794 unwind label %1016

794:                                              ; preds = %793
  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 %795 unwind label %1020

795:                                              ; preds = %794
  br label %796

796:                                              ; preds = %795
  br label %797

797:                                              ; preds = %796
  br label %798

798:                                              ; preds = %797
  br label %799

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

849:                                              ; preds = %847
  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
  %850 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 17
  %851 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %850, ptr noundef nonnull align 1 dereferenceable(1) %40)
          to label %852 unwind label %1028

852:                                              ; preds = %849
  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
  %853 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 18
  %854 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %853, ptr noundef nonnull align 1 dereferenceable(1) %41)
          to label %855 unwind label %1032

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

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

860:                                              ; preds = %857
  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
  %861 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %862 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %861, ptr noundef nonnull align 1 dereferenceable(1) %43)
          to label %863 unwind label %1040

863:                                              ; preds = %860
  call void @llvm.lifetime.end.p0(i64 1, ptr %43) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %864 unwind label %1024

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

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

872:                                              ; preds = %867
  %873 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %874 unwind label %1024

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

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

879:                                              ; preds = %876
  %880 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %881 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %880, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %882 unwind label %1024

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

885:                                              ; preds = %882
  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
  %886 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %887 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %886, ptr noundef nonnull align 1 dereferenceable(1) %45)
          to label %888 unwind label %1048

888:                                              ; preds = %885
  call void @llvm.lifetime.end.p0(i64 1, ptr %45) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %889 unwind label %1024

889:                                              ; preds = %888
  br label %890

890:                                              ; preds = %1057, %889
  br label %891

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

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

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

902:                                              ; preds = %897
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %903 unwind label %1024

903:                                              ; preds = %902
  br label %1058

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

908:                                              ; preds = %766
  %909 = landingpad { ptr, i32 }
          cleanup
  %910 = extractvalue { ptr, i32 } %909, 0
  store ptr %910, ptr %5, align 8
  %911 = extractvalue { ptr, i32 } %909, 1
  store i32 %911, ptr %6, align 4
  br label %12020

912:                                              ; preds = %767
  %913 = landingpad { ptr, i32 }
          cleanup
  %914 = extractvalue { ptr, i32 } %913, 0
  store ptr %914, ptr %5, align 8
  %915 = extractvalue { ptr, i32 } %913, 1
  store i32 %915, ptr %6, align 4
  br label %12019

916:                                              ; preds = %768
  %917 = landingpad { ptr, i32 }
          cleanup
  %918 = extractvalue { ptr, i32 } %917, 0
  store ptr %918, ptr %5, align 8
  %919 = extractvalue { ptr, i32 } %917, 1
  store i32 %919, ptr %6, align 4
  br label %12018

920:                                              ; preds = %769
  %921 = landingpad { ptr, i32 }
          cleanup
  %922 = extractvalue { ptr, i32 } %921, 0
  store ptr %922, ptr %5, align 8
  %923 = extractvalue { ptr, i32 } %921, 1
  store i32 %923, ptr %6, align 4
  br label %12017

924:                                              ; preds = %770
  %925 = landingpad { ptr, i32 }
          cleanup
  %926 = extractvalue { ptr, i32 } %925, 0
  store ptr %926, ptr %5, align 8
  %927 = extractvalue { ptr, i32 } %925, 1
  store i32 %927, ptr %6, align 4
  br label %12016

928:                                              ; preds = %771
  %929 = landingpad { ptr, i32 }
          cleanup
  %930 = extractvalue { ptr, i32 } %929, 0
  store ptr %930, ptr %5, align 8
  %931 = extractvalue { ptr, i32 } %929, 1
  store i32 %931, ptr %6, align 4
  br label %12015

932:                                              ; preds = %772
  %933 = landingpad { ptr, i32 }
          cleanup
  %934 = extractvalue { ptr, i32 } %933, 0
  store ptr %934, ptr %5, align 8
  %935 = extractvalue { ptr, i32 } %933, 1
  store i32 %935, ptr %6, align 4
  br label %12014

936:                                              ; preds = %773
  %937 = landingpad { ptr, i32 }
          cleanup
  %938 = extractvalue { ptr, i32 } %937, 0
  store ptr %938, ptr %5, align 8
  %939 = extractvalue { ptr, i32 } %937, 1
  store i32 %939, ptr %6, align 4
  br label %12013

940:                                              ; preds = %774
  %941 = landingpad { ptr, i32 }
          cleanup
  %942 = extractvalue { ptr, i32 } %941, 0
  store ptr %942, ptr %5, align 8
  %943 = extractvalue { ptr, i32 } %941, 1
  store i32 %943, ptr %6, align 4
  br label %12012

944:                                              ; preds = %775
  %945 = landingpad { ptr, i32 }
          cleanup
  %946 = extractvalue { ptr, i32 } %945, 0
  store ptr %946, ptr %5, align 8
  %947 = extractvalue { ptr, i32 } %945, 1
  store i32 %947, ptr %6, align 4
  br label %12011

948:                                              ; preds = %776
  %949 = landingpad { ptr, i32 }
          cleanup
  %950 = extractvalue { ptr, i32 } %949, 0
  store ptr %950, ptr %5, align 8
  %951 = extractvalue { ptr, i32 } %949, 1
  store i32 %951, ptr %6, align 4
  br label %12010

952:                                              ; preds = %777
  %953 = landingpad { ptr, i32 }
          cleanup
  %954 = extractvalue { ptr, i32 } %953, 0
  store ptr %954, ptr %5, align 8
  %955 = extractvalue { ptr, i32 } %953, 1
  store i32 %955, ptr %6, align 4
  br label %12009

956:                                              ; preds = %778
  %957 = landingpad { ptr, i32 }
          cleanup
  %958 = extractvalue { ptr, i32 } %957, 0
  store ptr %958, ptr %5, align 8
  %959 = extractvalue { ptr, i32 } %957, 1
  store i32 %959, ptr %6, align 4
  br label %12008

960:                                              ; preds = %779
  %961 = landingpad { ptr, i32 }
          cleanup
  %962 = extractvalue { ptr, i32 } %961, 0
  store ptr %962, ptr %5, align 8
  %963 = extractvalue { ptr, i32 } %961, 1
  store i32 %963, ptr %6, align 4
  br label %12007

964:                                              ; preds = %780
  %965 = landingpad { ptr, i32 }
          cleanup
  %966 = extractvalue { ptr, i32 } %965, 0
  store ptr %966, ptr %5, align 8
  %967 = extractvalue { ptr, i32 } %965, 1
  store i32 %967, ptr %6, align 4
  br label %12006

968:                                              ; preds = %781
  %969 = landingpad { ptr, i32 }
          cleanup
  %970 = extractvalue { ptr, i32 } %969, 0
  store ptr %970, ptr %5, align 8
  %971 = extractvalue { ptr, i32 } %969, 1
  store i32 %971, ptr %6, align 4
  br label %12005

972:                                              ; preds = %782
  %973 = landingpad { ptr, i32 }
          cleanup
  %974 = extractvalue { ptr, i32 } %973, 0
  store ptr %974, ptr %5, align 8
  %975 = extractvalue { ptr, i32 } %973, 1
  store i32 %975, ptr %6, align 4
  br label %12004

976:                                              ; preds = %783
  %977 = landingpad { ptr, i32 }
          cleanup
  %978 = extractvalue { ptr, i32 } %977, 0
  store ptr %978, ptr %5, align 8
  %979 = extractvalue { ptr, i32 } %977, 1
  store i32 %979, ptr %6, align 4
  br label %12003

980:                                              ; preds = %784
  %981 = landingpad { ptr, i32 }
          cleanup
  %982 = extractvalue { ptr, i32 } %981, 0
  store ptr %982, ptr %5, align 8
  %983 = extractvalue { ptr, i32 } %981, 1
  store i32 %983, ptr %6, align 4
  br label %12002

984:                                              ; preds = %785
  %985 = landingpad { ptr, i32 }
          cleanup
  %986 = extractvalue { ptr, i32 } %985, 0
  store ptr %986, ptr %5, align 8
  %987 = extractvalue { ptr, i32 } %985, 1
  store i32 %987, ptr %6, align 4
  br label %12001

988:                                              ; preds = %786
  %989 = landingpad { ptr, i32 }
          cleanup
  %990 = extractvalue { ptr, i32 } %989, 0
  store ptr %990, ptr %5, align 8
  %991 = extractvalue { ptr, i32 } %989, 1
  store i32 %991, ptr %6, align 4
  br label %12000

992:                                              ; preds = %787
  %993 = landingpad { ptr, i32 }
          cleanup
  %994 = extractvalue { ptr, i32 } %993, 0
  store ptr %994, ptr %5, align 8
  %995 = extractvalue { ptr, i32 } %993, 1
  store i32 %995, ptr %6, align 4
  br label %11999

996:                                              ; preds = %788
  %997 = landingpad { ptr, i32 }
          cleanup
  %998 = extractvalue { ptr, i32 } %997, 0
  store ptr %998, ptr %5, align 8
  %999 = extractvalue { ptr, i32 } %997, 1
  store i32 %999, ptr %6, align 4
  br label %11998

1000:                                             ; preds = %789
  %1001 = landingpad { ptr, i32 }
          cleanup
  %1002 = extractvalue { ptr, i32 } %1001, 0
  store ptr %1002, ptr %5, align 8
  %1003 = extractvalue { ptr, i32 } %1001, 1
  store i32 %1003, ptr %6, align 4
  br label %11997

1004:                                             ; preds = %790
  %1005 = landingpad { ptr, i32 }
          cleanup
  %1006 = extractvalue { ptr, i32 } %1005, 0
  store ptr %1006, ptr %5, align 8
  %1007 = extractvalue { ptr, i32 } %1005, 1
  store i32 %1007, ptr %6, align 4
  br label %11996

1008:                                             ; preds = %791
  %1009 = landingpad { ptr, i32 }
          cleanup
  %1010 = extractvalue { ptr, i32 } %1009, 0
  store ptr %1010, ptr %5, align 8
  %1011 = extractvalue { ptr, i32 } %1009, 1
  store i32 %1011, ptr %6, align 4
  br label %11995

1012:                                             ; preds = %792
  %1013 = landingpad { ptr, i32 }
          cleanup
  %1014 = extractvalue { ptr, i32 } %1013, 0
  store ptr %1014, ptr %5, align 8
  %1015 = extractvalue { ptr, i32 } %1013, 1
  store i32 %1015, ptr %6, align 4
  br label %11994

1016:                                             ; preds = %793
  %1017 = landingpad { ptr, i32 }
          cleanup
  %1018 = extractvalue { ptr, i32 } %1017, 0
  store ptr %1018, ptr %5, align 8
  %1019 = extractvalue { ptr, i32 } %1017, 1
  store i32 %1019, ptr %6, align 4
  br label %11993

1020:                                             ; preds = %794
  %1021 = landingpad { ptr, i32 }
          cleanup
  %1022 = extractvalue { ptr, i32 } %1021, 0
  store ptr %1022, ptr %5, align 8
  %1023 = extractvalue { ptr, i32 } %1021, 1
  store i32 %1023, ptr %6, align 4
  br label %11992

1024:                                             ; preds = %11988, %11985, %11943, %11937, %11931, %11922, %11903, %11901, %11899, %11898, %11896, %11892, %11887, %11885, %11878, %11874, %11841, %11834, %11832, %11826, %11812, %11811, %11807, %11770, %11763, %11761, %11751, %11742, %11738, %11672, %11665, %11663, %11634, %11630, %11584, %11577, %11575, %11569, %11546, %11542, %11505, %11498, %11496, %11490, %11479, %11468, %11464, %11449, %11442, %11440, %11434, %11414, %11380, %11374, %11371, %11363, %11359, %11326, %11319, %11317, %11311, %11304, %11296, %11292, %11250, %11243, %11241, %11235, %11224, %11216, %11212, %11188, %11181, %11179, %11173, %11149, %11147, %11145, %11143, %11141, %11139, %11109, %11107, %11105, %11103, %11101, %11099, %11095, %11093, %11082, %11080, %11078, %11076, %11072, %11068, %11061, %11057, %11020, %11013, %11011, %11005, %10988, %10984, %10938, %10931, %10929, %10923, %10900, %10896, %10850, %10843, %10841, %10835, %10812, %10808, %10757, %10750, %10748, %10742, %10720, %10716, %10674, %10667, %10665, %10659, %10643, %10639, %10588, %10581, %10579, %10573, %10553, %10549, %10502, %10495, %10493, %10487, %10466, %10439, %10433, %10427, %10418, %10415, %10413, %10407, %10403, %10356, %10349, %10347, %10337, %10322, %10318, %10266, %10259, %10257, %10230, %10228, %10226, %10199, %10193, %10188, %10185, %10182, %10173, %10167, %10166, %10162, %10120, %10113, %10111, %10105, %10089, %10085, %10048, %10041, %10039, %10033, %10022, %10017, %10013, %9976, %9969, %9967, %9961, %9950, %9945, %9941, %9926, %9919, %9917, %9911, %9873, %9802, %9786, %9774, %9770, %9728, %9721, %9719, %9713, %9697, %9693, %9642, %9635, %9633, %9627, %9607, %9603, %9556, %9549, %9547, %9541, %9520, %9493, %9487, %9481, %9472, %9469, %9467, %9461, %9457, %9410, %9403, %9401, %9391, %9376, %9372, %9320, %9313, %9311, %9284, %9281, %9278, %9272, %9267, %9266, %9264, %9262, %9258, %9254, %9250, %9248, %9241, %9227, %9221, %9215, %9206, %9203, %9201, %9199, %9197, %9195, %9193, %9179, %9173, %9168, %9165, %9162, %9153, %9150, %9148, %9146, %9144, %9142, %9140, %9126, %9120, %9115, %9112, %9109, %9100, %9097, %9095, %9093, %9090, %9088, %9069, %9067, %9065, %9023, %9017, %9011, %9002, %8988, %8965, %8959, %8954, %8951, %8948, %8939, %8936, %8920, %8911, %8909, %8906, %8904, %8901, %8899, %8897, %8883, %8877, %8871, %8862, %8859, %8857, %8855, %8853, %8839, %8833, %8828, %8825, %8822, %8813, %8810, %8808, %8797, %8793, %8783, %8781, %8779, %8756, %8750, %8745, %8742, %8739, %8730, %8727, %8713, %8709, %8662, %8655, %8653, %8647, %8626, %8624, %8620, %8613, %8609, %8585, %8578, %8576, %8570, %8559, %8556, %8553, %8541, %8537, %8535, %8528, %8526, %8522, %8515, %8511, %8496, %8489, %8487, %8481, %8445, %8443, %8395, %8386, %8384, %8380, %8374, %8370, %8364, %8357, %8353, %8338, %8331, %8329, %8323, %8264, %8262, %8249, %8247, %8243, %8236, %8232, %8217, %8210, %8208, %8202, %8143, %8141, %8128, %8126, %8122, %8115, %8111, %8073, %8066, %8064, %8058, %8047, %8038, %8024, %8018, %8012, %8003, %8000, %7997, %7995, %7983, %7981, %7977, %7975, %7966, %7943, %7937, %7932, %7929, %7926, %7917, %7914, %7907, %7905, %7901, %7897, %7895, %7894, %7891, %7888, %7884, %7882, %7879, %7877, %7854, %7848, %7843, %7840, %7837, %7828, %7825, %7818, %7816, %7814, %7791, %7785, %7780, %7777, %7774, %7765, %7762, %7755, %7754, %7752, %7750, %7746, %7742, %7738, %7732, %7728, %7695, %7688, %7686, %7680, %7666, %7665, %7661, %7614, %7607, %7605, %7595, %7580, %7576, %7524, %7517, %7515, %7483, %7476, %7474, %7471, %7468, %7445, %7439, %7433, %7424, %7421, %7419, %7412, %7406, %7383, %7377, %7371, %7362, %7359, %7349, %7347, %7345, %7343, %7329, %7323, %7318, %7315, %7312, %7303, %7300, %7297, %7295, %7293, %7292, %7290, %7287, %7285, %7273, %7271, %7264, %7261, %7259, %7257, %7255, %7252, %7220, %7214, %7208, %7199, %7196, %7179, %7177, %7175, %7173, %7171, %7169, %7167, %7162, %7139, %7133, %7128, %7125, %7122, %7113, %7107, %7101, %7097, %7093, %7078, %7071, %7069, %7063, %7056, %7053, %7050, %7046, %7044, %7042, %7040, %7036, %7034, %7032, %7030, %7028, %7025, %7023, %7021, %7019, %7015, %7010, %7008, %7006, %7004, %7002, %7000, %6968, %6962, %6957, %6954, %6951, %6942, %6939, %6927, %6925, %6923, %6900, %6894, %6889, %6886, %6883, %6874, %6871, %6864, %6861, %6843, %6837, %6831, %6822, %6819, %6817, %6815, %6814, %6810, %6772, %6765, %6763, %6757, %6739, %6736, %6733, %6730, %6728, %6726, %6720, %6716, %6669, %6662, %6660, %6654, %6633, %6627, %6623, %6585, %6578, %6576, %6570, %6524, %6522, %6520, %6514, %6510, %6481, %6474, %6472, %6466, %6424, %6422, %6406, %6390, %6384, %6378, %6374, %6336, %6329, %6327, %6321, %6275, %6273, %6271, %6265, %6261, %6223, %6216, %6214, %6208, %6162, %6160, %6158, %6152, %6148, %6110, %6103, %6101, %6095, %6049, %6047, %6045, %6042, %6010, %6004, %5998, %5989, %5986, %5965, %5942, %5936, %5930, %5921, %5918, %5916, %5908, %5885, %5879, %5873, %5864, %5861, %5859, %5851, %5819, %5813, %5807, %5798, %5795, %5776, %5774, %5773, %5770, %5767, %5763, %5761, %5758, %5756, %5733, %5727, %5722, %5719, %5716, %5707, %5704, %5696, %5694, %5691, %5689, %5685, %5683, %5681, %5679, %5677, %5675, %5673, %5671, %5669, %5664, %5662, %5661, %5659, %5657, %5653, %5649, %5642, %5638, %5605, %5598, %5596, %5590, %5576, %5575, %5571, %5519, %5512, %5510, %5504, %5480, %5448, %5442, %5436, %5427, %5424, %5412, %5389, %5383, %5377, %5368, %5365, %5363, %5361, %5359, %5351, %5349, %5346, %5344, %5340, %5338, %5336, %5332, %5330, %5328, %5305, %5299, %5293, %5284, %5281, %5279, %5272, %5270, %5268, %5245, %5239, %5234, %5231, %5228, %5219, %5216, %5209, %5186, %5180, %5174, %5165, %5162, %5160, %5152, %5150, %5148, %5146, %5144, %5121, %5115, %5110, %5107, %5104, %5095, %5092, %5082, %5081, %5079, %5077, %5073, %5069, %5066, %5064, %5058, %5054, %5025, %5018, %5016, %5010, %4996, %4994, %4971, %4965, %4959, %4950, %4947, %4945, %4938, %4924, %4918, %4913, %4910, %4907, %4898, %4895, %4893, %4891, %4877, %4871, %4865, %4856, %4853, %4850, %4838, %4835, %4833, %4826, %4803, %4797, %4792, %4789, %4786, %4777, %4774, %4767, %4740, %4734, %4728, %4719, %4716, %4714, %4712, %4710, %4708, %4702, %4698, %4661, %4654, %4652, %4642, %4633, %4629, %4567, %4560, %4558, %4528, %4514, %4508, %4503, %4500, %4497, %4488, %4485, %4483, %4480, %4466, %4460, %4454, %4445, %4442, %4440, %4438, %4436, %4413, %4407, %4402, %4399, %4396, %4387, %4384, %4376, %4362, %4356, %4350, %4341, %4338, %4335, %4333, %4331, %4308, %4302, %4297, %4294, %4291, %4282, %4279, %4271, %4257, %4251, %4245, %4236, %4233, %4230, %4228, %4226, %4203, %4197, %4192, %4189, %4186, %4177, %4174, %4165, %4162, %4160, %4157, %4134, %4128, %4123, %4120, %4117, %4108, %4105, %4079, %4077, %4068, %4040, %4038, %4029, %4018, %4016, %4014, %4012, %4010, %3987, %3981, %3976, %3973, %3970, %3961, %3958, %3948, %3947, %3945, %3943, %3939, %3935, %3928, %3924, %3895, %3888, %3886, %3880, %3866, %3864, %3841, %3835, %3829, %3820, %3817, %3815, %3808, %3781, %3775, %3769, %3760, %3757, %3755, %3749, %3745, %3708, %3701, %3699, %3689, %3680, %3676, %3614, %3607, %3605, %3574, %3572, %3569, %3567, %3563, %3558, %3556, %3555, %3553, %3551, %3547, %3543, %3540, %3538, %3536, %3534, %3530, %3526, %3523, %3521, %3519, %3517, %3513, %3509, %3503, %3489, %3483, %3477, %3468, %3465, %3463, %3460, %3458, %3456, %3442, %3436, %3430, %3421, %3418, %3416, %3414, %3412, %3389, %3383, %3378, %3375, %3372, %3363, %3360, %3352, %3350, %3348, %3346, %3344, %3321, %3315, %3310, %3307, %3304, %3295, %3292, %3285, %3284, %3282, %3280, %3276, %3272, %3265, %3261, %3224, %3217, %3215, %3209, %3192, %3188, %3115, %3108, %3106, %3057, %3030, %3024, %3019, %3016, %3013, %3004, %2998, %2997, %2993, %2951, %2944, %2942, %2936, %2920, %2916, %2843, %2836, %2834, %2784, %2782, %2781, %2779, %2777, %2773, %2769, %2765, %2763, %2761, %2760, %2757, %2754, %2750, %2748, %2745, %2743, %2712, %2706, %2701, %2698, %2695, %2686, %2683, %2657, %2655, %2653, %2651, %2649, %2644, %2642, %2617, %2615, %2611, %2609, %2607, %2591, %2568, %2562, %2557, %2554, %2551, %2542, %2539, %2532, %2529, %2526, %2524, %2520, %2518, %2516, %2514, %2512, %2486, %2480, %2475, %2472, %2469, %2460, %2457, %2455, %2448, %2444, %2442, %2440, %2438, %2437, %2435, %2433, %2430, %2426, %2402, %2395, %2393, %2387, %2378, %2376, %2374, %2371, %2367, %2365, %2351, %2345, %2339, %2330, %2327, %2325, %2323, %2279, %2276, %2270, %2268, %2265, %2263, %2261, %2259, %2253, %2251, %2248, %2246, %2244, %2206, %2198, %2192, %2183, %2180, %2159, %2157, %2154, %2152, %2148, %2146, %2143, %2141, %2139, %2125, %2117, %2111, %2102, %2099, %2096, %2094, %2092, %2078, %2070, %2064, %2055, %2052, %2047, %2045, %2043, %2037, %2033, %2005, %1998, %1996, %1984, %1980, %1943, %1936, %1934, %1918, %1914, %1886, %1879, %1877, %1865, %1861, %1819, %1812, %1810, %1789, %1771, %1763, %1757, %1748, %1745, %1743, %1742, %1738, %1714, %1707, %1705, %1692, %1674, %1666, %1660, %1651, %1648, %1646, %1645, %1641, %1608, %1601, %1599, %1568, %1566, %1546, %1544, %1535, %1534, %1530, %1488, %1481, %1479, %1458, %1422, %1414, %1408, %1393, %1389, %1365, %1358, %1356, %1343, %1307, %1299, %1293, %1278, %1274, %1232, %1225, %1223, %1202, %1188, %1180, %1174, %1165, %1162, %1160, %1158, %1144, %1136, %1130, %1121, %1118, %1116, %1113, %1110, %1102, %1100, %1086, %1078, %1072, %1063, %1060, %1058, %1056, %902, %894, %888, %879, %876, %874, %872, %864, %863, %855, %847, %845, %843, %841, %839, %837, %835, %833, %831, %829, %827, %825, %823, %821, %819, %817, %815, %813, %811, %809, %807, %805, %803, %801, %799
  %1025 = landingpad { ptr, i32 }
          cleanup
  %1026 = extractvalue { ptr, i32 } %1025, 0
  store ptr %1026, ptr %5, align 8
  %1027 = extractvalue { ptr, i32 } %1025, 1
  store i32 %1027, ptr %6, align 4
  br label %11991

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

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

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

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

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

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

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

1056:                                             ; preds = %897
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1057 unwind label %1024

1057:                                             ; preds = %1056
  br label %890, !llvm.loop !13

1058:                                             ; preds = %903
  %1059 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 1)
          to label %1060 unwind label %1024

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

1063:                                             ; preds = %1060
  %1064 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %1065 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1064, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %1066 unwind label %1024

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

1069:                                             ; preds = %1066
  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
  %1070 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %1071 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1070, ptr noundef nonnull align 1 dereferenceable(1) %48)
          to label %1072 unwind label %1092

1072:                                             ; preds = %1069
  call void @llvm.lifetime.end.p0(i64 1, ptr %48) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1073 unwind label %1024

1073:                                             ; preds = %1072
  br label %1074

1074:                                             ; preds = %1101, %1073
  br label %1075

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

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

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

1086:                                             ; preds = %1081
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1087 unwind label %1024

1087:                                             ; preds = %1086
  br label %1102

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

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

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

1100:                                             ; preds = %1081
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1101 unwind label %1024

1101:                                             ; preds = %1100
  br label %1074, !llvm.loop !15

1102:                                             ; preds = %1087
  %1103 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 7
  %1104 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1103)
          to label %1105 unwind label %1024

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

1110:                                             ; preds = %1105
  %1111 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %1112 unwind label %1024

1112:                                             ; preds = %1110
  br label %1116

1113:                                             ; preds = %1105
  %1114 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 16)
          to label %1115 unwind label %1024

1115:                                             ; preds = %1113
  br label %1116

1116:                                             ; preds = %1115, %1112
  %1117 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 2)
          to label %1118 unwind label %1024

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

1121:                                             ; preds = %1118
  %1122 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %1123 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1122, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %1124 unwind label %1024

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

1127:                                             ; preds = %1124
  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
  %1128 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %1129 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1128, ptr noundef nonnull align 1 dereferenceable(1) %51)
          to label %1130 unwind label %1150

1130:                                             ; preds = %1127
  call void @llvm.lifetime.end.p0(i64 1, ptr %51) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1131 unwind label %1024

1131:                                             ; preds = %1130
  br label %1132

1132:                                             ; preds = %1159, %1131
  br label %1133

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

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

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

1144:                                             ; preds = %1139
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1145 unwind label %1024

1145:                                             ; preds = %1144
  br label %1160

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

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

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

1158:                                             ; preds = %1139
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1159 unwind label %1024

1159:                                             ; preds = %1158
  br label %1132, !llvm.loop !16

1160:                                             ; preds = %1145
  %1161 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 4)
          to label %1162 unwind label %1024

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

1165:                                             ; preds = %1162
  %1166 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %1167 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1166, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %1168 unwind label %1024

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

1171:                                             ; preds = %1168
  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
  %1172 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %1173 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1172, ptr noundef nonnull align 1 dereferenceable(1) %54)
          to label %1174 unwind label %1194

1174:                                             ; preds = %1171
  call void @llvm.lifetime.end.p0(i64 1, ptr %54) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1175 unwind label %1024

1175:                                             ; preds = %1174
  br label %1176

1176:                                             ; preds = %1203, %1175
  br label %1177

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

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

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

1188:                                             ; preds = %1183
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1189 unwind label %1024

1189:                                             ; preds = %1188
  br label %1204

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

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

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

1202:                                             ; preds = %1183
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1203 unwind label %1024

1203:                                             ; preds = %1202
  br label %1176, !llvm.loop !17

1204:                                             ; preds = %1189
  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 %1205 unwind label %1234

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

1208:                                             ; preds = %1205
  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 %1209 unwind label %1243

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

1212:                                             ; preds = %1209
  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 %1213 unwind label %1252

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

1216:                                             ; preds = %1213
  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 %1217 unwind label %1261

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

1220:                                             ; preds = %1217
  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
  %1221 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %1222 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1221, ptr noundef nonnull align 1 dereferenceable(1) %60)
          to label %1223 unwind label %1270

1223:                                             ; preds = %1220
  call void @llvm.lifetime.end.p0(i64 1, ptr %60) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1224 unwind label %1024

1224:                                             ; preds = %1223
  br label %1225

1225:                                             ; preds = %1233, %1224
  %1226 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %1227 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1226)
          to label %1228 unwind label %1024

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

1232:                                             ; preds = %1228
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1233 unwind label %1024

1233:                                             ; preds = %1232
  br label %1225, !llvm.loop !18

1234:                                             ; preds = %1204
  %1235 = landingpad { ptr, i32 }
          cleanup
  %1236 = extractvalue { ptr, i32 } %1235, 0
  store ptr %1236, ptr %5, align 8
  %1237 = extractvalue { ptr, i32 } %1235, 1
  store i32 %1237, ptr %6, align 4
  br label %1242

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

1242:                                             ; preds = %1238, %1234
  call void @llvm.lifetime.end.p0(i64 24, ptr %56) #5
  br label %11991

1243:                                             ; preds = %1208
  %1244 = landingpad { ptr, i32 }
          cleanup
  %1245 = extractvalue { ptr, i32 } %1244, 0
  store ptr %1245, ptr %5, align 8
  %1246 = extractvalue { ptr, i32 } %1244, 1
  store i32 %1246, ptr %6, align 4
  br label %1251

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

1251:                                             ; preds = %1247, %1243
  call void @llvm.lifetime.end.p0(i64 24, ptr %57) #5
  br label %11991

1252:                                             ; preds = %1212
  %1253 = landingpad { ptr, i32 }
          cleanup
  %1254 = extractvalue { ptr, i32 } %1253, 0
  store ptr %1254, ptr %5, align 8
  %1255 = extractvalue { ptr, i32 } %1253, 1
  store i32 %1255, ptr %6, align 4
  br label %1260

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

1260:                                             ; preds = %1256, %1252
  call void @llvm.lifetime.end.p0(i64 24, ptr %58) #5
  br label %11991

1261:                                             ; preds = %1216
  %1262 = landingpad { ptr, i32 }
          cleanup
  %1263 = extractvalue { ptr, i32 } %1262, 0
  store ptr %1263, ptr %5, align 8
  %1264 = extractvalue { ptr, i32 } %1262, 1
  store i32 %1264, ptr %6, align 4
  br label %1269

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

1269:                                             ; preds = %1265, %1261
  call void @llvm.lifetime.end.p0(i64 24, ptr %59) #5
  br label %11991

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

1274:                                             ; preds = %1228
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1275 unwind label %1024

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

1278:                                             ; preds = %1275
  call void @llvm.lifetime.end.p0(i64 1, ptr %61) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1279 unwind label %1024

1279:                                             ; preds = %1278
  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 %1280 unwind label %1313

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

1283:                                             ; preds = %1280
  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 %1284 unwind label %1322

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

1287:                                             ; preds = %1284
  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
  %1288 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %1289 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1288, ptr noundef nonnull align 1 dereferenceable(1) %64)
          to label %1290 unwind label %1331

1290:                                             ; preds = %1287
  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
  %1291 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %1292 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1291, ptr noundef nonnull align 1 dereferenceable(1) %65)
          to label %1293 unwind label %1335

1293:                                             ; preds = %1290
  call void @llvm.lifetime.end.p0(i64 1, ptr %65) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1294 unwind label %1024

1294:                                             ; preds = %1293
  br label %1295

1295:                                             ; preds = %1344, %1294
  br label %1296

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

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

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

1307:                                             ; preds = %1302
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1308 unwind label %1024

1308:                                             ; preds = %1307
  br label %1345

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

1313:                                             ; preds = %1279
  %1314 = landingpad { ptr, i32 }
          cleanup
  %1315 = extractvalue { ptr, i32 } %1314, 0
  store ptr %1315, ptr %5, align 8
  %1316 = extractvalue { ptr, i32 } %1314, 1
  store i32 %1316, ptr %6, align 4
  br label %1321

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

1321:                                             ; preds = %1317, %1313
  call void @llvm.lifetime.end.p0(i64 24, ptr %62) #5
  br label %11991

1322:                                             ; preds = %1283
  %1323 = landingpad { ptr, i32 }
          cleanup
  %1324 = extractvalue { ptr, i32 } %1323, 0
  store ptr %1324, ptr %5, align 8
  %1325 = extractvalue { ptr, i32 } %1323, 1
  store i32 %1325, ptr %6, align 4
  br label %1330

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

1330:                                             ; preds = %1326, %1322
  call void @llvm.lifetime.end.p0(i64 24, ptr %63) #5
  br label %11991

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

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

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

1343:                                             ; preds = %1302
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1344 unwind label %1024

1344:                                             ; preds = %1343
  br label %1295, !llvm.loop !19

1345:                                             ; preds = %1308
  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 %1346 unwind label %1367

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

1349:                                             ; preds = %1346
  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 %1350 unwind label %1376

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

1353:                                             ; preds = %1350
  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
  %1354 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %1355 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1354, ptr noundef nonnull align 1 dereferenceable(1) %69)
          to label %1356 unwind label %1385

1356:                                             ; preds = %1353
  call void @llvm.lifetime.end.p0(i64 1, ptr %69) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1357 unwind label %1024

1357:                                             ; preds = %1356
  br label %1358

1358:                                             ; preds = %1366, %1357
  %1359 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %1360 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1359)
          to label %1361 unwind label %1024

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

1365:                                             ; preds = %1361
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1366 unwind label %1024

1366:                                             ; preds = %1365
  br label %1358, !llvm.loop !20

1367:                                             ; preds = %1345
  %1368 = landingpad { ptr, i32 }
          cleanup
  %1369 = extractvalue { ptr, i32 } %1368, 0
  store ptr %1369, ptr %5, align 8
  %1370 = extractvalue { ptr, i32 } %1368, 1
  store i32 %1370, ptr %6, align 4
  br label %1375

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

1375:                                             ; preds = %1371, %1367
  call void @llvm.lifetime.end.p0(i64 24, ptr %67) #5
  br label %11991

1376:                                             ; preds = %1349
  %1377 = landingpad { ptr, i32 }
          cleanup
  %1378 = extractvalue { ptr, i32 } %1377, 0
  store ptr %1378, ptr %5, align 8
  %1379 = extractvalue { ptr, i32 } %1377, 1
  store i32 %1379, ptr %6, align 4
  br label %1384

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

1384:                                             ; preds = %1380, %1376
  call void @llvm.lifetime.end.p0(i64 24, ptr %68) #5
  br label %11991

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

1389:                                             ; preds = %1361
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1390 unwind label %1024

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

1393:                                             ; preds = %1390
  call void @llvm.lifetime.end.p0(i64 1, ptr %70) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1394 unwind label %1024

1394:                                             ; preds = %1393
  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 %1395 unwind label %1428

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

1398:                                             ; preds = %1395
  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 %1399 unwind label %1437

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

1402:                                             ; preds = %1399
  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
  %1403 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %1404 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1403, ptr noundef nonnull align 1 dereferenceable(1) %73)
          to label %1405 unwind label %1446

1405:                                             ; preds = %1402
  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
  %1406 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %1407 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1406, ptr noundef nonnull align 1 dereferenceable(1) %74)
          to label %1408 unwind label %1450

1408:                                             ; preds = %1405
  call void @llvm.lifetime.end.p0(i64 1, ptr %74) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1409 unwind label %1024

1409:                                             ; preds = %1408
  br label %1410

1410:                                             ; preds = %1459, %1409
  br label %1411

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

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

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

1422:                                             ; preds = %1417
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1423 unwind label %1024

1423:                                             ; preds = %1422
  br label %1460

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

1428:                                             ; preds = %1394
  %1429 = landingpad { ptr, i32 }
          cleanup
  %1430 = extractvalue { ptr, i32 } %1429, 0
  store ptr %1430, ptr %5, align 8
  %1431 = extractvalue { ptr, i32 } %1429, 1
  store i32 %1431, ptr %6, align 4
  br label %1436

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

1436:                                             ; preds = %1432, %1428
  call void @llvm.lifetime.end.p0(i64 24, ptr %71) #5
  br label %11991

1437:                                             ; preds = %1398
  %1438 = landingpad { ptr, i32 }
          cleanup
  %1439 = extractvalue { ptr, i32 } %1438, 0
  store ptr %1439, ptr %5, align 8
  %1440 = extractvalue { ptr, i32 } %1438, 1
  store i32 %1440, ptr %6, align 4
  br label %1445

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

1445:                                             ; preds = %1441, %1437
  call void @llvm.lifetime.end.p0(i64 24, ptr %72) #5
  br label %11991

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

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

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

1458:                                             ; preds = %1417
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1459 unwind label %1024

1459:                                             ; preds = %1458
  br label %1410, !llvm.loop !21

1460:                                             ; preds = %1423
  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 %1461 unwind label %1490

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

1464:                                             ; preds = %1461
  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 %1465 unwind label %1499

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

1468:                                             ; preds = %1465
  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 %1469 unwind label %1508

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

1472:                                             ; preds = %1469
  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 %1473 unwind label %1517

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

1476:                                             ; preds = %1473
  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
  %1477 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %1478 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1477, ptr noundef nonnull align 1 dereferenceable(1) %80)
          to label %1479 unwind label %1526

1479:                                             ; preds = %1476
  call void @llvm.lifetime.end.p0(i64 1, ptr %80) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1480 unwind label %1024

1480:                                             ; preds = %1479
  br label %1481

1481:                                             ; preds = %1489, %1480
  %1482 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %1483 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1482)
          to label %1484 unwind label %1024

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

1488:                                             ; preds = %1484
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1489 unwind label %1024

1489:                                             ; preds = %1488
  br label %1481, !llvm.loop !22

1490:                                             ; preds = %1460
  %1491 = landingpad { ptr, i32 }
          cleanup
  %1492 = extractvalue { ptr, i32 } %1491, 0
  store ptr %1492, ptr %5, align 8
  %1493 = extractvalue { ptr, i32 } %1491, 1
  store i32 %1493, ptr %6, align 4
  br label %1498

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

1498:                                             ; preds = %1494, %1490
  call void @llvm.lifetime.end.p0(i64 24, ptr %76) #5
  br label %11991

1499:                                             ; preds = %1464
  %1500 = landingpad { ptr, i32 }
          cleanup
  %1501 = extractvalue { ptr, i32 } %1500, 0
  store ptr %1501, ptr %5, align 8
  %1502 = extractvalue { ptr, i32 } %1500, 1
  store i32 %1502, ptr %6, align 4
  br label %1507

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

1507:                                             ; preds = %1503, %1499
  call void @llvm.lifetime.end.p0(i64 24, ptr %77) #5
  br label %11991

1508:                                             ; preds = %1468
  %1509 = landingpad { ptr, i32 }
          cleanup
  %1510 = extractvalue { ptr, i32 } %1509, 0
  store ptr %1510, ptr %5, align 8
  %1511 = extractvalue { ptr, i32 } %1509, 1
  store i32 %1511, ptr %6, align 4
  br label %1516

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

1516:                                             ; preds = %1512, %1508
  call void @llvm.lifetime.end.p0(i64 24, ptr %78) #5
  br label %11991

1517:                                             ; preds = %1472
  %1518 = landingpad { ptr, i32 }
          cleanup
  %1519 = extractvalue { ptr, i32 } %1518, 0
  store ptr %1519, ptr %5, align 8
  %1520 = extractvalue { ptr, i32 } %1518, 1
  store i32 %1520, ptr %6, align 4
  br label %1525

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

1525:                                             ; preds = %1521, %1517
  call void @llvm.lifetime.end.p0(i64 24, ptr %79) #5
  br label %11991

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

1530:                                             ; preds = %1484
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1531 unwind label %1024

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

1534:                                             ; preds = %1531
  call void @llvm.lifetime.end.p0(i64 1, ptr %81) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1535 unwind label %1024

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

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

1544:                                             ; preds = %1538
  %1545 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 37)
          to label %1546 unwind label %1024

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

1548:                                             ; preds = %1546
  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 %1549 unwind label %1557

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

1552:                                             ; preds = %1549
  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 %1584

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

1557:                                             ; preds = %1548
  %1558 = landingpad { ptr, i32 }
          cleanup
  %1559 = extractvalue { ptr, i32 } %1558, 0
  store ptr %1559, ptr %5, align 8
  %1560 = extractvalue { ptr, i32 } %1558, 1
  store i32 %1560, ptr %6, align 4
  br label %1565

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

1565:                                             ; preds = %1561, %1557
  call void @llvm.lifetime.end.p0(i64 24, ptr %82) #5
  br label %11991

1566:                                             ; preds = %1538
  %1567 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 35)
          to label %1568 unwind label %1024

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

1570:                                             ; preds = %1568
  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 %1571 unwind label %1575

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

1574:                                             ; preds = %1571
  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 %1584

1575:                                             ; preds = %1570
  %1576 = landingpad { ptr, i32 }
          cleanup
  %1577 = extractvalue { ptr, i32 } %1576, 0
  store ptr %1577, ptr %5, align 8
  %1578 = extractvalue { ptr, i32 } %1576, 1
  store i32 %1578, ptr %6, align 4
  br label %1583

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

1583:                                             ; preds = %1579, %1575
  call void @llvm.lifetime.end.p0(i64 24, ptr %83) #5
  br label %11991

1584:                                             ; preds = %1574, %1552
  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 %1585 unwind label %1610

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

1588:                                             ; preds = %1585
  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 %1589 unwind label %1619

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

1592:                                             ; preds = %1589
  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 %1593 unwind label %1628

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

1596:                                             ; preds = %1593
  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
  %1597 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %1598 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1597, ptr noundef nonnull align 1 dereferenceable(1) %87)
          to label %1599 unwind label %1637

1599:                                             ; preds = %1596
  call void @llvm.lifetime.end.p0(i64 1, ptr %87) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1600 unwind label %1024

1600:                                             ; preds = %1599
  br label %1601

1601:                                             ; preds = %1609, %1600
  %1602 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %1603 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1602)
          to label %1604 unwind label %1024

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

1608:                                             ; preds = %1604
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1609 unwind label %1024

1609:                                             ; preds = %1608
  br label %1601, !llvm.loop !23

1610:                                             ; preds = %1584
  %1611 = landingpad { ptr, i32 }
          cleanup
  %1612 = extractvalue { ptr, i32 } %1611, 0
  store ptr %1612, ptr %5, align 8
  %1613 = extractvalue { ptr, i32 } %1611, 1
  store i32 %1613, ptr %6, align 4
  br label %1618

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

1618:                                             ; preds = %1614, %1610
  call void @llvm.lifetime.end.p0(i64 24, ptr %84) #5
  br label %11991

1619:                                             ; preds = %1588
  %1620 = landingpad { ptr, i32 }
          cleanup
  %1621 = extractvalue { ptr, i32 } %1620, 0
  store ptr %1621, ptr %5, align 8
  %1622 = extractvalue { ptr, i32 } %1620, 1
  store i32 %1622, ptr %6, align 4
  br label %1627

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

1627:                                             ; preds = %1623, %1619
  call void @llvm.lifetime.end.p0(i64 24, ptr %85) #5
  br label %11991

1628:                                             ; preds = %1592
  %1629 = landingpad { ptr, i32 }
          cleanup
  %1630 = extractvalue { ptr, i32 } %1629, 0
  store ptr %1630, ptr %5, align 8
  %1631 = extractvalue { ptr, i32 } %1629, 1
  store i32 %1631, ptr %6, align 4
  br label %1636

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

1636:                                             ; preds = %1632, %1628
  call void @llvm.lifetime.end.p0(i64 24, ptr %86) #5
  br label %11991

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

1641:                                             ; preds = %1604
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1642 unwind label %1024

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

1645:                                             ; preds = %1642
  call void @llvm.lifetime.end.p0(i64 1, ptr %88) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1646 unwind label %1024

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

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

1651:                                             ; preds = %1648
  %1652 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %1653 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1652, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %1654 unwind label %1024

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

1657:                                             ; preds = %1654
  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
  %1658 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %1659 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1658, ptr noundef nonnull align 1 dereferenceable(1) %90)
          to label %1660 unwind label %1684

1660:                                             ; preds = %1657
  call void @llvm.lifetime.end.p0(i64 1, ptr %90) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1661 unwind label %1024

1661:                                             ; preds = %1660
  br label %1662

1662:                                             ; preds = %1693, %1661
  br label %1663

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

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

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

1674:                                             ; preds = %1669
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1675 unwind label %1024

1675:                                             ; preds = %1674
  br label %1694

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

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

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

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

1692:                                             ; preds = %1669
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1693 unwind label %1024

1693:                                             ; preds = %1692
  br label %1662, !llvm.loop !24

1694:                                             ; preds = %1675
  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 %1695 unwind label %1716

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

1698:                                             ; preds = %1695
  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 %1699 unwind label %1725

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

1702:                                             ; preds = %1699
  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
  %1703 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %1704 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1703, ptr noundef nonnull align 1 dereferenceable(1) %94)
          to label %1705 unwind label %1734

1705:                                             ; preds = %1702
  call void @llvm.lifetime.end.p0(i64 1, ptr %94) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1706 unwind label %1024

1706:                                             ; preds = %1705
  br label %1707

1707:                                             ; preds = %1715, %1706
  %1708 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %1709 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1708)
          to label %1710 unwind label %1024

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

1714:                                             ; preds = %1710
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1715 unwind label %1024

1715:                                             ; preds = %1714
  br label %1707, !llvm.loop !25

1716:                                             ; preds = %1694
  %1717 = landingpad { ptr, i32 }
          cleanup
  %1718 = extractvalue { ptr, i32 } %1717, 0
  store ptr %1718, ptr %5, align 8
  %1719 = extractvalue { ptr, i32 } %1717, 1
  store i32 %1719, ptr %6, align 4
  br label %1724

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

1724:                                             ; preds = %1720, %1716
  call void @llvm.lifetime.end.p0(i64 24, ptr %92) #5
  br label %11991

1725:                                             ; preds = %1698
  %1726 = landingpad { ptr, i32 }
          cleanup
  %1727 = extractvalue { ptr, i32 } %1726, 0
  store ptr %1727, ptr %5, align 8
  %1728 = extractvalue { ptr, i32 } %1726, 1
  store i32 %1728, ptr %6, align 4
  br label %1733

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

1733:                                             ; preds = %1729, %1725
  call void @llvm.lifetime.end.p0(i64 24, ptr %93) #5
  br label %11991

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

1738:                                             ; preds = %1710
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1739 unwind label %1024

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

1742:                                             ; preds = %1739
  call void @llvm.lifetime.end.p0(i64 1, ptr %95) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1743 unwind label %1024

1743:                                             ; preds = %1742
  %1744 = 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 %1745 unwind label %1024

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

1748:                                             ; preds = %1745
  %1749 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %1750 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1749, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %1751 unwind label %1024

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

1754:                                             ; preds = %1751
  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
  %1755 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %1756 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1755, ptr noundef nonnull align 1 dereferenceable(1) %97)
          to label %1757 unwind label %1781

1757:                                             ; preds = %1754
  call void @llvm.lifetime.end.p0(i64 1, ptr %97) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1758 unwind label %1024

1758:                                             ; preds = %1757
  br label %1759

1759:                                             ; preds = %1790, %1758
  br label %1760

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

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

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

1771:                                             ; preds = %1766
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1772 unwind label %1024

1772:                                             ; preds = %1771
  br label %1791

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

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

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

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

1789:                                             ; preds = %1766
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1790 unwind label %1024

1790:                                             ; preds = %1789
  br label %1759, !llvm.loop !26

1791:                                             ; preds = %1772
  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 %1792 unwind label %1821

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

1795:                                             ; preds = %1792
  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 %1796 unwind label %1830

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

1799:                                             ; preds = %1796
  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 %1800 unwind label %1839

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

1803:                                             ; preds = %1800
  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 %1804 unwind label %1848

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

1807:                                             ; preds = %1804
  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
  %1808 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %1809 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1808, ptr noundef nonnull align 1 dereferenceable(1) %103)
          to label %1810 unwind label %1857

1810:                                             ; preds = %1807
  call void @llvm.lifetime.end.p0(i64 1, ptr %103) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1811 unwind label %1024

1811:                                             ; preds = %1810
  br label %1812

1812:                                             ; preds = %1820, %1811
  %1813 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %1814 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1813)
          to label %1815 unwind label %1024

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

1819:                                             ; preds = %1815
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1820 unwind label %1024

1820:                                             ; preds = %1819
  br label %1812, !llvm.loop !27

1821:                                             ; preds = %1791
  %1822 = landingpad { ptr, i32 }
          cleanup
  %1823 = extractvalue { ptr, i32 } %1822, 0
  store ptr %1823, ptr %5, align 8
  %1824 = extractvalue { ptr, i32 } %1822, 1
  store i32 %1824, ptr %6, align 4
  br label %1829

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

1829:                                             ; preds = %1825, %1821
  call void @llvm.lifetime.end.p0(i64 24, ptr %99) #5
  br label %11991

1830:                                             ; preds = %1795
  %1831 = landingpad { ptr, i32 }
          cleanup
  %1832 = extractvalue { ptr, i32 } %1831, 0
  store ptr %1832, ptr %5, align 8
  %1833 = extractvalue { ptr, i32 } %1831, 1
  store i32 %1833, ptr %6, align 4
  br label %1838

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

1838:                                             ; preds = %1834, %1830
  call void @llvm.lifetime.end.p0(i64 24, ptr %100) #5
  br label %11991

1839:                                             ; preds = %1799
  %1840 = landingpad { ptr, i32 }
          cleanup
  %1841 = extractvalue { ptr, i32 } %1840, 0
  store ptr %1841, ptr %5, align 8
  %1842 = extractvalue { ptr, i32 } %1840, 1
  store i32 %1842, ptr %6, align 4
  br label %1847

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

1847:                                             ; preds = %1843, %1839
  call void @llvm.lifetime.end.p0(i64 24, ptr %101) #5
  br label %11991

1848:                                             ; preds = %1803
  %1849 = landingpad { ptr, i32 }
          cleanup
  %1850 = extractvalue { ptr, i32 } %1849, 0
  store ptr %1850, ptr %5, align 8
  %1851 = extractvalue { ptr, i32 } %1849, 1
  store i32 %1851, ptr %6, align 4
  br label %1856

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

1856:                                             ; preds = %1852, %1848
  call void @llvm.lifetime.end.p0(i64 24, ptr %102) #5
  br label %11991

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

1861:                                             ; preds = %1815
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1862 unwind label %1024

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

1865:                                             ; preds = %1862
  call void @llvm.lifetime.end.p0(i64 1, ptr %104) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1866 unwind label %1024

1866:                                             ; preds = %1865
  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 %1867 unwind label %1892

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

1870:                                             ; preds = %1867
  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 %1871 unwind label %1901

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

1874:                                             ; preds = %1871
  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
  %1875 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %1876 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1875, ptr noundef nonnull align 1 dereferenceable(1) %107)
          to label %1877 unwind label %1910

1877:                                             ; preds = %1874
  call void @llvm.lifetime.end.p0(i64 1, ptr %107) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1878 unwind label %1024

1878:                                             ; preds = %1877
  br label %1879

1879:                                             ; preds = %1887, %1878
  %1880 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %1881 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1880)
          to label %1882 unwind label %1024

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

1886:                                             ; preds = %1882
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1887 unwind label %1024

1887:                                             ; preds = %1886
  br label %1879, !llvm.loop !28

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

1892:                                             ; preds = %1866
  %1893 = landingpad { ptr, i32 }
          cleanup
  %1894 = extractvalue { ptr, i32 } %1893, 0
  store ptr %1894, ptr %5, align 8
  %1895 = extractvalue { ptr, i32 } %1893, 1
  store i32 %1895, ptr %6, align 4
  br label %1900

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

1900:                                             ; preds = %1896, %1892
  call void @llvm.lifetime.end.p0(i64 24, ptr %105) #5
  br label %11991

1901:                                             ; preds = %1870
  %1902 = landingpad { ptr, i32 }
          cleanup
  %1903 = extractvalue { ptr, i32 } %1902, 0
  store ptr %1903, ptr %5, align 8
  %1904 = extractvalue { ptr, i32 } %1902, 1
  store i32 %1904, ptr %6, align 4
  br label %1909

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

1909:                                             ; preds = %1905, %1901
  call void @llvm.lifetime.end.p0(i64 24, ptr %106) #5
  br label %11991

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

1914:                                             ; preds = %1882
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1915 unwind label %1024

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

1918:                                             ; preds = %1915
  call void @llvm.lifetime.end.p0(i64 1, ptr %108) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1919 unwind label %1024

1919:                                             ; preds = %1918
  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 %1920 unwind label %1949

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

1923:                                             ; preds = %1920
  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 %1924 unwind label %1958

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

1927:                                             ; preds = %1924
  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 %1928 unwind label %1967

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

1931:                                             ; preds = %1928
  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
  %1932 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %1933 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1932, ptr noundef nonnull align 1 dereferenceable(1) %112)
          to label %1934 unwind label %1976

1934:                                             ; preds = %1931
  call void @llvm.lifetime.end.p0(i64 1, ptr %112) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1935 unwind label %1024

1935:                                             ; preds = %1934
  br label %1936

1936:                                             ; preds = %1944, %1935
  %1937 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %1938 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1937)
          to label %1939 unwind label %1024

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

1943:                                             ; preds = %1939
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1944 unwind label %1024

1944:                                             ; preds = %1943
  br label %1936, !llvm.loop !29

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

1949:                                             ; preds = %1919
  %1950 = landingpad { ptr, i32 }
          cleanup
  %1951 = extractvalue { ptr, i32 } %1950, 0
  store ptr %1951, ptr %5, align 8
  %1952 = extractvalue { ptr, i32 } %1950, 1
  store i32 %1952, ptr %6, align 4
  br label %1957

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

1957:                                             ; preds = %1953, %1949
  call void @llvm.lifetime.end.p0(i64 24, ptr %109) #5
  br label %11991

1958:                                             ; preds = %1923
  %1959 = landingpad { ptr, i32 }
          cleanup
  %1960 = extractvalue { ptr, i32 } %1959, 0
  store ptr %1960, ptr %5, align 8
  %1961 = extractvalue { ptr, i32 } %1959, 1
  store i32 %1961, ptr %6, align 4
  br label %1966

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

1966:                                             ; preds = %1962, %1958
  call void @llvm.lifetime.end.p0(i64 24, ptr %110) #5
  br label %11991

1967:                                             ; preds = %1927
  %1968 = landingpad { ptr, i32 }
          cleanup
  %1969 = extractvalue { ptr, i32 } %1968, 0
  store ptr %1969, ptr %5, align 8
  %1970 = extractvalue { ptr, i32 } %1968, 1
  store i32 %1970, ptr %6, align 4
  br label %1975

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

1975:                                             ; preds = %1971, %1967
  call void @llvm.lifetime.end.p0(i64 24, ptr %111) #5
  br label %11991

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

1980:                                             ; preds = %1939
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1981 unwind label %1024

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

1984:                                             ; preds = %1981
  call void @llvm.lifetime.end.p0(i64 1, ptr %113) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1985 unwind label %1024

1985:                                             ; preds = %1984
  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 %1986 unwind label %2011

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

1989:                                             ; preds = %1986
  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 %1990 unwind label %2020

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

1993:                                             ; preds = %1990
  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
  %1994 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %1995 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1994, ptr noundef nonnull align 1 dereferenceable(1) %116)
          to label %1996 unwind label %2029

1996:                                             ; preds = %1993
  call void @llvm.lifetime.end.p0(i64 1, ptr %116) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %1997 unwind label %1024

1997:                                             ; preds = %1996
  br label %1998

1998:                                             ; preds = %2006, %1997
  %1999 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %2000 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1999)
          to label %2001 unwind label %1024

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

2005:                                             ; preds = %2001
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2006 unwind label %1024

2006:                                             ; preds = %2005
  br label %1998, !llvm.loop !30

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

2011:                                             ; preds = %1985
  %2012 = landingpad { ptr, i32 }
          cleanup
  %2013 = extractvalue { ptr, i32 } %2012, 0
  store ptr %2013, ptr %5, align 8
  %2014 = extractvalue { ptr, i32 } %2012, 1
  store i32 %2014, ptr %6, align 4
  br label %2019

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

2019:                                             ; preds = %2015, %2011
  call void @llvm.lifetime.end.p0(i64 24, ptr %114) #5
  br label %11991

2020:                                             ; preds = %1989
  %2021 = landingpad { ptr, i32 }
          cleanup
  %2022 = extractvalue { ptr, i32 } %2021, 0
  store ptr %2022, ptr %5, align 8
  %2023 = extractvalue { ptr, i32 } %2021, 1
  store i32 %2023, ptr %6, align 4
  br label %2028

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

2028:                                             ; preds = %2024, %2020
  call void @llvm.lifetime.end.p0(i64 24, ptr %115) #5
  br label %11991

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

2033:                                             ; preds = %2001
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2034 unwind label %1024

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

2037:                                             ; preds = %2034
  call void @llvm.lifetime.end.p0(i64 1, ptr %117) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2038 unwind label %1024

2038:                                             ; preds = %2037
  br label %2045

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

2043:                                             ; preds = %867
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2044 unwind label %1024

2044:                                             ; preds = %2043
  br label %2045

2045:                                             ; preds = %2044, %2038
  %2046 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 270)
          to label %2047 unwind label %1024

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

2049:                                             ; preds = %2047
  br label %2050

2050:                                             ; preds = %2049
  br label %2051

2051:                                             ; preds = %2156, %2050
  br label %2052

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

2055:                                             ; preds = %2052
  %2056 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %2057 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2056, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %2058 unwind label %1024

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

2061:                                             ; preds = %2058
  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
  %2062 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %2063 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2062, ptr noundef nonnull align 1 dereferenceable(1) %119)
          to label %2064 unwind label %2084

2064:                                             ; preds = %2061
  call void @llvm.lifetime.end.p0(i64 1, ptr %119) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2065 unwind label %1024

2065:                                             ; preds = %2064
  br label %2066

2066:                                             ; preds = %2093, %2065
  br label %2067

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

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

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

2078:                                             ; preds = %2073
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2079 unwind label %1024

2079:                                             ; preds = %2078
  br label %2094

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

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

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

2092:                                             ; preds = %2073
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2093 unwind label %1024

2093:                                             ; preds = %2092
  br label %2066, !llvm.loop !31

2094:                                             ; preds = %2079
  %2095 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2096 unwind label %1024

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

2099:                                             ; preds = %2096
  %2100 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %2101 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2100, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2102 unwind label %1024

2102:                                             ; preds = %2099
  %2103 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %2104 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2103, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %2105 unwind label %1024

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

2108:                                             ; preds = %2105
  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
  %2109 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %2110 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2109, ptr noundef nonnull align 1 dereferenceable(1) %122)
          to label %2111 unwind label %2131

2111:                                             ; preds = %2108
  call void @llvm.lifetime.end.p0(i64 1, ptr %122) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2112 unwind label %1024

2112:                                             ; preds = %2111
  br label %2113

2113:                                             ; preds = %2140, %2112
  br label %2114

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

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

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

2125:                                             ; preds = %2120
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2126 unwind label %1024

2126:                                             ; preds = %2125
  br label %2141

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

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

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

2139:                                             ; preds = %2120
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2140 unwind label %1024

2140:                                             ; preds = %2139
  br label %2113, !llvm.loop !32

2141:                                             ; preds = %2126
  %2142 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2143 unwind label %1024

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

2146:                                             ; preds = %2143
  %2147 = 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 %2148 unwind label %1024

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

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

2152:                                             ; preds = %2150
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2153 unwind label %1024

2153:                                             ; preds = %2152
  br label %2157

2154:                                             ; preds = %2150
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2155 unwind label %1024

2155:                                             ; preds = %2154
  br label %2156

2156:                                             ; preds = %2155
  br label %2051, !llvm.loop !33

2157:                                             ; preds = %2153
  %2158 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 514)
          to label %2159 unwind label %1024

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

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

2165:                                             ; preds = %2161
  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 %2166 unwind label %2212

2166:                                             ; preds = %2165
  %2167 = 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 %2168 unwind label %2216

2168:                                             ; preds = %2166
  %2169 = 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 %2170 unwind label %2216

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

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

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

2175:                                             ; preds = %2173
  %2176 = 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) %2174)
          to label %2177 unwind label %2224

2177:                                             ; preds = %2175
  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 %2178

2178:                                             ; preds = %2177
  br label %2179

2179:                                             ; preds = %2298, %2178
  br label %2180

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

2183:                                             ; preds = %2180
  %2184 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %2185 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2184, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %2186 unwind label %1024

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

2189:                                             ; preds = %2186
  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
  %2190 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %2191 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2190, ptr noundef nonnull align 1 dereferenceable(1) %128)
          to label %2192 unwind label %2236

2192:                                             ; preds = %2189
  call void @llvm.lifetime.end.p0(i64 1, ptr %128) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2193 unwind label %1024

2193:                                             ; preds = %2192
  br label %2194

2194:                                             ; preds = %2245, %2193
  br label %2195

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

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

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

2206:                                             ; preds = %2201
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2207 unwind label %1024

2207:                                             ; preds = %2206
  br label %2246

2208:                                             ; preds = %2161
  %2209 = landingpad { ptr, i32 }
          cleanup
  %2210 = extractvalue { ptr, i32 } %2209, 0
  store ptr %2210, ptr %5, align 8
  %2211 = extractvalue { ptr, i32 } %2209, 1
  store i32 %2211, ptr %6, align 4
  br label %2231

2212:                                             ; preds = %2165
  %2213 = landingpad { ptr, i32 }
          cleanup
  %2214 = extractvalue { ptr, i32 } %2213, 0
  store ptr %2214, ptr %5, align 8
  %2215 = extractvalue { ptr, i32 } %2213, 1
  store i32 %2215, ptr %6, align 4
  br label %2230

2216:                                             ; preds = %2170, %2168, %2166
  %2217 = landingpad { ptr, i32 }
          cleanup
  %2218 = extractvalue { ptr, i32 } %2217, 0
  store ptr %2218, ptr %5, align 8
  %2219 = extractvalue { ptr, i32 } %2217, 1
  store i32 %2219, ptr %6, align 4
  br label %2229

2220:                                             ; preds = %2172
  %2221 = landingpad { ptr, i32 }
          cleanup
  %2222 = extractvalue { ptr, i32 } %2221, 0
  store ptr %2222, ptr %5, align 8
  %2223 = extractvalue { ptr, i32 } %2221, 1
  store i32 %2223, ptr %6, align 4
  br label %2228

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

2228:                                             ; preds = %2224, %2220
  call void @llvm.lifetime.end.p0(i64 24, ptr %126) #5
  br label %2229

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

2230:                                             ; preds = %2229, %2212
  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 %2231

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

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

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

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

2244:                                             ; preds = %2201
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2245 unwind label %1024

2245:                                             ; preds = %2244
  br label %2194, !llvm.loop !34

2246:                                             ; preds = %2207
  %2247 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2248 unwind label %1024

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

2251:                                             ; preds = %2248
  %2252 = 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 %2253 unwind label %1024

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

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

2259:                                             ; preds = %2255
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2260 unwind label %1024

2260:                                             ; preds = %2259
  br label %2323

2261:                                             ; preds = %2255
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2262 unwind label %1024

2262:                                             ; preds = %2261
  br label %2263

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

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

2268:                                             ; preds = %2265
  %2269 = 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 %2270 unwind label %1024

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

2272:                                             ; preds = %2270
  %2273 = icmp ne i64 %2271, 0
  %2274 = zext i1 %2273 to i32
  %2275 = icmp eq i32 %2274, 1
  br i1 %2275, label %2276, label %2279

2276:                                             ; preds = %2272
  %2277 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %19, i32 noundef 0)
          to label %2278 unwind label %1024

2278:                                             ; preds = %2276
  br label %2282

2279:                                             ; preds = %2272
  %2280 = 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 %2281 unwind label %1024

2281:                                             ; preds = %2279
  br label %2282

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

2286:                                             ; preds = %2282
  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 %2287 unwind label %2303

2287:                                             ; preds = %2286
  %2288 = 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 %2289 unwind label %2307

2289:                                             ; preds = %2287
  %2290 = 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 %2291 unwind label %2307

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

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

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

2296:                                             ; preds = %2294
  %2297 = 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) %2295)
          to label %2298 unwind label %2315

2298:                                             ; preds = %2296
  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 %2179, !llvm.loop !35

2299:                                             ; preds = %2282
  %2300 = landingpad { ptr, i32 }
          cleanup
  %2301 = extractvalue { ptr, i32 } %2300, 0
  store ptr %2301, ptr %5, align 8
  %2302 = extractvalue { ptr, i32 } %2300, 1
  store i32 %2302, ptr %6, align 4
  br label %2322

2303:                                             ; preds = %2286
  %2304 = landingpad { ptr, i32 }
          cleanup
  %2305 = extractvalue { ptr, i32 } %2304, 0
  store ptr %2305, ptr %5, align 8
  %2306 = extractvalue { ptr, i32 } %2304, 1
  store i32 %2306, ptr %6, align 4
  br label %2321

2307:                                             ; preds = %2291, %2289, %2287
  %2308 = landingpad { ptr, i32 }
          cleanup
  %2309 = extractvalue { ptr, i32 } %2308, 0
  store ptr %2309, ptr %5, align 8
  %2310 = extractvalue { ptr, i32 } %2308, 1
  store i32 %2310, ptr %6, align 4
  br label %2320

2311:                                             ; preds = %2293
  %2312 = landingpad { ptr, i32 }
          cleanup
  %2313 = extractvalue { ptr, i32 } %2312, 0
  store ptr %2313, ptr %5, align 8
  %2314 = extractvalue { ptr, i32 } %2312, 1
  store i32 %2314, ptr %6, align 4
  br label %2319

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

2319:                                             ; preds = %2315, %2311
  call void @llvm.lifetime.end.p0(i64 24, ptr %132) #5
  br label %2320

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

2321:                                             ; preds = %2320, %2303
  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 %2322

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

2323:                                             ; preds = %2260
  %2324 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef -8190)
          to label %2325 unwind label %1024

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

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

2330:                                             ; preds = %2327
  %2331 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %2332 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2331, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %2333 unwind label %1024

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

2336:                                             ; preds = %2333
  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
  %2337 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %2338 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2337, ptr noundef nonnull align 1 dereferenceable(1) %134)
          to label %2339 unwind label %2357

2339:                                             ; preds = %2336
  call void @llvm.lifetime.end.p0(i64 1, ptr %134) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2340 unwind label %1024

2340:                                             ; preds = %2339
  br label %2341

2341:                                             ; preds = %2366, %2340
  br label %2342

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

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

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

2351:                                             ; preds = %2348
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2352 unwind label %1024

2352:                                             ; preds = %2351
  br label %2367

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

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

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

2365:                                             ; preds = %2348
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2366 unwind label %1024

2366:                                             ; preds = %2365
  br label %2341, !llvm.loop !36

2367:                                             ; preds = %2352
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2368 unwind label %1024

2368:                                             ; preds = %2367
  br label %2369

2369:                                             ; preds = %2368
  br label %2370

2370:                                             ; preds = %11990, %2369
  br label %2371

2371:                                             ; preds = %2370
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2372 unwind label %1024

2372:                                             ; preds = %2371
  br label %2373

2373:                                             ; preds = %2372
  br label %2374

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

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

2378:                                             ; preds = %2376
  store i8 0, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2379 unwind label %1024

2379:                                             ; preds = %2378
  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 %2380 unwind label %2404

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

2383:                                             ; preds = %2380
  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 %2384 unwind label %2413

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

2387:                                             ; preds = %2384
  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
  %2388 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %2389 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2388, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %2390 unwind label %1024

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

2393:                                             ; preds = %2390
  call void @llvm.lifetime.end.p0(i64 1, ptr %138) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2394 unwind label %1024

2394:                                             ; preds = %2393
  br label %2395

2395:                                             ; preds = %2403, %2394
  %2396 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %2397 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2396)
          to label %2398 unwind label %1024

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

2402:                                             ; preds = %2398
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2403 unwind label %1024

2403:                                             ; preds = %2402
  br label %2395, !llvm.loop !37

2404:                                             ; preds = %2379
  %2405 = landingpad { ptr, i32 }
          cleanup
  %2406 = extractvalue { ptr, i32 } %2405, 0
  store ptr %2406, ptr %5, align 8
  %2407 = extractvalue { ptr, i32 } %2405, 1
  store i32 %2407, ptr %6, align 4
  br label %2412

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

2412:                                             ; preds = %2408, %2404
  call void @llvm.lifetime.end.p0(i64 24, ptr %136) #5
  br label %11991

2413:                                             ; preds = %2383
  %2414 = landingpad { ptr, i32 }
          cleanup
  %2415 = extractvalue { ptr, i32 } %2414, 0
  store ptr %2415, ptr %5, align 8
  %2416 = extractvalue { ptr, i32 } %2414, 1
  store i32 %2416, ptr %6, align 4
  br label %2421

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

2421:                                             ; preds = %2417, %2413
  call void @llvm.lifetime.end.p0(i64 24, ptr %137) #5
  br label %11991

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

2426:                                             ; preds = %2398
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2427 unwind label %1024

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

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

2433:                                             ; preds = %2430
  %2434 = 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 %2435 unwind label %1024

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

2437:                                             ; preds = %2435
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2438 unwind label %1024

2438:                                             ; preds = %2437
  %2439 = 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 %2440 unwind label %1024

2440:                                             ; preds = %2438
  %2441 = 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) %2439)
          to label %2442 unwind label %1024

2442:                                             ; preds = %2440
  %2443 = 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 %2444 unwind label %1024

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

2446:                                             ; preds = %2444
  %2447 = icmp eq i64 %2445, -1
  br i1 %2447, label %2448, label %2532

2448:                                             ; preds = %2446
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2449 unwind label %1024

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

2452:                                             ; preds = %2449
  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
  %2453 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 18
  %2454 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2453, ptr noundef nonnull align 1 dereferenceable(1) %141)
          to label %2455 unwind label %2496

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

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

2460:                                             ; preds = %2457
  %2461 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %2462 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2461, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %2463 unwind label %1024

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

2466:                                             ; preds = %2463
  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
  %2467 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %2468 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2467, ptr noundef nonnull align 1 dereferenceable(1) %143)
          to label %2469 unwind label %2504

2469:                                             ; preds = %2466
  call void @llvm.lifetime.end.p0(i64 1, ptr %143) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2470 unwind label %1024

2470:                                             ; preds = %2469
  br label %2471

2471:                                             ; preds = %2513, %2470
  br label %2472

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

2475:                                             ; preds = %2472
  %2476 = 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) %2474)
          to label %2477 unwind label %1024

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

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

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

2486:                                             ; preds = %2483
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2487 unwind label %1024

2487:                                             ; preds = %2486
  br label %2514

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

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

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

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

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

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

2512:                                             ; preds = %2483
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2513 unwind label %1024

2513:                                             ; preds = %2512
  br label %2471, !llvm.loop !38

2514:                                             ; preds = %2487
  %2515 = 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 %2516 unwind label %1024

2516:                                             ; preds = %2514
  %2517 = 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) %2515)
          to label %2518 unwind label %1024

2518:                                             ; preds = %2516
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2519 unwind label %1024

2519:                                             ; preds = %2518
  br label %2520

2520:                                             ; preds = %2530, %2519
  %2521 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %13)
          to label %2522 unwind label %1024

2522:                                             ; preds = %2520
  %2523 = icmp ne i64 %2521, 0
  br i1 %2523, label %2524, label %2531

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

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

2529:                                             ; preds = %2526
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2530 unwind label %1024

2530:                                             ; preds = %2529
  br label %2520, !llvm.loop !39

2531:                                             ; preds = %2522
  br label %11891

2532:                                             ; preds = %2446
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2533 unwind label %1024

2533:                                             ; preds = %2532
  br label %2534

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

2535:                                             ; preds = %2534
  %2536 = 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 %2537 unwind label %2574

2537:                                             ; preds = %2535
  %2538 = 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) %2536)
          to label %2539 unwind label %2574

2539:                                             ; preds = %2537
  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
  %2540 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %2541 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2540, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2542 unwind label %1024

2542:                                             ; preds = %2539
  %2543 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %2544 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2543, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %2545 unwind label %1024

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

2548:                                             ; preds = %2545
  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
  %2549 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %2550 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2549, ptr noundef nonnull align 1 dereferenceable(1) %147)
          to label %2551 unwind label %2583

2551:                                             ; preds = %2548
  call void @llvm.lifetime.end.p0(i64 1, ptr %147) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2552 unwind label %1024

2552:                                             ; preds = %2551
  br label %2553

2553:                                             ; preds = %2592, %2552
  br label %2554

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

2557:                                             ; preds = %2554
  %2558 = 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) %2556)
          to label %2559 unwind label %1024

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

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

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

2568:                                             ; preds = %2565
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2569 unwind label %1024

2569:                                             ; preds = %2568
  br label %2593

2570:                                             ; preds = %2534
  %2571 = landingpad { ptr, i32 }
          cleanup
  %2572 = extractvalue { ptr, i32 } %2571, 0
  store ptr %2572, ptr %5, align 8
  %2573 = extractvalue { ptr, i32 } %2571, 1
  store i32 %2573, ptr %6, align 4
  br label %2578

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

2578:                                             ; preds = %2574, %2570
  call void @llvm.lifetime.end.p0(i64 24, ptr %145) #5
  br label %11991

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

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

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

2591:                                             ; preds = %2565
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2592 unwind label %1024

2592:                                             ; preds = %2591
  br label %2553, !llvm.loop !40

2593:                                             ; preds = %2569
  call void @llvm.lifetime.start.p0(i64 32, ptr %149) #5
  %2594 = 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 %2595 unwind label %2625

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

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

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

2602:                                             ; preds = %2600
  %2603 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8) %2601, i1 noundef zeroext false)
          to label %2604 unwind label %2625

2604:                                             ; preds = %2602
  invoke void @_ZN5sc_dtorEyRKNS_12sc_concatrefE(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_unsigned") align 8 %149, i64 noundef %2596, ptr noundef nonnull align 8 dereferenceable(36) %2603)
          to label %2605 unwind label %2625

2605:                                             ; preds = %2604
  %2606 = 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 %2607 unwind label %2629

2607:                                             ; preds = %2605
  call void @_ZN5sc_dt11sc_unsignedD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %149) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %149) #5
  %2608 = 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 %2609 unwind label %1024

2609:                                             ; preds = %2607
  %2610 = 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) %2608)
          to label %2611 unwind label %1024

2611:                                             ; preds = %2609
  %2612 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %2613 unwind label %1024

2613:                                             ; preds = %2611
  %2614 = icmp sgt i64 %2612, 2
  br i1 %2614, label %2615, label %2642

2615:                                             ; preds = %2613
  %2616 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %2617 unwind label %1024

2617:                                             ; preds = %2615
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2618 unwind label %1024

2618:                                             ; preds = %2617
  call void @llvm.lifetime.start.p0(i64 1, ptr %150) #5
  store i8 1, ptr %150, align 1, !tbaa !9
  %2619 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 17
  %2620 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2619, ptr noundef nonnull align 1 dereferenceable(1) %150)
          to label %2621 unwind label %2634

2621:                                             ; preds = %2618
  call void @llvm.lifetime.end.p0(i64 1, ptr %150) #5
  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 %765, i32 0, i32 18
  %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 %2638

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

2625:                                             ; preds = %2604, %2602, %2600, %2597, %2595, %2593
  %2626 = landingpad { ptr, i32 }
          cleanup
  %2627 = extractvalue { ptr, i32 } %2626, 0
  store ptr %2627, ptr %5, align 8
  %2628 = extractvalue { ptr, i32 } %2626, 1
  store i32 %2628, ptr %6, align 4
  br label %2633

2629:                                             ; preds = %2605
  %2630 = landingpad { ptr, i32 }
          cleanup
  %2631 = extractvalue { ptr, i32 } %2630, 0
  store ptr %2631, ptr %5, align 8
  %2632 = extractvalue { ptr, i32 } %2630, 1
  store i32 %2632, ptr %6, align 4
  call void @_ZN5sc_dt11sc_unsignedD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %149) #5
  br label %2633

2633:                                             ; preds = %2629, %2625
  call void @llvm.lifetime.end.p0(i64 32, ptr %149) #5
  br label %11991

2634:                                             ; preds = %2618
  %2635 = landingpad { ptr, i32 }
          cleanup
  %2636 = extractvalue { ptr, i32 } %2635, 0
  store ptr %2636, ptr %5, align 8
  %2637 = extractvalue { ptr, i32 } %2635, 1
  store i32 %2637, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %150) #5
  br label %11991

2638:                                             ; preds = %2621
  %2639 = landingpad { ptr, i32 }
          cleanup
  %2640 = extractvalue { ptr, i32 } %2639, 0
  store ptr %2640, ptr %5, align 8
  %2641 = extractvalue { ptr, i32 } %2639, 1
  store i32 %2641, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %151) #5
  br label %11991

2642:                                             ; preds = %2613
  %2643 = 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 %2644 unwind label %1024

2644:                                             ; preds = %2642
  %2645 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %2646 = trunc i8 %2645 to i1
  %2647 = zext i1 %2646 to i8
  store i8 %2647, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2648 unwind label %1024

2648:                                             ; preds = %2644
  br label %2649

2649:                                             ; preds = %2648
  %2650 = 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 %2651 unwind label %1024

2651:                                             ; preds = %2649
  %2652 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %2650)
          to label %2653 unwind label %1024

2653:                                             ; preds = %2651
  %2654 = 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 %2655 unwind label %1024

2655:                                             ; preds = %2653
  %2656 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %2654)
          to label %2657 unwind label %1024

2657:                                             ; preds = %2655
  %2658 = zext i1 %2656 to i32
  %2659 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef %2658)
          to label %2660 unwind label %1024

2660:                                             ; preds = %2657
  call void @llvm.lifetime.start.p0(i64 1, ptr %152) #5
  %2661 = 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 %2662 unwind label %2714

2662:                                             ; preds = %2660
  %2663 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2661)
          to label %2664 unwind label %2714

2664:                                             ; preds = %2662
  %2665 = icmp ne i64 %2663, 0
  %2666 = zext i1 %2665 to i8
  store i8 %2666, ptr %152, align 1, !tbaa !9
  %2667 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 17
  %2668 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2667, ptr noundef nonnull align 1 dereferenceable(1) %152)
          to label %2669 unwind label %2714

2669:                                             ; preds = %2664
  call void @llvm.lifetime.end.p0(i64 1, ptr %152) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %153) #5
  %2670 = 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 %2671 unwind label %2718

2671:                                             ; preds = %2669
  %2672 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2670)
          to label %2673 unwind label %2718

2673:                                             ; preds = %2671
  %2674 = icmp ne i64 %2672, 0
  %2675 = zext i1 %2674 to i8
  store i8 %2675, ptr %153, align 1, !tbaa !9
  %2676 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 18
  %2677 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2676, ptr noundef nonnull align 1 dereferenceable(1) %153)
          to label %2678 unwind label %2718

2678:                                             ; preds = %2673
  call void @llvm.lifetime.end.p0(i64 1, ptr %153) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %154) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %154, i32 noundef 8)
          to label %2679 unwind label %2722

2679:                                             ; preds = %2678
  %2680 = 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) %154)
          to label %2681 unwind label %2726

2681:                                             ; preds = %2679
  %2682 = 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) %2680)
          to label %2683 unwind label %2726

2683:                                             ; preds = %2681
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %154) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %154) #5
  %2684 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %2685 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2684, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2686 unwind label %1024

2686:                                             ; preds = %2683
  %2687 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %2688 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2687, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %2689 unwind label %1024

2689:                                             ; preds = %2686
  call void @llvm.lifetime.start.p0(i64 1, ptr %155) #5
  store i8 1, ptr %155, align 1, !tbaa !9
  %2690 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %2691 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2690, ptr noundef nonnull align 1 dereferenceable(1) %155)
          to label %2692 unwind label %2731

2692:                                             ; preds = %2689
  call void @llvm.lifetime.end.p0(i64 1, ptr %155) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %156) #5
  store i8 1, ptr %156, align 1, !tbaa !9
  %2693 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %2694 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2693, ptr noundef nonnull align 1 dereferenceable(1) %156)
          to label %2695 unwind label %2735

2695:                                             ; preds = %2692
  call void @llvm.lifetime.end.p0(i64 1, ptr %156) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2696 unwind label %1024

2696:                                             ; preds = %2695
  br label %2697

2697:                                             ; preds = %2744, %2696
  br label %2698

2698:                                             ; preds = %2697
  %2699 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %2700 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %2699)
          to label %2701 unwind label %1024

2701:                                             ; preds = %2698
  %2702 = 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) %2700)
          to label %2703 unwind label %1024

2703:                                             ; preds = %2701
  call void @llvm.lifetime.start.p0(i64 1, ptr %157) #5
  store i8 0, ptr %157, align 1, !tbaa !9
  %2704 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %2705 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2704, ptr noundef nonnull align 1 dereferenceable(1) %157)
          to label %2706 unwind label %2739

2706:                                             ; preds = %2703
  call void @llvm.lifetime.end.p0(i64 1, ptr %157) #5
  %2707 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %2708 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %2707)
          to label %2709 unwind label %1024

2709:                                             ; preds = %2706
  %2710 = load i8, ptr %2708, align 1, !tbaa !9, !range !11, !noundef !12
  %2711 = trunc i8 %2710 to i1
  br i1 %2711, label %2712, label %2743

2712:                                             ; preds = %2709
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2713 unwind label %1024

2713:                                             ; preds = %2712
  br label %2745

2714:                                             ; preds = %2664, %2662, %2660
  %2715 = landingpad { ptr, i32 }
          cleanup
  %2716 = extractvalue { ptr, i32 } %2715, 0
  store ptr %2716, ptr %5, align 8
  %2717 = extractvalue { ptr, i32 } %2715, 1
  store i32 %2717, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %152) #5
  br label %11991

2718:                                             ; preds = %2673, %2671, %2669
  %2719 = landingpad { ptr, i32 }
          cleanup
  %2720 = extractvalue { ptr, i32 } %2719, 0
  store ptr %2720, ptr %5, align 8
  %2721 = extractvalue { ptr, i32 } %2719, 1
  store i32 %2721, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %153) #5
  br label %11991

2722:                                             ; preds = %2678
  %2723 = landingpad { ptr, i32 }
          cleanup
  %2724 = extractvalue { ptr, i32 } %2723, 0
  store ptr %2724, ptr %5, align 8
  %2725 = extractvalue { ptr, i32 } %2723, 1
  store i32 %2725, ptr %6, align 4
  br label %2730

2726:                                             ; preds = %2681, %2679
  %2727 = landingpad { ptr, i32 }
          cleanup
  %2728 = extractvalue { ptr, i32 } %2727, 0
  store ptr %2728, ptr %5, align 8
  %2729 = extractvalue { ptr, i32 } %2727, 1
  store i32 %2729, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %154) #5
  br label %2730

2730:                                             ; preds = %2726, %2722
  call void @llvm.lifetime.end.p0(i64 24, ptr %154) #5
  br label %11991

2731:                                             ; preds = %2689
  %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 %155) #5
  br label %11991

2735:                                             ; preds = %2692
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %156) #5
  br label %11991

2739:                                             ; preds = %2703
  %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 @llvm.lifetime.end.p0(i64 1, ptr %157) #5
  br label %11991

2743:                                             ; preds = %2709
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2744 unwind label %1024

2744:                                             ; preds = %2743
  br label %2697, !llvm.loop !41

2745:                                             ; preds = %2713
  %2746 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 11
  %2747 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %2746)
          to label %2748 unwind label %1024

2748:                                             ; preds = %2745
  %2749 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %2747, i32 noundef 2)
          to label %2750 unwind label %1024

2750:                                             ; preds = %2748
  %2751 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2749)
          to label %2752 unwind label %1024

2752:                                             ; preds = %2750
  %2753 = icmp ne i64 %2751, 0
  br i1 %2753, label %2754, label %2757

2754:                                             ; preds = %2752
  %2755 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 254)
          to label %2756 unwind label %1024

2756:                                             ; preds = %2754
  br label %2760

2757:                                             ; preds = %2752
  %2758 = 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 %2759 unwind label %1024

2759:                                             ; preds = %2757
  br label %2760

2760:                                             ; preds = %2759, %2756
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2761 unwind label %1024

2761:                                             ; preds = %2760
  %2762 = 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 %2763 unwind label %1024

2763:                                             ; preds = %2761
  %2764 = 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) %2762)
          to label %2765 unwind label %1024

2765:                                             ; preds = %2763
  %2766 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %35)
          to label %2767 unwind label %1024

2767:                                             ; preds = %2765
  %2768 = trunc i64 %2766 to i32
  switch i32 %2768, label %11885 [
    i32 193, label %2769
    i32 1, label %3272
    i32 194, label %3507
    i32 201, label %3508
    i32 205, label %3509
    i32 209, label %3526
    i32 7, label %3543
    i32 59, label %3935
    i32 208, label %5069
    i32 9, label %5649
    i32 210, label %7742
    i32 176, label %9254
    i32 10, label %11068
  ]

2769:                                             ; preds = %2767
  %2770 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %2771 unwind label %1024

2771:                                             ; preds = %2769
  %2772 = icmp ne i64 %2770, 3
  br i1 %2772, label %2777, label %2773

2773:                                             ; preds = %2771
  %2774 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %2775 unwind label %1024

2775:                                             ; preds = %2773
  %2776 = icmp ne i64 %2774, 0
  br i1 %2776, label %2777, label %2781

2777:                                             ; preds = %2775, %2771
  %2778 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %2779 unwind label %1024

2779:                                             ; preds = %2777
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2780 unwind label %1024

2780:                                             ; preds = %2779
  br label %3271

2781:                                             ; preds = %2775
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2782 unwind label %1024

2782:                                             ; preds = %2781
  %2783 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef 1)
          to label %2784 unwind label %1024

2784:                                             ; preds = %2782
  %2785 = 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 %2786 unwind label %1024

2786:                                             ; preds = %2784
  %2787 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %2788 = trunc i8 %2787 to i1
  %2789 = zext i1 %2788 to i8
  store i8 %2789, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %158) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %159) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %159, i32 noundef 0)
          to label %2790 unwind label %2845

2790:                                             ; preds = %2786
  %2791 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %159, ptr noundef nonnull align 8 dereferenceable(8) %27)
          to label %2792 unwind label %2849

2792:                                             ; preds = %2790
  call void @llvm.lifetime.start.p0(i64 24, ptr %160) #5
  %2793 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 5
  %2794 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %2793)
          to label %2795 unwind label %2853

2795:                                             ; preds = %2792
  invoke void @_ZN5sc_dt6sc_intILi4EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %160, ptr noundef nonnull align 8 dereferenceable(24) %2794)
          to label %2796 unwind label %2853

2796:                                             ; preds = %2795
  %2797 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2791, ptr noundef nonnull align 8 dereferenceable(8) %160)
          to label %2798 unwind label %2857

2798:                                             ; preds = %2796
  call void @llvm.lifetime.start.p0(i64 24, ptr %161) #5
  %2799 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 7
  %2800 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2799)
          to label %2801 unwind label %2861

2801:                                             ; preds = %2798
  %2802 = load i8, ptr %2800, align 1, !tbaa !9, !range !11, !noundef !12
  %2803 = trunc i8 %2802 to i1
  %2804 = zext i1 %2803 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %161, i32 noundef %2804)
          to label %2805 unwind label %2861

2805:                                             ; preds = %2801
  %2806 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2797, ptr noundef nonnull align 8 dereferenceable(8) %161)
          to label %2807 unwind label %2865

2807:                                             ; preds = %2805
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %158, ptr noundef nonnull align 1 dereferenceable(1) %2806)
          to label %2808 unwind label %2865

2808:                                             ; preds = %2807
  %2809 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %2810 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2809, ptr noundef nonnull align 8 dereferenceable(24) %158)
          to label %2811 unwind label %2869

2811:                                             ; preds = %2808
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %158) #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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %159) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %159) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %158) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %162) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %163) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %163, i32 noundef 10)
          to label %2812 unwind label %2879

2812:                                             ; preds = %2811
  %2813 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %163, ptr noundef nonnull align 8 dereferenceable(8) %28)
          to label %2814 unwind label %2883

2814:                                             ; preds = %2812
  call void @llvm.lifetime.start.p0(i64 24, ptr %164) #5
  %2815 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 10
  %2816 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2815)
          to label %2817 unwind label %2887

2817:                                             ; preds = %2814
  %2818 = load i8, ptr %2816, align 1, !tbaa !9, !range !11, !noundef !12
  %2819 = trunc i8 %2818 to i1
  %2820 = zext i1 %2819 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %164, i32 noundef %2820)
          to label %2821 unwind label %2887

2821:                                             ; preds = %2817
  %2822 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2813, ptr noundef nonnull align 8 dereferenceable(8) %164)
          to label %2823 unwind label %2891

2823:                                             ; preds = %2821
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %162, ptr noundef nonnull align 1 dereferenceable(1) %2822)
          to label %2824 unwind label %2891

2824:                                             ; preds = %2823
  %2825 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %2826 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2825, ptr noundef nonnull align 8 dereferenceable(24) %162)
          to label %2827 unwind label %2895

2827:                                             ; preds = %2824
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %162) #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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %163) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %163) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %162) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %165) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %165, i32 noundef -4)
          to label %2828 unwind label %2903

2828:                                             ; preds = %2827
  %2829 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %2830 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2829, ptr noundef nonnull align 8 dereferenceable(24) %165)
          to label %2831 unwind label %2907

2831:                                             ; preds = %2828
  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 @llvm.lifetime.start.p0(i64 1, ptr %166) #5
  store i8 1, ptr %166, align 1, !tbaa !9
  %2832 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %2833 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2832, ptr noundef nonnull align 1 dereferenceable(1) %166)
          to label %2834 unwind label %2912

2834:                                             ; preds = %2831
  call void @llvm.lifetime.end.p0(i64 1, ptr %166) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2835 unwind label %1024

2835:                                             ; preds = %2834
  br label %2836

2836:                                             ; preds = %2844, %2835
  %2837 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %2838 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2837)
          to label %2839 unwind label %1024

2839:                                             ; preds = %2836
  %2840 = load i8, ptr %2838, align 1, !tbaa !9, !range !11, !noundef !12
  %2841 = trunc i8 %2840 to i1
  %2842 = xor i1 %2841, true
  br i1 %2842, label %2843, label %2916

2843:                                             ; preds = %2839
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2844 unwind label %1024

2844:                                             ; preds = %2843
  br label %2836, !llvm.loop !42

2845:                                             ; preds = %2786
  %2846 = landingpad { ptr, i32 }
          cleanup
  %2847 = extractvalue { ptr, i32 } %2846, 0
  store ptr %2847, ptr %5, align 8
  %2848 = extractvalue { ptr, i32 } %2846, 1
  store i32 %2848, ptr %6, align 4
  br label %2878

2849:                                             ; preds = %2790
  %2850 = landingpad { ptr, i32 }
          cleanup
  %2851 = extractvalue { ptr, i32 } %2850, 0
  store ptr %2851, ptr %5, align 8
  %2852 = extractvalue { ptr, i32 } %2850, 1
  store i32 %2852, ptr %6, align 4
  br label %2877

2853:                                             ; preds = %2795, %2792
  %2854 = landingpad { ptr, i32 }
          cleanup
  %2855 = extractvalue { ptr, i32 } %2854, 0
  store ptr %2855, ptr %5, align 8
  %2856 = extractvalue { ptr, i32 } %2854, 1
  store i32 %2856, ptr %6, align 4
  br label %2876

2857:                                             ; preds = %2796
  %2858 = landingpad { ptr, i32 }
          cleanup
  %2859 = extractvalue { ptr, i32 } %2858, 0
  store ptr %2859, ptr %5, align 8
  %2860 = extractvalue { ptr, i32 } %2858, 1
  store i32 %2860, ptr %6, align 4
  br label %2875

2861:                                             ; preds = %2801, %2798
  %2862 = landingpad { ptr, i32 }
          cleanup
  %2863 = extractvalue { ptr, i32 } %2862, 0
  store ptr %2863, ptr %5, align 8
  %2864 = extractvalue { ptr, i32 } %2862, 1
  store i32 %2864, ptr %6, align 4
  br label %2874

2865:                                             ; preds = %2807, %2805
  %2866 = landingpad { ptr, i32 }
          cleanup
  %2867 = extractvalue { ptr, i32 } %2866, 0
  store ptr %2867, ptr %5, align 8
  %2868 = extractvalue { ptr, i32 } %2866, 1
  store i32 %2868, ptr %6, align 4
  br label %2873

2869:                                             ; preds = %2808
  %2870 = landingpad { ptr, i32 }
          cleanup
  %2871 = extractvalue { ptr, i32 } %2870, 0
  store ptr %2871, ptr %5, align 8
  %2872 = extractvalue { ptr, i32 } %2870, 1
  store i32 %2872, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %158) #5
  br label %2873

2873:                                             ; preds = %2869, %2865
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %161) #5
  br label %2874

2874:                                             ; preds = %2873, %2861
  call void @llvm.lifetime.end.p0(i64 24, ptr %161) #5
  br label %2875

2875:                                             ; preds = %2874, %2857
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %160) #5
  br label %2876

2876:                                             ; preds = %2875, %2853
  call void @llvm.lifetime.end.p0(i64 24, ptr %160) #5
  br label %2877

2877:                                             ; preds = %2876, %2849
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %159) #5
  br label %2878

2878:                                             ; preds = %2877, %2845
  call void @llvm.lifetime.end.p0(i64 24, ptr %159) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %158) #5
  br label %11991

2879:                                             ; preds = %2811
  %2880 = landingpad { ptr, i32 }
          cleanup
  %2881 = extractvalue { ptr, i32 } %2880, 0
  store ptr %2881, ptr %5, align 8
  %2882 = extractvalue { ptr, i32 } %2880, 1
  store i32 %2882, ptr %6, align 4
  br label %2902

2883:                                             ; preds = %2812
  %2884 = landingpad { ptr, i32 }
          cleanup
  %2885 = extractvalue { ptr, i32 } %2884, 0
  store ptr %2885, ptr %5, align 8
  %2886 = extractvalue { ptr, i32 } %2884, 1
  store i32 %2886, ptr %6, align 4
  br label %2901

2887:                                             ; preds = %2817, %2814
  %2888 = landingpad { ptr, i32 }
          cleanup
  %2889 = extractvalue { ptr, i32 } %2888, 0
  store ptr %2889, ptr %5, align 8
  %2890 = extractvalue { ptr, i32 } %2888, 1
  store i32 %2890, ptr %6, align 4
  br label %2900

2891:                                             ; preds = %2823, %2821
  %2892 = landingpad { ptr, i32 }
          cleanup
  %2893 = extractvalue { ptr, i32 } %2892, 0
  store ptr %2893, ptr %5, align 8
  %2894 = extractvalue { ptr, i32 } %2892, 1
  store i32 %2894, ptr %6, align 4
  br label %2899

2895:                                             ; preds = %2824
  %2896 = landingpad { ptr, i32 }
          cleanup
  %2897 = extractvalue { ptr, i32 } %2896, 0
  store ptr %2897, ptr %5, align 8
  %2898 = extractvalue { ptr, i32 } %2896, 1
  store i32 %2898, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %162) #5
  br label %2899

2899:                                             ; preds = %2895, %2891
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %164) #5
  br label %2900

2900:                                             ; preds = %2899, %2887
  call void @llvm.lifetime.end.p0(i64 24, ptr %164) #5
  br label %2901

2901:                                             ; preds = %2900, %2883
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %163) #5
  br label %2902

2902:                                             ; preds = %2901, %2879
  call void @llvm.lifetime.end.p0(i64 24, ptr %163) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %162) #5
  br label %11991

2903:                                             ; preds = %2827
  %2904 = landingpad { ptr, i32 }
          cleanup
  %2905 = extractvalue { ptr, i32 } %2904, 0
  store ptr %2905, ptr %5, align 8
  %2906 = extractvalue { ptr, i32 } %2904, 1
  store i32 %2906, ptr %6, align 4
  br label %2911

2907:                                             ; preds = %2828
  %2908 = landingpad { ptr, i32 }
          cleanup
  %2909 = extractvalue { ptr, i32 } %2908, 0
  store ptr %2909, ptr %5, align 8
  %2910 = extractvalue { ptr, i32 } %2908, 1
  store i32 %2910, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %165) #5
  br label %2911

2911:                                             ; preds = %2907, %2903
  call void @llvm.lifetime.end.p0(i64 24, ptr %165) #5
  br label %11991

2912:                                             ; preds = %2831
  %2913 = landingpad { ptr, i32 }
          cleanup
  %2914 = extractvalue { ptr, i32 } %2913, 0
  store ptr %2914, ptr %5, align 8
  %2915 = extractvalue { ptr, i32 } %2913, 1
  store i32 %2915, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %166) #5
  br label %11991

2916:                                             ; preds = %2839
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2917 unwind label %1024

2917:                                             ; preds = %2916
  call void @llvm.lifetime.start.p0(i64 1, ptr %167) #5
  store i8 0, ptr %167, align 1, !tbaa !9
  %2918 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %2919 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2918, ptr noundef nonnull align 1 dereferenceable(1) %167)
          to label %2920 unwind label %2953

2920:                                             ; preds = %2917
  call void @llvm.lifetime.end.p0(i64 1, ptr %167) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2921 unwind label %1024

2921:                                             ; preds = %2920
  call void @llvm.lifetime.start.p0(i64 24, ptr %168) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %168, i32 noundef 272)
          to label %2922 unwind label %2957

2922:                                             ; preds = %2921
  %2923 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %2924 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2923, ptr noundef nonnull align 8 dereferenceable(24) %168)
          to label %2925 unwind label %2961

2925:                                             ; preds = %2922
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %168) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %168) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %169) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %170) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %170, i32 noundef 0)
          to label %2926 unwind label %2966

2926:                                             ; preds = %2925
  %2927 = 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) %170)
          to label %2928 unwind label %2970

2928:                                             ; preds = %2926
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %169, ptr noundef nonnull align 1 dereferenceable(1) %2927)
          to label %2929 unwind label %2970

2929:                                             ; preds = %2928
  %2930 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %2931 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2930, ptr noundef nonnull align 8 dereferenceable(24) %169)
          to label %2932 unwind label %2974

2932:                                             ; preds = %2929
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %169) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %170) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %170) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %169) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %171) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %171, i32 noundef 1)
          to label %2933 unwind label %2980

2933:                                             ; preds = %2932
  %2934 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %2935 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2934, ptr noundef nonnull align 8 dereferenceable(24) %171)
          to label %2936 unwind label %2984

2936:                                             ; preds = %2933
  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
  %2937 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %2938 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2937, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %2939 unwind label %1024

2939:                                             ; preds = %2936
  call void @llvm.lifetime.start.p0(i64 1, ptr %172) #5
  store i8 1, ptr %172, align 1, !tbaa !9
  %2940 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %2941 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2940, ptr noundef nonnull align 1 dereferenceable(1) %172)
          to label %2942 unwind label %2989

2942:                                             ; preds = %2939
  call void @llvm.lifetime.end.p0(i64 1, ptr %172) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2943 unwind label %1024

2943:                                             ; preds = %2942
  br label %2944

2944:                                             ; preds = %2952, %2943
  %2945 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %2946 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2945)
          to label %2947 unwind label %1024

2947:                                             ; preds = %2944
  %2948 = load i8, ptr %2946, align 1, !tbaa !9, !range !11, !noundef !12
  %2949 = trunc i8 %2948 to i1
  %2950 = xor i1 %2949, true
  br i1 %2950, label %2951, label %2993

2951:                                             ; preds = %2947
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2952 unwind label %1024

2952:                                             ; preds = %2951
  br label %2944, !llvm.loop !43

2953:                                             ; preds = %2917
  %2954 = landingpad { ptr, i32 }
          cleanup
  %2955 = extractvalue { ptr, i32 } %2954, 0
  store ptr %2955, ptr %5, align 8
  %2956 = extractvalue { ptr, i32 } %2954, 1
  store i32 %2956, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %167) #5
  br label %11991

2957:                                             ; preds = %2921
  %2958 = landingpad { ptr, i32 }
          cleanup
  %2959 = extractvalue { ptr, i32 } %2958, 0
  store ptr %2959, ptr %5, align 8
  %2960 = extractvalue { ptr, i32 } %2958, 1
  store i32 %2960, ptr %6, align 4
  br label %2965

2961:                                             ; preds = %2922
  %2962 = landingpad { ptr, i32 }
          cleanup
  %2963 = extractvalue { ptr, i32 } %2962, 0
  store ptr %2963, ptr %5, align 8
  %2964 = extractvalue { ptr, i32 } %2962, 1
  store i32 %2964, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %168) #5
  br label %2965

2965:                                             ; preds = %2961, %2957
  call void @llvm.lifetime.end.p0(i64 24, ptr %168) #5
  br label %11991

2966:                                             ; preds = %2925
  %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
  br label %2979

2970:                                             ; preds = %2928, %2926
  %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 = %2929
  %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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %170) #5
  br label %2979

2979:                                             ; preds = %2978, %2966
  call void @llvm.lifetime.end.p0(i64 24, ptr %170) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %169) #5
  br label %11991

2980:                                             ; preds = %2932
  %2981 = landingpad { ptr, i32 }
          cleanup
  %2982 = extractvalue { ptr, i32 } %2981, 0
  store ptr %2982, ptr %5, align 8
  %2983 = extractvalue { ptr, i32 } %2981, 1
  store i32 %2983, ptr %6, align 4
  br label %2988

2984:                                             ; preds = %2933
  %2985 = landingpad { ptr, i32 }
          cleanup
  %2986 = extractvalue { ptr, i32 } %2985, 0
  store ptr %2986, ptr %5, align 8
  %2987 = extractvalue { ptr, i32 } %2985, 1
  store i32 %2987, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %171) #5
  br label %2988

2988:                                             ; preds = %2984, %2980
  call void @llvm.lifetime.end.p0(i64 24, ptr %171) #5
  br label %11991

2989:                                             ; preds = %2939
  %2990 = landingpad { ptr, i32 }
          cleanup
  %2991 = extractvalue { ptr, i32 } %2990, 0
  store ptr %2991, ptr %5, align 8
  %2992 = extractvalue { ptr, i32 } %2990, 1
  store i32 %2992, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %172) #5
  br label %11991

2993:                                             ; preds = %2947
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2994 unwind label %1024

2994:                                             ; preds = %2993
  call void @llvm.lifetime.start.p0(i64 1, ptr %173) #5
  store i8 0, ptr %173, align 1, !tbaa !9
  %2995 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %2996 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2995, ptr noundef nonnull align 1 dereferenceable(1) %173)
          to label %2997 unwind label %3032

2997:                                             ; preds = %2994
  call void @llvm.lifetime.end.p0(i64 1, ptr %173) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %2998 unwind label %1024

2998:                                             ; preds = %2997
  %2999 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef -2)
          to label %3000 unwind label %1024

3000:                                             ; preds = %2998
  call void @llvm.lifetime.start.p0(i64 24, ptr %174) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %174, i32 noundef -8192)
          to label %3001 unwind label %3036

3001:                                             ; preds = %3000
  %3002 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %3003 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3002, ptr noundef nonnull align 8 dereferenceable(24) %174)
          to label %3004 unwind label %3040

3004:                                             ; preds = %3001
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %174) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %174) #5
  %3005 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %3006 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3005, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %3007 unwind label %1024

3007:                                             ; preds = %3004
  call void @llvm.lifetime.start.p0(i64 1, ptr %175) #5
  store i8 1, ptr %175, align 1, !tbaa !9
  %3008 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %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) %175)
          to label %3010 unwind label %3045

3010:                                             ; preds = %3007
  call void @llvm.lifetime.end.p0(i64 1, ptr %175) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %176) #5
  store i8 1, ptr %176, align 1, !tbaa !9
  %3011 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3012 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3011, ptr noundef nonnull align 1 dereferenceable(1) %176)
          to label %3013 unwind label %3049

3013:                                             ; preds = %3010
  call void @llvm.lifetime.end.p0(i64 1, ptr %176) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3014 unwind label %1024

3014:                                             ; preds = %3013
  br label %3015

3015:                                             ; preds = %3058, %3014
  br label %3016

3016:                                             ; preds = %3015
  %3017 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %3018 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %3017)
          to label %3019 unwind label %1024

3019:                                             ; preds = %3016
  %3020 = 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) %3018)
          to label %3021 unwind label %1024

3021:                                             ; preds = %3019
  call void @llvm.lifetime.start.p0(i64 1, ptr %177) #5
  store i8 0, ptr %177, align 1, !tbaa !9
  %3022 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3023 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3022, ptr noundef nonnull align 1 dereferenceable(1) %177)
          to label %3024 unwind label %3053

3024:                                             ; preds = %3021
  call void @llvm.lifetime.end.p0(i64 1, ptr %177) #5
  %3025 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %3026 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3025)
          to label %3027 unwind label %1024

3027:                                             ; preds = %3024
  %3028 = load i8, ptr %3026, align 1, !tbaa !9, !range !11, !noundef !12
  %3029 = trunc i8 %3028 to i1
  br i1 %3029, label %3030, label %3057

3030:                                             ; preds = %3027
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3031 unwind label %1024

3031:                                             ; preds = %3030
  br label %3059

3032:                                             ; preds = %2994
  %3033 = landingpad { ptr, i32 }
          cleanup
  %3034 = extractvalue { ptr, i32 } %3033, 0
  store ptr %3034, ptr %5, align 8
  %3035 = extractvalue { ptr, i32 } %3033, 1
  store i32 %3035, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %173) #5
  br label %11991

3036:                                             ; preds = %3000
  %3037 = landingpad { ptr, i32 }
          cleanup
  %3038 = extractvalue { ptr, i32 } %3037, 0
  store ptr %3038, ptr %5, align 8
  %3039 = extractvalue { ptr, i32 } %3037, 1
  store i32 %3039, ptr %6, align 4
  br label %3044

3040:                                             ; preds = %3001
  %3041 = landingpad { ptr, i32 }
          cleanup
  %3042 = extractvalue { ptr, i32 } %3041, 0
  store ptr %3042, ptr %5, align 8
  %3043 = extractvalue { ptr, i32 } %3041, 1
  store i32 %3043, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %174) #5
  br label %3044

3044:                                             ; preds = %3040, %3036
  call void @llvm.lifetime.end.p0(i64 24, ptr %174) #5
  br label %11991

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 %175) #5
  br label %11991

3049:                                             ; preds = %3010
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %176) #5
  br label %11991

3053:                                             ; preds = %3021
  %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 @llvm.lifetime.end.p0(i64 1, ptr %177) #5
  br label %11991

3057:                                             ; preds = %3027
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3058 unwind label %1024

3058:                                             ; preds = %3057
  br label %3015, !llvm.loop !44

3059:                                             ; preds = %3031
  call void @llvm.lifetime.start.p0(i64 24, ptr %178) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %179) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %179, i32 noundef 0)
          to label %3060 unwind label %3117

3060:                                             ; preds = %3059
  %3061 = 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 %3062 unwind label %3121

3062:                                             ; preds = %3060
  %3063 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %179, ptr noundef nonnull align 8 dereferenceable(8) %3061)
          to label %3064 unwind label %3121

3064:                                             ; preds = %3062
  call void @llvm.lifetime.start.p0(i64 24, ptr %180) #5
  %3065 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 5
  %3066 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %3065)
          to label %3067 unwind label %3125

3067:                                             ; preds = %3064
  invoke void @_ZN5sc_dt6sc_intILi4EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %180, ptr noundef nonnull align 8 dereferenceable(24) %3066)
          to label %3068 unwind label %3125

3068:                                             ; preds = %3067
  %3069 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %3063, ptr noundef nonnull align 8 dereferenceable(8) %180)
          to label %3070 unwind label %3129

3070:                                             ; preds = %3068
  call void @llvm.lifetime.start.p0(i64 24, ptr %181) #5
  %3071 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 7
  %3072 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3071)
          to label %3073 unwind label %3133

3073:                                             ; preds = %3070
  %3074 = load i8, ptr %3072, align 1, !tbaa !9, !range !11, !noundef !12
  %3075 = trunc i8 %3074 to i1
  %3076 = zext i1 %3075 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %181, i32 noundef %3076)
          to label %3077 unwind label %3133

3077:                                             ; preds = %3073
  %3078 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %3069, ptr noundef nonnull align 8 dereferenceable(8) %181)
          to label %3079 unwind label %3137

3079:                                             ; preds = %3077
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %178, ptr noundef nonnull align 1 dereferenceable(1) %3078)
          to label %3080 unwind label %3137

3080:                                             ; preds = %3079
  %3081 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %3082 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3081, ptr noundef nonnull align 8 dereferenceable(24) %178)
          to label %3083 unwind label %3141

3083:                                             ; preds = %3080
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %178) #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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %179) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %179) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %178) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %182) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %183) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %183, i32 noundef 11)
          to label %3084 unwind label %3151

3084:                                             ; preds = %3083
  %3085 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %183, ptr noundef nonnull align 8 dereferenceable(8) %29)
          to label %3086 unwind label %3155

3086:                                             ; preds = %3084
  call void @llvm.lifetime.start.p0(i64 24, ptr %184) #5
  %3087 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 10
  %3088 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3087)
          to label %3089 unwind label %3159

3089:                                             ; preds = %3086
  %3090 = load i8, ptr %3088, align 1, !tbaa !9, !range !11, !noundef !12
  %3091 = trunc i8 %3090 to i1
  %3092 = zext i1 %3091 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %184, i32 noundef %3092)
          to label %3093 unwind label %3159

3093:                                             ; preds = %3089
  %3094 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %3085, ptr noundef nonnull align 8 dereferenceable(8) %184)
          to label %3095 unwind label %3163

3095:                                             ; preds = %3093
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %182, ptr noundef nonnull align 1 dereferenceable(1) %3094)
          to label %3096 unwind label %3163

3096:                                             ; preds = %3095
  %3097 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %3098 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3097, ptr noundef nonnull align 8 dereferenceable(24) %182)
          to label %3099 unwind label %3167

3099:                                             ; preds = %3096
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %182) #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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %183) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %183) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %182) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %185) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %185, i32 noundef -4)
          to label %3100 unwind label %3175

3100:                                             ; preds = %3099
  %3101 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %3102 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3101, ptr noundef nonnull align 8 dereferenceable(24) %185)
          to label %3103 unwind label %3179

3103:                                             ; preds = %3100
  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 @llvm.lifetime.start.p0(i64 1, ptr %186) #5
  store i8 1, ptr %186, align 1, !tbaa !9
  %3104 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %3105 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3104, ptr noundef nonnull align 1 dereferenceable(1) %186)
          to label %3106 unwind label %3184

3106:                                             ; preds = %3103
  call void @llvm.lifetime.end.p0(i64 1, ptr %186) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3107 unwind label %1024

3107:                                             ; preds = %3106
  br label %3108

3108:                                             ; preds = %3116, %3107
  %3109 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %3110 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3109)
          to label %3111 unwind label %1024

3111:                                             ; preds = %3108
  %3112 = load i8, ptr %3110, align 1, !tbaa !9, !range !11, !noundef !12
  %3113 = trunc i8 %3112 to i1
  %3114 = xor i1 %3113, true
  br i1 %3114, label %3115, label %3188

3115:                                             ; preds = %3111
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3116 unwind label %1024

3116:                                             ; preds = %3115
  br label %3108, !llvm.loop !45

3117:                                             ; preds = %3059
  %3118 = landingpad { ptr, i32 }
          cleanup
  %3119 = extractvalue { ptr, i32 } %3118, 0
  store ptr %3119, ptr %5, align 8
  %3120 = extractvalue { ptr, i32 } %3118, 1
  store i32 %3120, ptr %6, align 4
  br label %3150

3121:                                             ; preds = %3062, %3060
  %3122 = landingpad { ptr, i32 }
          cleanup
  %3123 = extractvalue { ptr, i32 } %3122, 0
  store ptr %3123, ptr %5, align 8
  %3124 = extractvalue { ptr, i32 } %3122, 1
  store i32 %3124, ptr %6, align 4
  br label %3149

3125:                                             ; preds = %3067, %3064
  %3126 = landingpad { ptr, i32 }
          cleanup
  %3127 = extractvalue { ptr, i32 } %3126, 0
  store ptr %3127, ptr %5, align 8
  %3128 = extractvalue { ptr, i32 } %3126, 1
  store i32 %3128, ptr %6, align 4
  br label %3148

3129:                                             ; preds = %3068
  %3130 = landingpad { ptr, i32 }
          cleanup
  %3131 = extractvalue { ptr, i32 } %3130, 0
  store ptr %3131, ptr %5, align 8
  %3132 = extractvalue { ptr, i32 } %3130, 1
  store i32 %3132, ptr %6, align 4
  br label %3147

3133:                                             ; preds = %3073, %3070
  %3134 = landingpad { ptr, i32 }
          cleanup
  %3135 = extractvalue { ptr, i32 } %3134, 0
  store ptr %3135, ptr %5, align 8
  %3136 = extractvalue { ptr, i32 } %3134, 1
  store i32 %3136, ptr %6, align 4
  br label %3146

3137:                                             ; preds = %3079, %3077
  %3138 = landingpad { ptr, i32 }
          cleanup
  %3139 = extractvalue { ptr, i32 } %3138, 0
  store ptr %3139, ptr %5, align 8
  %3140 = extractvalue { ptr, i32 } %3138, 1
  store i32 %3140, ptr %6, align 4
  br label %3145

3141:                                             ; preds = %3080
  %3142 = landingpad { ptr, i32 }
          cleanup
  %3143 = extractvalue { ptr, i32 } %3142, 0
  store ptr %3143, ptr %5, align 8
  %3144 = extractvalue { ptr, i32 } %3142, 1
  store i32 %3144, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %178) #5
  br label %3145

3145:                                             ; preds = %3141, %3137
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %181) #5
  br label %3146

3146:                                             ; preds = %3145, %3133
  call void @llvm.lifetime.end.p0(i64 24, ptr %181) #5
  br label %3147

3147:                                             ; preds = %3146, %3129
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %180) #5
  br label %3148

3148:                                             ; preds = %3147, %3125
  call void @llvm.lifetime.end.p0(i64 24, ptr %180) #5
  br label %3149

3149:                                             ; preds = %3148, %3121
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %179) #5
  br label %3150

3150:                                             ; preds = %3149, %3117
  call void @llvm.lifetime.end.p0(i64 24, ptr %179) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %178) #5
  br label %11991

3151:                                             ; preds = %3083
  %3152 = landingpad { ptr, i32 }
          cleanup
  %3153 = extractvalue { ptr, i32 } %3152, 0
  store ptr %3153, ptr %5, align 8
  %3154 = extractvalue { ptr, i32 } %3152, 1
  store i32 %3154, ptr %6, align 4
  br label %3174

3155:                                             ; preds = %3084
  %3156 = landingpad { ptr, i32 }
          cleanup
  %3157 = extractvalue { ptr, i32 } %3156, 0
  store ptr %3157, ptr %5, align 8
  %3158 = extractvalue { ptr, i32 } %3156, 1
  store i32 %3158, ptr %6, align 4
  br label %3173

3159:                                             ; preds = %3089, %3086
  %3160 = landingpad { ptr, i32 }
          cleanup
  %3161 = extractvalue { ptr, i32 } %3160, 0
  store ptr %3161, ptr %5, align 8
  %3162 = extractvalue { ptr, i32 } %3160, 1
  store i32 %3162, ptr %6, align 4
  br label %3172

3163:                                             ; preds = %3095, %3093
  %3164 = landingpad { ptr, i32 }
          cleanup
  %3165 = extractvalue { ptr, i32 } %3164, 0
  store ptr %3165, ptr %5, align 8
  %3166 = extractvalue { ptr, i32 } %3164, 1
  store i32 %3166, ptr %6, align 4
  br label %3171

3167:                                             ; preds = %3096
  %3168 = landingpad { ptr, i32 }
          cleanup
  %3169 = extractvalue { ptr, i32 } %3168, 0
  store ptr %3169, ptr %5, align 8
  %3170 = extractvalue { ptr, i32 } %3168, 1
  store i32 %3170, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %182) #5
  br label %3171

3171:                                             ; preds = %3167, %3163
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %184) #5
  br label %3172

3172:                                             ; preds = %3171, %3159
  call void @llvm.lifetime.end.p0(i64 24, ptr %184) #5
  br label %3173

3173:                                             ; preds = %3172, %3155
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %183) #5
  br label %3174

3174:                                             ; preds = %3173, %3151
  call void @llvm.lifetime.end.p0(i64 24, ptr %183) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %182) #5
  br label %11991

3175:                                             ; preds = %3099
  %3176 = landingpad { ptr, i32 }
          cleanup
  %3177 = extractvalue { ptr, i32 } %3176, 0
  store ptr %3177, ptr %5, align 8
  %3178 = extractvalue { ptr, i32 } %3176, 1
  store i32 %3178, ptr %6, align 4
  br label %3183

3179:                                             ; preds = %3100
  %3180 = landingpad { ptr, i32 }
          cleanup
  %3181 = extractvalue { ptr, i32 } %3180, 0
  store ptr %3181, ptr %5, align 8
  %3182 = extractvalue { ptr, i32 } %3180, 1
  store i32 %3182, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %185) #5
  br label %3183

3183:                                             ; preds = %3179, %3175
  call void @llvm.lifetime.end.p0(i64 24, ptr %185) #5
  br label %11991

3184:                                             ; preds = %3103
  %3185 = landingpad { ptr, i32 }
          cleanup
  %3186 = extractvalue { ptr, i32 } %3185, 0
  store ptr %3186, ptr %5, align 8
  %3187 = extractvalue { ptr, i32 } %3185, 1
  store i32 %3187, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %186) #5
  br label %11991

3188:                                             ; preds = %3111
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3189 unwind label %1024

3189:                                             ; preds = %3188
  call void @llvm.lifetime.start.p0(i64 1, ptr %187) #5
  store i8 0, ptr %187, align 1, !tbaa !9
  %3190 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %3191 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3190, ptr noundef nonnull align 1 dereferenceable(1) %187)
          to label %3192 unwind label %3226

3192:                                             ; preds = %3189
  call void @llvm.lifetime.end.p0(i64 1, ptr %187) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3193 unwind label %1024

3193:                                             ; preds = %3192
  call void @llvm.lifetime.start.p0(i64 24, ptr %188) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %188, i32 noundef 288)
          to label %3194 unwind label %3230

3194:                                             ; preds = %3193
  %3195 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %3196 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3195, ptr noundef nonnull align 8 dereferenceable(24) %188)
          to label %3197 unwind label %3234

3197:                                             ; preds = %3194
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %188) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %188) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %189) #5
  %3198 = 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 %3199 unwind label %3239

3199:                                             ; preds = %3197
  %3200 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8) %3198, i1 noundef zeroext false)
          to label %3201 unwind label %3239

3201:                                             ; preds = %3199
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %189, ptr noundef nonnull align 1 dereferenceable(1) %3200)
          to label %3202 unwind label %3239

3202:                                             ; preds = %3201
  %3203 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %3204 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3203, ptr noundef nonnull align 8 dereferenceable(24) %189)
          to label %3205 unwind label %3243

3205:                                             ; preds = %3202
  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
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %190, i32 noundef 1)
          to label %3206 unwind label %3248

3206:                                             ; preds = %3205
  %3207 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %3208 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3207, ptr noundef nonnull align 8 dereferenceable(24) %190)
          to label %3209 unwind label %3252

3209:                                             ; preds = %3206
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %190) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %190) #5
  %3210 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %3211 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3210, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %3212 unwind label %1024

3212:                                             ; preds = %3209
  call void @llvm.lifetime.start.p0(i64 1, ptr %191) #5
  store i8 1, ptr %191, align 1, !tbaa !9
  %3213 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %3214 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3213, ptr noundef nonnull align 1 dereferenceable(1) %191)
          to label %3215 unwind label %3257

3215:                                             ; preds = %3212
  call void @llvm.lifetime.end.p0(i64 1, ptr %191) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3216 unwind label %1024

3216:                                             ; preds = %3215
  br label %3217

3217:                                             ; preds = %3225, %3216
  %3218 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %3219 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3218)
          to label %3220 unwind label %1024

3220:                                             ; preds = %3217
  %3221 = load i8, ptr %3219, align 1, !tbaa !9, !range !11, !noundef !12
  %3222 = trunc i8 %3221 to i1
  %3223 = xor i1 %3222, true
  br i1 %3223, label %3224, label %3261

3224:                                             ; preds = %3220
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3225 unwind label %1024

3225:                                             ; preds = %3224
  br label %3217, !llvm.loop !46

3226:                                             ; preds = %3189
  %3227 = landingpad { ptr, i32 }
          cleanup
  %3228 = extractvalue { ptr, i32 } %3227, 0
  store ptr %3228, ptr %5, align 8
  %3229 = extractvalue { ptr, i32 } %3227, 1
  store i32 %3229, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %187) #5
  br label %11991

3230:                                             ; preds = %3193
  %3231 = landingpad { ptr, i32 }
          cleanup
  %3232 = extractvalue { ptr, i32 } %3231, 0
  store ptr %3232, ptr %5, align 8
  %3233 = extractvalue { ptr, i32 } %3231, 1
  store i32 %3233, ptr %6, align 4
  br label %3238

3234:                                             ; preds = %3194
  %3235 = landingpad { ptr, i32 }
          cleanup
  %3236 = extractvalue { ptr, i32 } %3235, 0
  store ptr %3236, ptr %5, align 8
  %3237 = extractvalue { ptr, i32 } %3235, 1
  store i32 %3237, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %188) #5
  br label %3238

3238:                                             ; preds = %3234, %3230
  call void @llvm.lifetime.end.p0(i64 24, ptr %188) #5
  br label %11991

3239:                                             ; preds = %3201, %3199, %3197
  %3240 = landingpad { ptr, i32 }
          cleanup
  %3241 = extractvalue { ptr, i32 } %3240, 0
  store ptr %3241, ptr %5, align 8
  %3242 = extractvalue { ptr, i32 } %3240, 1
  store i32 %3242, ptr %6, align 4
  br label %3247

3243:                                             ; preds = %3202
  %3244 = landingpad { ptr, i32 }
          cleanup
  %3245 = extractvalue { ptr, i32 } %3244, 0
  store ptr %3245, ptr %5, align 8
  %3246 = extractvalue { ptr, i32 } %3244, 1
  store i32 %3246, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %189) #5
  br label %3247

3247:                                             ; preds = %3243, %3239
  call void @llvm.lifetime.end.p0(i64 24, ptr %189) #5
  br label %11991

3248:                                             ; preds = %3205
  %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
  br label %3256

3252:                                             ; preds = %3206
  %3253 = landingpad { ptr, i32 }
          cleanup
  %3254 = extractvalue { ptr, i32 } %3253, 0
  store ptr %3254, ptr %5, align 8
  %3255 = extractvalue { ptr, i32 } %3253, 1
  store i32 %3255, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %190) #5
  br label %3256

3256:                                             ; preds = %3252, %3248
  call void @llvm.lifetime.end.p0(i64 24, ptr %190) #5
  br label %11991

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
  call void @llvm.lifetime.end.p0(i64 1, ptr %191) #5
  br label %11991

3261:                                             ; preds = %3220
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3262 unwind label %1024

3262:                                             ; preds = %3261
  call void @llvm.lifetime.start.p0(i64 1, ptr %192) #5
  store i8 0, ptr %192, align 1, !tbaa !9
  %3263 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %3264 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3263, ptr noundef nonnull align 1 dereferenceable(1) %192)
          to label %3265 unwind label %3267

3265:                                             ; preds = %3262
  call void @llvm.lifetime.end.p0(i64 1, ptr %192) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3266 unwind label %1024

3266:                                             ; preds = %3265
  br label %3271

3267:                                             ; preds = %3262
  %3268 = landingpad { ptr, i32 }
          cleanup
  %3269 = extractvalue { ptr, i32 } %3268, 0
  store ptr %3269, ptr %5, align 8
  %3270 = extractvalue { ptr, i32 } %3268, 1
  store i32 %3270, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %192) #5
  br label %11991

3271:                                             ; preds = %3266, %2780
  br label %11889

3272:                                             ; preds = %2767
  %3273 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %3274 unwind label %1024

3274:                                             ; preds = %3272
  %3275 = icmp ne i64 %3273, 3
  br i1 %3275, label %3280, label %3276

3276:                                             ; preds = %3274
  %3277 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %3278 unwind label %1024

3278:                                             ; preds = %3276
  %3279 = icmp ne i64 %3277, 1
  br i1 %3279, label %3280, label %3284

3280:                                             ; preds = %3278, %3274
  %3281 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %3282 unwind label %1024

3282:                                             ; preds = %3280
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3283 unwind label %1024

3283:                                             ; preds = %3282
  br label %3506

3284:                                             ; preds = %3278
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3285 unwind label %1024

3285:                                             ; preds = %3284
  %3286 = 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 %3287 unwind label %1024

3287:                                             ; preds = %3285
  store i8 1, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %193) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %193, i32 noundef 10)
          to label %3288 unwind label %3323

3288:                                             ; preds = %3287
  %3289 = 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) %193)
          to label %3290 unwind label %3327

3290:                                             ; preds = %3288
  %3291 = 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) %3289)
          to label %3292 unwind label %3327

3292:                                             ; preds = %3290
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %193) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %193) #5
  %3293 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %3294 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3293, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3295 unwind label %1024

3295:                                             ; preds = %3292
  %3296 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %3297 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3296, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %3298 unwind label %1024

3298:                                             ; preds = %3295
  call void @llvm.lifetime.start.p0(i64 1, ptr %194) #5
  store i8 1, ptr %194, align 1, !tbaa !9
  %3299 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %3300 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3299, ptr noundef nonnull align 1 dereferenceable(1) %194)
          to label %3301 unwind label %3332

3301:                                             ; preds = %3298
  call void @llvm.lifetime.end.p0(i64 1, ptr %194) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %195) #5
  store i8 1, ptr %195, align 1, !tbaa !9
  %3302 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3303 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3302, ptr noundef nonnull align 1 dereferenceable(1) %195)
          to label %3304 unwind label %3336

3304:                                             ; preds = %3301
  call void @llvm.lifetime.end.p0(i64 1, ptr %195) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3305 unwind label %1024

3305:                                             ; preds = %3304
  br label %3306

3306:                                             ; preds = %3345, %3305
  br label %3307

3307:                                             ; preds = %3306
  %3308 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %3309 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %3308)
          to label %3310 unwind label %1024

3310:                                             ; preds = %3307
  %3311 = 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) %3309)
          to label %3312 unwind label %1024

3312:                                             ; preds = %3310
  call void @llvm.lifetime.start.p0(i64 1, ptr %196) #5
  store i8 0, ptr %196, align 1, !tbaa !9
  %3313 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3314 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3313, ptr noundef nonnull align 1 dereferenceable(1) %196)
          to label %3315 unwind label %3340

3315:                                             ; preds = %3312
  call void @llvm.lifetime.end.p0(i64 1, ptr %196) #5
  %3316 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %3317 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3316)
          to label %3318 unwind label %1024

3318:                                             ; preds = %3315
  %3319 = load i8, ptr %3317, align 1, !tbaa !9, !range !11, !noundef !12
  %3320 = trunc i8 %3319 to i1
  br i1 %3320, label %3321, label %3344

3321:                                             ; preds = %3318
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3322 unwind label %1024

3322:                                             ; preds = %3321
  br label %3346

3323:                                             ; preds = %3287
  %3324 = landingpad { ptr, i32 }
          cleanup
  %3325 = extractvalue { ptr, i32 } %3324, 0
  store ptr %3325, ptr %5, align 8
  %3326 = extractvalue { ptr, i32 } %3324, 1
  store i32 %3326, ptr %6, align 4
  br label %3331

3327:                                             ; preds = %3290, %3288
  %3328 = landingpad { ptr, i32 }
          cleanup
  %3329 = extractvalue { ptr, i32 } %3328, 0
  store ptr %3329, ptr %5, align 8
  %3330 = extractvalue { ptr, i32 } %3328, 1
  store i32 %3330, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %193) #5
  br label %3331

3331:                                             ; preds = %3327, %3323
  call void @llvm.lifetime.end.p0(i64 24, ptr %193) #5
  br label %11991

3332:                                             ; preds = %3298
  %3333 = landingpad { ptr, i32 }
          cleanup
  %3334 = extractvalue { ptr, i32 } %3333, 0
  store ptr %3334, ptr %5, align 8
  %3335 = extractvalue { ptr, i32 } %3333, 1
  store i32 %3335, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %194) #5
  br label %11991

3336:                                             ; preds = %3301
  %3337 = landingpad { ptr, i32 }
          cleanup
  %3338 = extractvalue { ptr, i32 } %3337, 0
  store ptr %3338, ptr %5, align 8
  %3339 = extractvalue { ptr, i32 } %3337, 1
  store i32 %3339, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %195) #5
  br label %11991

3340:                                             ; preds = %3312
  %3341 = landingpad { ptr, i32 }
          cleanup
  %3342 = extractvalue { ptr, i32 } %3341, 0
  store ptr %3342, ptr %5, align 8
  %3343 = extractvalue { ptr, i32 } %3341, 1
  store i32 %3343, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %196) #5
  br label %11991

3344:                                             ; preds = %3318
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3345 unwind label %1024

3345:                                             ; preds = %3344
  br label %3306, !llvm.loop !47

3346:                                             ; preds = %3322
  %3347 = 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 %3348 unwind label %1024

3348:                                             ; preds = %3346
  %3349 = 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) %3347)
          to label %3350 unwind label %1024

3350:                                             ; preds = %3348
  %3351 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %28)
          to label %3352 unwind label %1024

3352:                                             ; preds = %3350
  %3353 = add nsw i64 %3351, 1
  %3354 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %3353)
          to label %3355 unwind label %1024

3355:                                             ; preds = %3352
  call void @llvm.lifetime.start.p0(i64 24, ptr %197) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %197, i32 noundef 11)
          to label %3356 unwind label %3391

3356:                                             ; preds = %3355
  %3357 = 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) %197)
          to label %3358 unwind label %3395

3358:                                             ; preds = %3356
  %3359 = 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) %3357)
          to label %3360 unwind label %3395

3360:                                             ; preds = %3358
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %197) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %197) #5
  %3361 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %3362 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3361, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3363 unwind label %1024

3363:                                             ; preds = %3360
  %3364 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %3365 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3364, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %3366 unwind label %1024

3366:                                             ; preds = %3363
  call void @llvm.lifetime.start.p0(i64 1, ptr %198) #5
  store i8 1, ptr %198, align 1, !tbaa !9
  %3367 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %3368 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3367, ptr noundef nonnull align 1 dereferenceable(1) %198)
          to label %3369 unwind label %3400

3369:                                             ; preds = %3366
  call void @llvm.lifetime.end.p0(i64 1, ptr %198) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %199) #5
  store i8 1, ptr %199, align 1, !tbaa !9
  %3370 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3371 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3370, ptr noundef nonnull align 1 dereferenceable(1) %199)
          to label %3372 unwind label %3404

3372:                                             ; preds = %3369
  call void @llvm.lifetime.end.p0(i64 1, ptr %199) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3373 unwind label %1024

3373:                                             ; preds = %3372
  br label %3374

3374:                                             ; preds = %3413, %3373
  br label %3375

3375:                                             ; preds = %3374
  %3376 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %3377 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %3376)
          to label %3378 unwind label %1024

3378:                                             ; preds = %3375
  %3379 = 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) %3377)
          to label %3380 unwind label %1024

3380:                                             ; preds = %3378
  call void @llvm.lifetime.start.p0(i64 1, ptr %200) #5
  store i8 0, ptr %200, align 1, !tbaa !9
  %3381 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3382 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3381, ptr noundef nonnull align 1 dereferenceable(1) %200)
          to label %3383 unwind label %3408

3383:                                             ; preds = %3380
  call void @llvm.lifetime.end.p0(i64 1, ptr %200) #5
  %3384 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %3385 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3384)
          to label %3386 unwind label %1024

3386:                                             ; preds = %3383
  %3387 = load i8, ptr %3385, align 1, !tbaa !9, !range !11, !noundef !12
  %3388 = trunc i8 %3387 to i1
  br i1 %3388, label %3389, label %3412

3389:                                             ; preds = %3386
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3390 unwind label %1024

3390:                                             ; preds = %3389
  br label %3414

3391:                                             ; preds = %3355
  %3392 = landingpad { ptr, i32 }
          cleanup
  %3393 = extractvalue { ptr, i32 } %3392, 0
  store ptr %3393, ptr %5, align 8
  %3394 = extractvalue { ptr, i32 } %3392, 1
  store i32 %3394, ptr %6, align 4
  br label %3399

3395:                                             ; preds = %3358, %3356
  %3396 = landingpad { ptr, i32 }
          cleanup
  %3397 = extractvalue { ptr, i32 } %3396, 0
  store ptr %3397, ptr %5, align 8
  %3398 = extractvalue { ptr, i32 } %3396, 1
  store i32 %3398, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %197) #5
  br label %3399

3399:                                             ; preds = %3395, %3391
  call void @llvm.lifetime.end.p0(i64 24, ptr %197) #5
  br label %11991

3400:                                             ; preds = %3366
  %3401 = landingpad { ptr, i32 }
          cleanup
  %3402 = extractvalue { ptr, i32 } %3401, 0
  store ptr %3402, ptr %5, align 8
  %3403 = extractvalue { ptr, i32 } %3401, 1
  store i32 %3403, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %198) #5
  br label %11991

3404:                                             ; preds = %3369
  %3405 = landingpad { ptr, i32 }
          cleanup
  %3406 = extractvalue { ptr, i32 } %3405, 0
  store ptr %3406, ptr %5, align 8
  %3407 = extractvalue { ptr, i32 } %3405, 1
  store i32 %3407, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %199) #5
  br label %11991

3408:                                             ; preds = %3380
  %3409 = landingpad { ptr, i32 }
          cleanup
  %3410 = extractvalue { ptr, i32 } %3409, 0
  store ptr %3410, ptr %5, align 8
  %3411 = extractvalue { ptr, i32 } %3409, 1
  store i32 %3411, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %200) #5
  br label %11991

3412:                                             ; preds = %3386
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3413 unwind label %1024

3413:                                             ; preds = %3412
  br label %3374, !llvm.loop !48

3414:                                             ; preds = %3390
  %3415 = 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 %3416 unwind label %1024

3416:                                             ; preds = %3414
  %3417 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 9)
          to label %3418 unwind label %1024

3418:                                             ; preds = %3416
  %3419 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %3420 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3419, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3421 unwind label %1024

3421:                                             ; preds = %3418
  %3422 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %3423 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3422, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %3424 unwind label %1024

3424:                                             ; preds = %3421
  call void @llvm.lifetime.start.p0(i64 1, ptr %201) #5
  store i8 0, ptr %201, align 1, !tbaa !9
  %3425 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %3426 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3425, ptr noundef nonnull align 1 dereferenceable(1) %201)
          to label %3427 unwind label %3444

3427:                                             ; preds = %3424
  call void @llvm.lifetime.end.p0(i64 1, ptr %201) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %202) #5
  store i8 1, ptr %202, align 1, !tbaa !9
  %3428 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3429 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3428, ptr noundef nonnull align 1 dereferenceable(1) %202)
          to label %3430 unwind label %3448

3430:                                             ; preds = %3427
  call void @llvm.lifetime.end.p0(i64 1, ptr %202) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3431 unwind label %1024

3431:                                             ; preds = %3430
  br label %3432

3432:                                             ; preds = %3457, %3431
  br label %3433

3433:                                             ; preds = %3432
  call void @llvm.lifetime.start.p0(i64 1, ptr %203) #5
  store i8 0, ptr %203, align 1, !tbaa !9
  %3434 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3435 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3434, ptr noundef nonnull align 1 dereferenceable(1) %203)
          to label %3436 unwind label %3452

3436:                                             ; preds = %3433
  call void @llvm.lifetime.end.p0(i64 1, ptr %203) #5
  %3437 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %3438 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3437)
          to label %3439 unwind label %1024

3439:                                             ; preds = %3436
  %3440 = load i8, ptr %3438, align 1, !tbaa !9, !range !11, !noundef !12
  %3441 = trunc i8 %3440 to i1
  br i1 %3441, label %3442, label %3456

3442:                                             ; preds = %3439
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3443 unwind label %1024

3443:                                             ; preds = %3442
  br label %3458

3444:                                             ; preds = %3424
  %3445 = landingpad { ptr, i32 }
          cleanup
  %3446 = extractvalue { ptr, i32 } %3445, 0
  store ptr %3446, ptr %5, align 8
  %3447 = extractvalue { ptr, i32 } %3445, 1
  store i32 %3447, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %201) #5
  br label %11991

3448:                                             ; preds = %3427
  %3449 = landingpad { ptr, i32 }
          cleanup
  %3450 = extractvalue { ptr, i32 } %3449, 0
  store ptr %3450, ptr %5, align 8
  %3451 = extractvalue { ptr, i32 } %3449, 1
  store i32 %3451, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %202) #5
  br label %11991

3452:                                             ; preds = %3433
  %3453 = landingpad { ptr, i32 }
          cleanup
  %3454 = extractvalue { ptr, i32 } %3453, 0
  store ptr %3454, ptr %5, align 8
  %3455 = extractvalue { ptr, i32 } %3453, 1
  store i32 %3455, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %203) #5
  br label %11991

3456:                                             ; preds = %3439
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3457 unwind label %1024

3457:                                             ; preds = %3456
  br label %3432, !llvm.loop !49

3458:                                             ; preds = %3443
  %3459 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %3460 unwind label %1024

3460:                                             ; preds = %3458
  %3461 = add nsw i64 %3459, 32
  %3462 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %3, i64 noundef %3461)
          to label %3463 unwind label %1024

3463:                                             ; preds = %3460
  %3464 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 17)
          to label %3465 unwind label %1024

3465:                                             ; preds = %3463
  %3466 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %3467 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3466, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3468 unwind label %1024

3468:                                             ; preds = %3465
  %3469 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %3470 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3469, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %3471 unwind label %1024

3471:                                             ; preds = %3468
  call void @llvm.lifetime.start.p0(i64 1, ptr %204) #5
  store i8 0, ptr %204, align 1, !tbaa !9
  %3472 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %3473 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3472, ptr noundef nonnull align 1 dereferenceable(1) %204)
          to label %3474 unwind label %3491

3474:                                             ; preds = %3471
  call void @llvm.lifetime.end.p0(i64 1, ptr %204) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %205) #5
  store i8 1, ptr %205, align 1, !tbaa !9
  %3475 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3476 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3475, ptr noundef nonnull align 1 dereferenceable(1) %205)
          to label %3477 unwind label %3495

3477:                                             ; preds = %3474
  call void @llvm.lifetime.end.p0(i64 1, ptr %205) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3478 unwind label %1024

3478:                                             ; preds = %3477
  br label %3479

3479:                                             ; preds = %3504, %3478
  br label %3480

3480:                                             ; preds = %3479
  call void @llvm.lifetime.start.p0(i64 1, ptr %206) #5
  store i8 0, ptr %206, align 1, !tbaa !9
  %3481 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3482 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3481, ptr noundef nonnull align 1 dereferenceable(1) %206)
          to label %3483 unwind label %3499

3483:                                             ; preds = %3480
  call void @llvm.lifetime.end.p0(i64 1, ptr %206) #5
  %3484 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %3485 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3484)
          to label %3486 unwind label %1024

3486:                                             ; preds = %3483
  %3487 = load i8, ptr %3485, align 1, !tbaa !9, !range !11, !noundef !12
  %3488 = trunc i8 %3487 to i1
  br i1 %3488, label %3489, label %3503

3489:                                             ; preds = %3486
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3490 unwind label %1024

3490:                                             ; preds = %3489
  br label %3505

3491:                                             ; preds = %3471
  %3492 = landingpad { ptr, i32 }
          cleanup
  %3493 = extractvalue { ptr, i32 } %3492, 0
  store ptr %3493, ptr %5, align 8
  %3494 = extractvalue { ptr, i32 } %3492, 1
  store i32 %3494, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %204) #5
  br label %11991

3495:                                             ; preds = %3474
  %3496 = landingpad { ptr, i32 }
          cleanup
  %3497 = extractvalue { ptr, i32 } %3496, 0
  store ptr %3497, ptr %5, align 8
  %3498 = extractvalue { ptr, i32 } %3496, 1
  store i32 %3498, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %205) #5
  br label %11991

3499:                                             ; preds = %3480
  %3500 = landingpad { ptr, i32 }
          cleanup
  %3501 = extractvalue { ptr, i32 } %3500, 0
  store ptr %3501, ptr %5, align 8
  %3502 = extractvalue { ptr, i32 } %3500, 1
  store i32 %3502, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %206) #5
  br label %11991

3503:                                             ; preds = %3486
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3504 unwind label %1024

3504:                                             ; preds = %3503
  br label %3479, !llvm.loop !50

3505:                                             ; preds = %3490
  br label %3506

3506:                                             ; preds = %3505, %3283
  br label %11889

3507:                                             ; preds = %2767
  br label %3508

3508:                                             ; preds = %3507, %2767
  br label %3509

3509:                                             ; preds = %3508, %2767
  %3510 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %3511 unwind label %1024

3511:                                             ; preds = %3509
  %3512 = icmp ne i64 %3510, 3
  br i1 %3512, label %3517, label %3513

3513:                                             ; preds = %3511
  %3514 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %3515 unwind label %1024

3515:                                             ; preds = %3513
  %3516 = icmp ne i64 %3514, 0
  br i1 %3516, label %3517, label %3521

3517:                                             ; preds = %3515, %3511
  %3518 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %3519 unwind label %1024

3519:                                             ; preds = %3517
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3520 unwind label %1024

3520:                                             ; preds = %3519
  br label %3525

3521:                                             ; preds = %3515
  %3522 = 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 %3523 unwind label %1024

3523:                                             ; preds = %3521
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3524 unwind label %1024

3524:                                             ; preds = %3523
  br label %3525

3525:                                             ; preds = %3524, %3520
  br label %11889

3526:                                             ; preds = %2767
  %3527 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %3528 unwind label %1024

3528:                                             ; preds = %3526
  %3529 = icmp ne i64 %3527, 3
  br i1 %3529, label %3534, label %3530

3530:                                             ; preds = %3528
  %3531 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %3532 unwind label %1024

3532:                                             ; preds = %3530
  %3533 = icmp eq i64 %3531, 0
  br i1 %3533, label %3534, label %3538

3534:                                             ; preds = %3532, %3528
  %3535 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %3536 unwind label %1024

3536:                                             ; preds = %3534
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3537 unwind label %1024

3537:                                             ; preds = %3536
  br label %3542

3538:                                             ; preds = %3532
  %3539 = 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 %3540 unwind label %1024

3540:                                             ; preds = %3538
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3541 unwind label %1024

3541:                                             ; preds = %3540
  br label %3542

3542:                                             ; preds = %3541, %3537
  br label %11889

3543:                                             ; preds = %2767
  %3544 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %3545 unwind label %1024

3545:                                             ; preds = %3543
  %3546 = icmp ne i64 %3544, 3
  br i1 %3546, label %3551, label %3547

3547:                                             ; preds = %3545
  %3548 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %3549 unwind label %1024

3549:                                             ; preds = %3547
  %3550 = icmp eq i64 %3548, 0
  br i1 %3550, label %3551, label %3555

3551:                                             ; preds = %3549, %3545
  %3552 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %3553 unwind label %1024

3553:                                             ; preds = %3551
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3554 unwind label %1024

3554:                                             ; preds = %3553
  br label %3934

3555:                                             ; preds = %3549
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3556 unwind label %1024

3556:                                             ; preds = %3555
  %3557 = 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 %3558 unwind label %1024

3558:                                             ; preds = %3556
  %3559 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %3560 = trunc i8 %3559 to i1
  %3561 = zext i1 %3560 to i8
  store i8 %3561, ptr %34, align 1, !tbaa !9
  %3562 = 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 %3563 unwind label %1024

3563:                                             ; preds = %3558
  %3564 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %3562)
          to label %3565 unwind label %1024

3565:                                             ; preds = %3563
  %3566 = icmp eq i64 %3564, 1
  br i1 %3566, label %3567, label %3572

3567:                                             ; preds = %3565
  %3568 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 10)
          to label %3569 unwind label %1024

3569:                                             ; preds = %3567
  %3570 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 272)
          to label %3571 unwind label %1024

3571:                                             ; preds = %3569
  br label %3577

3572:                                             ; preds = %3565
  %3573 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 11)
          to label %3574 unwind label %1024

3574:                                             ; preds = %3572
  %3575 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 288)
          to label %3576 unwind label %1024

3576:                                             ; preds = %3574
  br label %3577

3577:                                             ; preds = %3576, %3571
  call void @llvm.lifetime.start.p0(i64 24, ptr %207) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %208) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %208, i32 noundef 0)
          to label %3578 unwind label %3616

3578:                                             ; preds = %3577
  %3579 = 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) %208)
          to label %3580 unwind label %3620

3580:                                             ; preds = %3578
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %207, ptr noundef nonnull align 1 dereferenceable(1) %3579)
          to label %3581 unwind label %3620

3581:                                             ; preds = %3580
  %3582 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %3583 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3582, ptr noundef nonnull align 8 dereferenceable(24) %207)
          to label %3584 unwind label %3624

3584:                                             ; preds = %3581
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %207) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %208) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %208) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %207) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %209) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %209, i32 noundef 0)
          to label %3585 unwind label %3630

3585:                                             ; preds = %3584
  %3586 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %3587 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3586, ptr noundef nonnull align 8 dereferenceable(24) %209)
          to label %3588 unwind label %3634

3588:                                             ; preds = %3585
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %209) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %209) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %210) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %211) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %211, i32 noundef 0)
          to label %3589 unwind label %3639

3589:                                             ; preds = %3588
  %3590 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %211, ptr noundef nonnull align 8 dereferenceable(8) %15)
          to label %3591 unwind label %3643

3591:                                             ; preds = %3589
  call void @llvm.lifetime.start.p0(i64 24, ptr %212) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %212, i32 noundef 0)
          to label %3592 unwind label %3647

3592:                                             ; preds = %3591
  %3593 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %3590, ptr noundef nonnull align 8 dereferenceable(8) %212)
          to label %3594 unwind label %3651

3594:                                             ; preds = %3592
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %210, ptr noundef nonnull align 1 dereferenceable(1) %3593)
          to label %3595 unwind label %3651

3595:                                             ; preds = %3594
  %3596 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %3597 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3596, ptr noundef nonnull align 8 dereferenceable(24) %210)
          to label %3598 unwind label %3655

3598:                                             ; preds = %3595
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %210) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %212) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %212) #5
  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.end.p0(i64 24, ptr %210) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %213) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %213, i32 noundef -3)
          to label %3599 unwind label %3663

3599:                                             ; preds = %3598
  %3600 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %3601 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3600, ptr noundef nonnull align 8 dereferenceable(24) %213)
          to label %3602 unwind label %3667

3602:                                             ; preds = %3599
  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.start.p0(i64 1, ptr %214) #5
  store i8 1, ptr %214, align 1, !tbaa !9
  %3603 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %3604 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3603, ptr noundef nonnull align 1 dereferenceable(1) %214)
          to label %3605 unwind label %3672

3605:                                             ; preds = %3602
  call void @llvm.lifetime.end.p0(i64 1, ptr %214) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3606 unwind label %1024

3606:                                             ; preds = %3605
  br label %3607

3607:                                             ; preds = %3615, %3606
  %3608 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %3609 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3608)
          to label %3610 unwind label %1024

3610:                                             ; preds = %3607
  %3611 = load i8, ptr %3609, align 1, !tbaa !9, !range !11, !noundef !12
  %3612 = trunc i8 %3611 to i1
  %3613 = xor i1 %3612, true
  br i1 %3613, label %3614, label %3676

3614:                                             ; preds = %3610
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3615 unwind label %1024

3615:                                             ; preds = %3614
  br label %3607, !llvm.loop !51

3616:                                             ; preds = %3577
  %3617 = landingpad { ptr, i32 }
          cleanup
  %3618 = extractvalue { ptr, i32 } %3617, 0
  store ptr %3618, ptr %5, align 8
  %3619 = extractvalue { ptr, i32 } %3617, 1
  store i32 %3619, ptr %6, align 4
  br label %3629

3620:                                             ; preds = %3580, %3578
  %3621 = landingpad { ptr, i32 }
          cleanup
  %3622 = extractvalue { ptr, i32 } %3621, 0
  store ptr %3622, ptr %5, align 8
  %3623 = extractvalue { ptr, i32 } %3621, 1
  store i32 %3623, ptr %6, align 4
  br label %3628

3624:                                             ; preds = %3581
  %3625 = landingpad { ptr, i32 }
          cleanup
  %3626 = extractvalue { ptr, i32 } %3625, 0
  store ptr %3626, ptr %5, align 8
  %3627 = extractvalue { ptr, i32 } %3625, 1
  store i32 %3627, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %207) #5
  br label %3628

3628:                                             ; preds = %3624, %3620
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %208) #5
  br label %3629

3629:                                             ; preds = %3628, %3616
  call void @llvm.lifetime.end.p0(i64 24, ptr %208) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %207) #5
  br label %11991

3630:                                             ; preds = %3584
  %3631 = landingpad { ptr, i32 }
          cleanup
  %3632 = extractvalue { ptr, i32 } %3631, 0
  store ptr %3632, ptr %5, align 8
  %3633 = extractvalue { ptr, i32 } %3631, 1
  store i32 %3633, ptr %6, align 4
  br label %3638

3634:                                             ; preds = %3585
  %3635 = landingpad { ptr, i32 }
          cleanup
  %3636 = extractvalue { ptr, i32 } %3635, 0
  store ptr %3636, ptr %5, align 8
  %3637 = extractvalue { ptr, i32 } %3635, 1
  store i32 %3637, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %209) #5
  br label %3638

3638:                                             ; preds = %3634, %3630
  call void @llvm.lifetime.end.p0(i64 24, ptr %209) #5
  br label %11991

3639:                                             ; preds = %3588
  %3640 = landingpad { ptr, i32 }
          cleanup
  %3641 = extractvalue { ptr, i32 } %3640, 0
  store ptr %3641, ptr %5, align 8
  %3642 = extractvalue { ptr, i32 } %3640, 1
  store i32 %3642, ptr %6, align 4
  br label %3662

3643:                                             ; preds = %3589
  %3644 = landingpad { ptr, i32 }
          cleanup
  %3645 = extractvalue { ptr, i32 } %3644, 0
  store ptr %3645, ptr %5, align 8
  %3646 = extractvalue { ptr, i32 } %3644, 1
  store i32 %3646, ptr %6, align 4
  br label %3661

3647:                                             ; preds = %3591
  %3648 = landingpad { ptr, i32 }
          cleanup
  %3649 = extractvalue { ptr, i32 } %3648, 0
  store ptr %3649, ptr %5, align 8
  %3650 = extractvalue { ptr, i32 } %3648, 1
  store i32 %3650, ptr %6, align 4
  br label %3660

3651:                                             ; preds = %3594, %3592
  %3652 = landingpad { ptr, i32 }
          cleanup
  %3653 = extractvalue { ptr, i32 } %3652, 0
  store ptr %3653, ptr %5, align 8
  %3654 = extractvalue { ptr, i32 } %3652, 1
  store i32 %3654, ptr %6, align 4
  br label %3659

3655:                                             ; preds = %3595
  %3656 = landingpad { ptr, i32 }
          cleanup
  %3657 = extractvalue { ptr, i32 } %3656, 0
  store ptr %3657, ptr %5, align 8
  %3658 = extractvalue { ptr, i32 } %3656, 1
  store i32 %3658, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %210) #5
  br label %3659

3659:                                             ; preds = %3655, %3651
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %212) #5
  br label %3660

3660:                                             ; preds = %3659, %3647
  call void @llvm.lifetime.end.p0(i64 24, ptr %212) #5
  br label %3661

3661:                                             ; preds = %3660, %3643
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %211) #5
  br label %3662

3662:                                             ; preds = %3661, %3639
  call void @llvm.lifetime.end.p0(i64 24, ptr %211) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %210) #5
  br label %11991

3663:                                             ; preds = %3598
  %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 %3671

3667:                                             ; preds = %3599
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %213) #5
  br label %3671

3671:                                             ; preds = %3667, %3663
  call void @llvm.lifetime.end.p0(i64 24, ptr %213) #5
  br label %11991

3672:                                             ; preds = %3602
  %3673 = landingpad { ptr, i32 }
          cleanup
  %3674 = extractvalue { ptr, i32 } %3673, 0
  store ptr %3674, ptr %5, align 8
  %3675 = extractvalue { ptr, i32 } %3673, 1
  store i32 %3675, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %214) #5
  br label %11991

3676:                                             ; preds = %3610
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3677 unwind label %1024

3677:                                             ; preds = %3676
  call void @llvm.lifetime.start.p0(i64 1, ptr %215) #5
  store i8 0, ptr %215, align 1, !tbaa !9
  %3678 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %3679 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3678, ptr noundef nonnull align 1 dereferenceable(1) %215)
          to label %3680 unwind label %3710

3680:                                             ; preds = %3677
  call void @llvm.lifetime.end.p0(i64 1, ptr %215) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3681 unwind label %1024

3681:                                             ; preds = %3680
  call void @llvm.lifetime.start.p0(i64 24, ptr %216) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %216, i32 noundef 451)
          to label %3682 unwind label %3714

3682:                                             ; preds = %3681
  %3683 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %3684 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3683, ptr noundef nonnull align 8 dereferenceable(24) %216)
          to label %3685 unwind label %3718

3685:                                             ; preds = %3682
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %216) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %216) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %217) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %217, i32 noundef 0)
          to label %3686 unwind label %3723

3686:                                             ; preds = %3685
  %3687 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %3688 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3687, ptr noundef nonnull align 8 dereferenceable(24) %217)
          to label %3689 unwind label %3727

3689:                                             ; preds = %3686
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %217) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %217) #5
  %3690 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %3691 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3690, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %3692 unwind label %1024

3692:                                             ; preds = %3689
  call void @llvm.lifetime.start.p0(i64 24, ptr %218) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %218, i32 noundef -2)
          to label %3693 unwind label %3732

3693:                                             ; preds = %3692
  %3694 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %3695 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3694, ptr noundef nonnull align 8 dereferenceable(24) %218)
          to label %3696 unwind label %3736

3696:                                             ; preds = %3693
  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 1, ptr %219) #5
  store i8 1, ptr %219, align 1, !tbaa !9
  %3697 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %3698 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3697, ptr noundef nonnull align 1 dereferenceable(1) %219)
          to label %3699 unwind label %3741

3699:                                             ; preds = %3696
  call void @llvm.lifetime.end.p0(i64 1, ptr %219) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3700 unwind label %1024

3700:                                             ; preds = %3699
  br label %3701

3701:                                             ; preds = %3709, %3700
  %3702 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %3703 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3702)
          to label %3704 unwind label %1024

3704:                                             ; preds = %3701
  %3705 = load i8, ptr %3703, align 1, !tbaa !9, !range !11, !noundef !12
  %3706 = trunc i8 %3705 to i1
  %3707 = xor i1 %3706, true
  br i1 %3707, label %3708, label %3745

3708:                                             ; preds = %3704
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3709 unwind label %1024

3709:                                             ; preds = %3708
  br label %3701, !llvm.loop !52

3710:                                             ; preds = %3677
  %3711 = landingpad { ptr, i32 }
          cleanup
  %3712 = extractvalue { ptr, i32 } %3711, 0
  store ptr %3712, ptr %5, align 8
  %3713 = extractvalue { ptr, i32 } %3711, 1
  store i32 %3713, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %215) #5
  br label %11991

3714:                                             ; preds = %3681
  %3715 = landingpad { ptr, i32 }
          cleanup
  %3716 = extractvalue { ptr, i32 } %3715, 0
  store ptr %3716, ptr %5, align 8
  %3717 = extractvalue { ptr, i32 } %3715, 1
  store i32 %3717, ptr %6, align 4
  br label %3722

3718:                                             ; preds = %3682
  %3719 = landingpad { ptr, i32 }
          cleanup
  %3720 = extractvalue { ptr, i32 } %3719, 0
  store ptr %3720, ptr %5, align 8
  %3721 = extractvalue { ptr, i32 } %3719, 1
  store i32 %3721, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %216) #5
  br label %3722

3722:                                             ; preds = %3718, %3714
  call void @llvm.lifetime.end.p0(i64 24, ptr %216) #5
  br label %11991

3723:                                             ; preds = %3685
  %3724 = landingpad { ptr, i32 }
          cleanup
  %3725 = extractvalue { ptr, i32 } %3724, 0
  store ptr %3725, ptr %5, align 8
  %3726 = extractvalue { ptr, i32 } %3724, 1
  store i32 %3726, ptr %6, align 4
  br label %3731

3727:                                             ; preds = %3686
  %3728 = landingpad { ptr, i32 }
          cleanup
  %3729 = extractvalue { ptr, i32 } %3728, 0
  store ptr %3729, ptr %5, align 8
  %3730 = extractvalue { ptr, i32 } %3728, 1
  store i32 %3730, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %217) #5
  br label %3731

3731:                                             ; preds = %3727, %3723
  call void @llvm.lifetime.end.p0(i64 24, ptr %217) #5
  br label %11991

3732:                                             ; preds = %3692
  %3733 = landingpad { ptr, i32 }
          cleanup
  %3734 = extractvalue { ptr, i32 } %3733, 0
  store ptr %3734, ptr %5, align 8
  %3735 = extractvalue { ptr, i32 } %3733, 1
  store i32 %3735, ptr %6, align 4
  br label %3740

3736:                                             ; preds = %3693
  %3737 = landingpad { ptr, i32 }
          cleanup
  %3738 = extractvalue { ptr, i32 } %3737, 0
  store ptr %3738, ptr %5, align 8
  %3739 = extractvalue { ptr, i32 } %3737, 1
  store i32 %3739, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %218) #5
  br label %3740

3740:                                             ; preds = %3736, %3732
  call void @llvm.lifetime.end.p0(i64 24, ptr %218) #5
  br label %11991

3741:                                             ; preds = %3696
  %3742 = landingpad { ptr, i32 }
          cleanup
  %3743 = extractvalue { ptr, i32 } %3742, 0
  store ptr %3743, ptr %5, align 8
  %3744 = extractvalue { ptr, i32 } %3742, 1
  store i32 %3744, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %219) #5
  br label %11991

3745:                                             ; preds = %3704
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3746 unwind label %1024

3746:                                             ; preds = %3745
  call void @llvm.lifetime.start.p0(i64 1, ptr %220) #5
  store i8 0, ptr %220, align 1, !tbaa !9
  %3747 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %3748 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3747, ptr noundef nonnull align 1 dereferenceable(1) %220)
          to label %3749 unwind label %3783

3749:                                             ; preds = %3746
  call void @llvm.lifetime.end.p0(i64 1, ptr %220) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3750 unwind label %1024

3750:                                             ; preds = %3749
  call void @llvm.lifetime.start.p0(i64 24, ptr %221) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %221, i32 noundef 11)
          to label %3751 unwind label %3787

3751:                                             ; preds = %3750
  %3752 = 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) %221)
          to label %3753 unwind label %3791

3753:                                             ; preds = %3751
  %3754 = 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) %3752)
          to label %3755 unwind label %3791

3755:                                             ; preds = %3753
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %221) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %221) #5
  %3756 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 1)
          to label %3757 unwind label %1024

3757:                                             ; preds = %3755
  %3758 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %3759 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3758, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3760 unwind label %1024

3760:                                             ; preds = %3757
  %3761 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %3762 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3761, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %3763 unwind label %1024

3763:                                             ; preds = %3760
  call void @llvm.lifetime.start.p0(i64 1, ptr %222) #5
  store i8 0, ptr %222, align 1, !tbaa !9
  %3764 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %3765 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3764, ptr noundef nonnull align 1 dereferenceable(1) %222)
          to label %3766 unwind label %3796

3766:                                             ; preds = %3763
  call void @llvm.lifetime.end.p0(i64 1, ptr %222) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %223) #5
  store i8 1, ptr %223, align 1, !tbaa !9
  %3767 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3768 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3767, ptr noundef nonnull align 1 dereferenceable(1) %223)
          to label %3769 unwind label %3800

3769:                                             ; preds = %3766
  call void @llvm.lifetime.end.p0(i64 1, ptr %223) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3770 unwind label %1024

3770:                                             ; preds = %3769
  br label %3771

3771:                                             ; preds = %3809, %3770
  br label %3772

3772:                                             ; preds = %3771
  call void @llvm.lifetime.start.p0(i64 1, ptr %224) #5
  store i8 0, ptr %224, align 1, !tbaa !9
  %3773 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3774 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3773, ptr noundef nonnull align 1 dereferenceable(1) %224)
          to label %3775 unwind label %3804

3775:                                             ; preds = %3772
  call void @llvm.lifetime.end.p0(i64 1, ptr %224) #5
  %3776 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %3777 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3776)
          to label %3778 unwind label %1024

3778:                                             ; preds = %3775
  %3779 = load i8, ptr %3777, align 1, !tbaa !9, !range !11, !noundef !12
  %3780 = trunc i8 %3779 to i1
  br i1 %3780, label %3781, label %3808

3781:                                             ; preds = %3778
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3782 unwind label %1024

3782:                                             ; preds = %3781
  br label %3810

3783:                                             ; preds = %3746
  %3784 = landingpad { ptr, i32 }
          cleanup
  %3785 = extractvalue { ptr, i32 } %3784, 0
  store ptr %3785, ptr %5, align 8
  %3786 = extractvalue { ptr, i32 } %3784, 1
  store i32 %3786, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %220) #5
  br label %11991

3787:                                             ; preds = %3750
  %3788 = landingpad { ptr, i32 }
          cleanup
  %3789 = extractvalue { ptr, i32 } %3788, 0
  store ptr %3789, ptr %5, align 8
  %3790 = extractvalue { ptr, i32 } %3788, 1
  store i32 %3790, ptr %6, align 4
  br label %3795

3791:                                             ; preds = %3753, %3751
  %3792 = landingpad { ptr, i32 }
          cleanup
  %3793 = extractvalue { ptr, i32 } %3792, 0
  store ptr %3793, ptr %5, align 8
  %3794 = extractvalue { ptr, i32 } %3792, 1
  store i32 %3794, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %221) #5
  br label %3795

3795:                                             ; preds = %3791, %3787
  call void @llvm.lifetime.end.p0(i64 24, ptr %221) #5
  br label %11991

3796:                                             ; preds = %3763
  %3797 = landingpad { ptr, i32 }
          cleanup
  %3798 = extractvalue { ptr, i32 } %3797, 0
  store ptr %3798, ptr %5, align 8
  %3799 = extractvalue { ptr, i32 } %3797, 1
  store i32 %3799, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %222) #5
  br label %11991

3800:                                             ; preds = %3766
  %3801 = landingpad { ptr, i32 }
          cleanup
  %3802 = extractvalue { ptr, i32 } %3801, 0
  store ptr %3802, ptr %5, align 8
  %3803 = extractvalue { ptr, i32 } %3801, 1
  store i32 %3803, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %223) #5
  br label %11991

3804:                                             ; preds = %3772
  %3805 = landingpad { ptr, i32 }
          cleanup
  %3806 = extractvalue { ptr, i32 } %3805, 0
  store ptr %3806, ptr %5, align 8
  %3807 = extractvalue { ptr, i32 } %3805, 1
  store i32 %3807, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %224) #5
  br label %11991

3808:                                             ; preds = %3778
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3809 unwind label %1024

3809:                                             ; preds = %3808
  br label %3771, !llvm.loop !53

3810:                                             ; preds = %3782
  call void @llvm.lifetime.start.p0(i64 24, ptr %225) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %225, i32 noundef 12)
          to label %3811 unwind label %3843

3811:                                             ; preds = %3810
  %3812 = 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) %225)
          to label %3813 unwind label %3847

3813:                                             ; preds = %3811
  %3814 = 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) %3812)
          to label %3815 unwind label %3847

3815:                                             ; preds = %3813
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %225) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %225) #5
  %3816 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %3817 unwind label %1024

3817:                                             ; preds = %3815
  %3818 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %3819 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3818, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3820 unwind label %1024

3820:                                             ; preds = %3817
  %3821 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %3822 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3821, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %3823 unwind label %1024

3823:                                             ; preds = %3820
  call void @llvm.lifetime.start.p0(i64 1, ptr %226) #5
  store i8 0, ptr %226, align 1, !tbaa !9
  %3824 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %3825 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3824, ptr noundef nonnull align 1 dereferenceable(1) %226)
          to label %3826 unwind label %3852

3826:                                             ; preds = %3823
  call void @llvm.lifetime.end.p0(i64 1, ptr %226) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %227) #5
  store i8 1, ptr %227, align 1, !tbaa !9
  %3827 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3828 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3827, ptr noundef nonnull align 1 dereferenceable(1) %227)
          to label %3829 unwind label %3856

3829:                                             ; preds = %3826
  call void @llvm.lifetime.end.p0(i64 1, ptr %227) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3830 unwind label %1024

3830:                                             ; preds = %3829
  br label %3831

3831:                                             ; preds = %3865, %3830
  br label %3832

3832:                                             ; preds = %3831
  call void @llvm.lifetime.start.p0(i64 1, ptr %228) #5
  store i8 0, ptr %228, align 1, !tbaa !9
  %3833 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3834 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3833, ptr noundef nonnull align 1 dereferenceable(1) %228)
          to label %3835 unwind label %3860

3835:                                             ; preds = %3832
  call void @llvm.lifetime.end.p0(i64 1, ptr %228) #5
  %3836 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %3837 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3836)
          to label %3838 unwind label %1024

3838:                                             ; preds = %3835
  %3839 = load i8, ptr %3837, align 1, !tbaa !9, !range !11, !noundef !12
  %3840 = trunc i8 %3839 to i1
  br i1 %3840, label %3841, label %3864

3841:                                             ; preds = %3838
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3842 unwind label %1024

3842:                                             ; preds = %3841
  br label %3866

3843:                                             ; preds = %3810
  %3844 = landingpad { ptr, i32 }
          cleanup
  %3845 = extractvalue { ptr, i32 } %3844, 0
  store ptr %3845, ptr %5, align 8
  %3846 = extractvalue { ptr, i32 } %3844, 1
  store i32 %3846, ptr %6, align 4
  br label %3851

3847:                                             ; preds = %3813, %3811
  %3848 = landingpad { ptr, i32 }
          cleanup
  %3849 = extractvalue { ptr, i32 } %3848, 0
  store ptr %3849, ptr %5, align 8
  %3850 = extractvalue { ptr, i32 } %3848, 1
  store i32 %3850, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %225) #5
  br label %3851

3851:                                             ; preds = %3847, %3843
  call void @llvm.lifetime.end.p0(i64 24, ptr %225) #5
  br label %11991

3852:                                             ; preds = %3823
  %3853 = landingpad { ptr, i32 }
          cleanup
  %3854 = extractvalue { ptr, i32 } %3853, 0
  store ptr %3854, ptr %5, align 8
  %3855 = extractvalue { ptr, i32 } %3853, 1
  store i32 %3855, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %226) #5
  br label %11991

3856:                                             ; preds = %3826
  %3857 = landingpad { ptr, i32 }
          cleanup
  %3858 = extractvalue { ptr, i32 } %3857, 0
  store ptr %3858, ptr %5, align 8
  %3859 = extractvalue { ptr, i32 } %3857, 1
  store i32 %3859, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %227) #5
  br label %11991

3860:                                             ; preds = %3832
  %3861 = landingpad { ptr, i32 }
          cleanup
  %3862 = extractvalue { ptr, i32 } %3861, 0
  store ptr %3862, ptr %5, align 8
  %3863 = extractvalue { ptr, i32 } %3861, 1
  store i32 %3863, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %228) #5
  br label %11991

3864:                                             ; preds = %3838
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3865 unwind label %1024

3865:                                             ; preds = %3864
  br label %3831, !llvm.loop !54

3866:                                             ; preds = %3842
  %3867 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %3868 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3867, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %3869 unwind label %1024

3869:                                             ; preds = %3866
  call void @llvm.lifetime.start.p0(i64 24, ptr %229) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %230) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %230, i32 noundef 0)
          to label %3870 unwind label %3897

3870:                                             ; preds = %3869
  %3871 = 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) %230)
          to label %3872 unwind label %3901

3872:                                             ; preds = %3870
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %229, ptr noundef nonnull align 1 dereferenceable(1) %3871)
          to label %3873 unwind label %3901

3873:                                             ; preds = %3872
  %3874 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %3875 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3874, ptr noundef nonnull align 8 dereferenceable(24) %229)
          to label %3876 unwind label %3905

3876:                                             ; preds = %3873
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %229) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %230) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %230) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %229) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %231) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %231, i32 noundef 1)
          to label %3877 unwind label %3911

3877:                                             ; preds = %3876
  %3878 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %3879 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3878, ptr noundef nonnull align 8 dereferenceable(24) %231)
          to label %3880 unwind label %3915

3880:                                             ; preds = %3877
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %231) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %231) #5
  %3881 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %3882 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3881, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %3883 unwind label %1024

3883:                                             ; preds = %3880
  call void @llvm.lifetime.start.p0(i64 1, ptr %232) #5
  store i8 1, ptr %232, align 1, !tbaa !9
  %3884 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %3885 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3884, ptr noundef nonnull align 1 dereferenceable(1) %232)
          to label %3886 unwind label %3920

3886:                                             ; preds = %3883
  call void @llvm.lifetime.end.p0(i64 1, ptr %232) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3887 unwind label %1024

3887:                                             ; preds = %3886
  br label %3888

3888:                                             ; preds = %3896, %3887
  %3889 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %3890 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3889)
          to label %3891 unwind label %1024

3891:                                             ; preds = %3888
  %3892 = load i8, ptr %3890, align 1, !tbaa !9, !range !11, !noundef !12
  %3893 = trunc i8 %3892 to i1
  %3894 = xor i1 %3893, true
  br i1 %3894, label %3895, label %3924

3895:                                             ; preds = %3891
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3896 unwind label %1024

3896:                                             ; preds = %3895
  br label %3888, !llvm.loop !55

3897:                                             ; preds = %3869
  %3898 = landingpad { ptr, i32 }
          cleanup
  %3899 = extractvalue { ptr, i32 } %3898, 0
  store ptr %3899, ptr %5, align 8
  %3900 = extractvalue { ptr, i32 } %3898, 1
  store i32 %3900, ptr %6, align 4
  br label %3910

3901:                                             ; preds = %3872, %3870
  %3902 = landingpad { ptr, i32 }
          cleanup
  %3903 = extractvalue { ptr, i32 } %3902, 0
  store ptr %3903, ptr %5, align 8
  %3904 = extractvalue { ptr, i32 } %3902, 1
  store i32 %3904, ptr %6, align 4
  br label %3909

3905:                                             ; preds = %3873
  %3906 = landingpad { ptr, i32 }
          cleanup
  %3907 = extractvalue { ptr, i32 } %3906, 0
  store ptr %3907, ptr %5, align 8
  %3908 = extractvalue { ptr, i32 } %3906, 1
  store i32 %3908, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %229) #5
  br label %3909

3909:                                             ; preds = %3905, %3901
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %230) #5
  br label %3910

3910:                                             ; preds = %3909, %3897
  call void @llvm.lifetime.end.p0(i64 24, ptr %230) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %229) #5
  br label %11991

3911:                                             ; preds = %3876
  %3912 = landingpad { ptr, i32 }
          cleanup
  %3913 = extractvalue { ptr, i32 } %3912, 0
  store ptr %3913, ptr %5, align 8
  %3914 = extractvalue { ptr, i32 } %3912, 1
  store i32 %3914, ptr %6, align 4
  br label %3919

3915:                                             ; preds = %3877
  %3916 = landingpad { ptr, i32 }
          cleanup
  %3917 = extractvalue { ptr, i32 } %3916, 0
  store ptr %3917, ptr %5, align 8
  %3918 = extractvalue { ptr, i32 } %3916, 1
  store i32 %3918, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %231) #5
  br label %3919

3919:                                             ; preds = %3915, %3911
  call void @llvm.lifetime.end.p0(i64 24, ptr %231) #5
  br label %11991

3920:                                             ; preds = %3883
  %3921 = landingpad { ptr, i32 }
          cleanup
  %3922 = extractvalue { ptr, i32 } %3921, 0
  store ptr %3922, ptr %5, align 8
  %3923 = extractvalue { ptr, i32 } %3921, 1
  store i32 %3923, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %232) #5
  br label %11991

3924:                                             ; preds = %3891
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3925 unwind label %1024

3925:                                             ; preds = %3924
  call void @llvm.lifetime.start.p0(i64 1, ptr %233) #5
  store i8 0, ptr %233, align 1, !tbaa !9
  %3926 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %3927 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3926, ptr noundef nonnull align 1 dereferenceable(1) %233)
          to label %3928 unwind label %3930

3928:                                             ; preds = %3925
  call void @llvm.lifetime.end.p0(i64 1, ptr %233) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3929 unwind label %1024

3929:                                             ; preds = %3928
  br label %3934

3930:                                             ; preds = %3925
  %3931 = landingpad { ptr, i32 }
          cleanup
  %3932 = extractvalue { ptr, i32 } %3931, 0
  store ptr %3932, ptr %5, align 8
  %3933 = extractvalue { ptr, i32 } %3931, 1
  store i32 %3933, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %233) #5
  br label %11991

3934:                                             ; preds = %3929, %3554
  br label %11889

3935:                                             ; preds = %2767
  %3936 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %3937 unwind label %1024

3937:                                             ; preds = %3935
  %3938 = icmp ne i64 %3936, 3
  br i1 %3938, label %3943, label %3939

3939:                                             ; preds = %3937
  %3940 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %3941 unwind label %1024

3941:                                             ; preds = %3939
  %3942 = icmp eq i64 %3940, 0
  br i1 %3942, label %3943, label %3947

3943:                                             ; preds = %3941, %3937
  %3944 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %3945 unwind label %1024

3945:                                             ; preds = %3943
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3946 unwind label %1024

3946:                                             ; preds = %3945
  br label %4160

3947:                                             ; preds = %3941
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3948 unwind label %1024

3948:                                             ; preds = %3947
  %3949 = 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 %3950 unwind label %1024

3950:                                             ; preds = %3948
  %3951 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %3952 = trunc i8 %3951 to i1
  %3953 = zext i1 %3952 to i8
  store i8 %3953, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %234) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %234, i32 noundef 10)
          to label %3954 unwind label %3989

3954:                                             ; preds = %3950
  %3955 = 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) %234)
          to label %3956 unwind label %3993

3956:                                             ; preds = %3954
  %3957 = 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) %3955)
          to label %3958 unwind label %3993

3958:                                             ; preds = %3956
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %234) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %234) #5
  %3959 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %3960 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3959, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3961 unwind label %1024

3961:                                             ; preds = %3958
  %3962 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %3963 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3962, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %3964 unwind label %1024

3964:                                             ; preds = %3961
  call void @llvm.lifetime.start.p0(i64 1, ptr %235) #5
  store i8 1, ptr %235, align 1, !tbaa !9
  %3965 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %3966 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3965, ptr noundef nonnull align 1 dereferenceable(1) %235)
          to label %3967 unwind label %3998

3967:                                             ; preds = %3964
  call void @llvm.lifetime.end.p0(i64 1, ptr %235) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %236) #5
  store i8 1, ptr %236, align 1, !tbaa !9
  %3968 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3969 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3968, ptr noundef nonnull align 1 dereferenceable(1) %236)
          to label %3970 unwind label %4002

3970:                                             ; preds = %3967
  call void @llvm.lifetime.end.p0(i64 1, ptr %236) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3971 unwind label %1024

3971:                                             ; preds = %3970
  br label %3972

3972:                                             ; preds = %4011, %3971
  br label %3973

3973:                                             ; preds = %3972
  %3974 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %3975 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %3974)
          to label %3976 unwind label %1024

3976:                                             ; preds = %3973
  %3977 = 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) %3975)
          to label %3978 unwind label %1024

3978:                                             ; preds = %3976
  call void @llvm.lifetime.start.p0(i64 1, ptr %237) #5
  store i8 0, ptr %237, align 1, !tbaa !9
  %3979 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %3980 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3979, ptr noundef nonnull align 1 dereferenceable(1) %237)
          to label %3981 unwind label %4006

3981:                                             ; preds = %3978
  call void @llvm.lifetime.end.p0(i64 1, ptr %237) #5
  %3982 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %3983 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3982)
          to label %3984 unwind label %1024

3984:                                             ; preds = %3981
  %3985 = load i8, ptr %3983, align 1, !tbaa !9, !range !11, !noundef !12
  %3986 = trunc i8 %3985 to i1
  br i1 %3986, label %3987, label %4010

3987:                                             ; preds = %3984
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %3988 unwind label %1024

3988:                                             ; preds = %3987
  br label %4012

3989:                                             ; preds = %3950
  %3990 = landingpad { ptr, i32 }
          cleanup
  %3991 = extractvalue { ptr, i32 } %3990, 0
  store ptr %3991, ptr %5, align 8
  %3992 = extractvalue { ptr, i32 } %3990, 1
  store i32 %3992, ptr %6, align 4
  br label %3997

3993:                                             ; preds = %3956, %3954
  %3994 = landingpad { ptr, i32 }
          cleanup
  %3995 = extractvalue { ptr, i32 } %3994, 0
  store ptr %3995, ptr %5, align 8
  %3996 = extractvalue { ptr, i32 } %3994, 1
  store i32 %3996, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %234) #5
  br label %3997

3997:                                             ; preds = %3993, %3989
  call void @llvm.lifetime.end.p0(i64 24, ptr %234) #5
  br label %11991

3998:                                             ; preds = %3964
  %3999 = landingpad { ptr, i32 }
          cleanup
  %4000 = extractvalue { ptr, i32 } %3999, 0
  store ptr %4000, ptr %5, align 8
  %4001 = extractvalue { ptr, i32 } %3999, 1
  store i32 %4001, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %235) #5
  br label %11991

4002:                                             ; preds = %3967
  %4003 = landingpad { ptr, i32 }
          cleanup
  %4004 = extractvalue { ptr, i32 } %4003, 0
  store ptr %4004, ptr %5, align 8
  %4005 = extractvalue { ptr, i32 } %4003, 1
  store i32 %4005, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %236) #5
  br label %11991

4006:                                             ; preds = %3978
  %4007 = landingpad { ptr, i32 }
          cleanup
  %4008 = extractvalue { ptr, i32 } %4007, 0
  store ptr %4008, ptr %5, align 8
  %4009 = extractvalue { ptr, i32 } %4007, 1
  store i32 %4009, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %237) #5
  br label %11991

4010:                                             ; preds = %3984
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4011 unwind label %1024

4011:                                             ; preds = %4010
  br label %3972, !llvm.loop !56

4012:                                             ; preds = %3988
  %4013 = 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 %4014 unwind label %1024

4014:                                             ; preds = %4012
  %4015 = 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) %4013)
          to label %4016 unwind label %1024

4016:                                             ; preds = %4014
  %4017 = 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 %4018 unwind label %1024

4018:                                             ; preds = %4016
  %4019 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %4017)
          to label %4020 unwind label %1024

4020:                                             ; preds = %4018
  %4021 = icmp eq i64 %4019, 1
  br i1 %4021, label %4022, label %4061

4022:                                             ; preds = %4020
  call void @llvm.lifetime.start.p0(i64 24, ptr %238) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %238, i32 noundef 2)
          to label %4023 unwind label %4043

4023:                                             ; preds = %4022
  %4024 = 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 %4025 unwind label %4047

4025:                                             ; preds = %4023
  %4026 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %238, ptr noundef nonnull align 8 dereferenceable(8) %4024)
          to label %4027 unwind label %4047

4027:                                             ; preds = %4025
  %4028 = 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) %4026)
          to label %4029 unwind label %4047

4029:                                             ; preds = %4027
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %238) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %238) #5
  %4030 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 10)
          to label %4031 unwind label %1024

4031:                                             ; preds = %4029
  call void @llvm.lifetime.start.p0(i64 24, ptr %239) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %239, i32 noundef 4)
          to label %4032 unwind label %4052

4032:                                             ; preds = %4031
  %4033 = 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 %4034 unwind label %4056

4034:                                             ; preds = %4032
  %4035 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %239, ptr noundef nonnull align 8 dereferenceable(8) %4033)
          to label %4036 unwind label %4056

4036:                                             ; preds = %4034
  %4037 = 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) %4035)
          to label %4038 unwind label %4056

4038:                                             ; preds = %4036
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %239) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %239) #5
  %4039 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 9)
          to label %4040 unwind label %1024

4040:                                             ; preds = %4038
  %4041 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 272)
          to label %4042 unwind label %1024

4042:                                             ; preds = %4040
  br label %4100

4043:                                             ; preds = %4022
  %4044 = landingpad { ptr, i32 }
          cleanup
  %4045 = extractvalue { ptr, i32 } %4044, 0
  store ptr %4045, ptr %5, align 8
  %4046 = extractvalue { ptr, i32 } %4044, 1
  store i32 %4046, ptr %6, align 4
  br label %4051

4047:                                             ; preds = %4027, %4025, %4023
  %4048 = landingpad { ptr, i32 }
          cleanup
  %4049 = extractvalue { ptr, i32 } %4048, 0
  store ptr %4049, ptr %5, align 8
  %4050 = extractvalue { ptr, i32 } %4048, 1
  store i32 %4050, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %238) #5
  br label %4051

4051:                                             ; preds = %4047, %4043
  call void @llvm.lifetime.end.p0(i64 24, ptr %238) #5
  br label %11991

4052:                                             ; preds = %4031
  %4053 = landingpad { ptr, i32 }
          cleanup
  %4054 = extractvalue { ptr, i32 } %4053, 0
  store ptr %4054, ptr %5, align 8
  %4055 = extractvalue { ptr, i32 } %4053, 1
  store i32 %4055, ptr %6, align 4
  br label %4060

4056:                                             ; preds = %4036, %4034, %4032
  %4057 = landingpad { ptr, i32 }
          cleanup
  %4058 = extractvalue { ptr, i32 } %4057, 0
  store ptr %4058, ptr %5, align 8
  %4059 = extractvalue { ptr, i32 } %4057, 1
  store i32 %4059, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %239) #5
  br label %4060

4060:                                             ; preds = %4056, %4052
  call void @llvm.lifetime.end.p0(i64 24, ptr %239) #5
  br label %11991

4061:                                             ; preds = %4020
  call void @llvm.lifetime.start.p0(i64 24, ptr %240) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %240, i32 noundef 3)
          to label %4062 unwind label %4082

4062:                                             ; preds = %4061
  %4063 = 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 %4064 unwind label %4086

4064:                                             ; preds = %4062
  %4065 = 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) %4063)
          to label %4066 unwind label %4086

4066:                                             ; preds = %4064
  %4067 = 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) %4065)
          to label %4068 unwind label %4086

4068:                                             ; preds = %4066
  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
  %4069 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 11)
          to label %4070 unwind label %1024

4070:                                             ; preds = %4068
  call void @llvm.lifetime.start.p0(i64 24, ptr %241) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %241, i32 noundef 5)
          to label %4071 unwind label %4091

4071:                                             ; preds = %4070
  %4072 = 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 %4073 unwind label %4095

4073:                                             ; preds = %4071
  %4074 = 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) %4072)
          to label %4075 unwind label %4095

4075:                                             ; preds = %4073
  %4076 = 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) %4074)
          to label %4077 unwind label %4095

4077:                                             ; preds = %4075
  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
  %4078 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 17)
          to label %4079 unwind label %1024

4079:                                             ; preds = %4077
  %4080 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 288)
          to label %4081 unwind label %1024

4081:                                             ; preds = %4079
  br label %4100

4082:                                             ; preds = %4061
  %4083 = landingpad { ptr, i32 }
          cleanup
  %4084 = extractvalue { ptr, i32 } %4083, 0
  store ptr %4084, ptr %5, align 8
  %4085 = extractvalue { ptr, i32 } %4083, 1
  store i32 %4085, ptr %6, align 4
  br label %4090

4086:                                             ; preds = %4066, %4064, %4062
  %4087 = landingpad { ptr, i32 }
          cleanup
  %4088 = extractvalue { ptr, i32 } %4087, 0
  store ptr %4088, ptr %5, align 8
  %4089 = extractvalue { ptr, i32 } %4087, 1
  store i32 %4089, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %240) #5
  br label %4090

4090:                                             ; preds = %4086, %4082
  call void @llvm.lifetime.end.p0(i64 24, ptr %240) #5
  br label %11991

4091:                                             ; preds = %4070
  %4092 = landingpad { ptr, i32 }
          cleanup
  %4093 = extractvalue { ptr, i32 } %4092, 0
  store ptr %4093, ptr %5, align 8
  %4094 = extractvalue { ptr, i32 } %4092, 1
  store i32 %4094, ptr %6, align 4
  br label %4099

4095:                                             ; preds = %4075, %4073, %4071
  %4096 = landingpad { ptr, i32 }
          cleanup
  %4097 = extractvalue { ptr, i32 } %4096, 0
  store ptr %4097, ptr %5, align 8
  %4098 = extractvalue { ptr, i32 } %4096, 1
  store i32 %4098, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %241) #5
  br label %4099

4099:                                             ; preds = %4095, %4091
  call void @llvm.lifetime.end.p0(i64 24, ptr %241) #5
  br label %11991

4100:                                             ; preds = %4081, %4042
  call void @llvm.lifetime.start.p0(i64 24, ptr %242) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %242, i32 noundef 11)
          to label %4101 unwind label %4136

4101:                                             ; preds = %4100
  %4102 = 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) %242)
          to label %4103 unwind label %4140

4103:                                             ; preds = %4101
  %4104 = 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) %4102)
          to label %4105 unwind label %4140

4105:                                             ; preds = %4103
  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
  %4106 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %4107 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4106, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4108 unwind label %1024

4108:                                             ; preds = %4105
  %4109 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %4110 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4109, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4111 unwind label %1024

4111:                                             ; preds = %4108
  call void @llvm.lifetime.start.p0(i64 1, ptr %243) #5
  store i8 1, ptr %243, align 1, !tbaa !9
  %4112 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %4113 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4112, ptr noundef nonnull align 1 dereferenceable(1) %243)
          to label %4114 unwind label %4145

4114:                                             ; preds = %4111
  call void @llvm.lifetime.end.p0(i64 1, ptr %243) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %244) #5
  store i8 1, ptr %244, align 1, !tbaa !9
  %4115 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4116 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4115, ptr noundef nonnull align 1 dereferenceable(1) %244)
          to label %4117 unwind label %4149

4117:                                             ; preds = %4114
  call void @llvm.lifetime.end.p0(i64 1, ptr %244) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4118 unwind label %1024

4118:                                             ; preds = %4117
  br label %4119

4119:                                             ; preds = %4158, %4118
  br label %4120

4120:                                             ; preds = %4119
  %4121 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %4122 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4121)
          to label %4123 unwind label %1024

4123:                                             ; preds = %4120
  %4124 = 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) %4122)
          to label %4125 unwind label %1024

4125:                                             ; preds = %4123
  call void @llvm.lifetime.start.p0(i64 1, ptr %245) #5
  store i8 0, ptr %245, align 1, !tbaa !9
  %4126 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4127 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4126, ptr noundef nonnull align 1 dereferenceable(1) %245)
          to label %4128 unwind label %4153

4128:                                             ; preds = %4125
  call void @llvm.lifetime.end.p0(i64 1, ptr %245) #5
  %4129 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %4130 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4129)
          to label %4131 unwind label %1024

4131:                                             ; preds = %4128
  %4132 = load i8, ptr %4130, align 1, !tbaa !9, !range !11, !noundef !12
  %4133 = trunc i8 %4132 to i1
  br i1 %4133, label %4134, label %4157

4134:                                             ; preds = %4131
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4135 unwind label %1024

4135:                                             ; preds = %4134
  br label %4159

4136:                                             ; preds = %4100
  %4137 = landingpad { ptr, i32 }
          cleanup
  %4138 = extractvalue { ptr, i32 } %4137, 0
  store ptr %4138, ptr %5, align 8
  %4139 = extractvalue { ptr, i32 } %4137, 1
  store i32 %4139, ptr %6, align 4
  br label %4144

4140:                                             ; preds = %4103, %4101
  %4141 = landingpad { ptr, i32 }
          cleanup
  %4142 = extractvalue { ptr, i32 } %4141, 0
  store ptr %4142, ptr %5, align 8
  %4143 = extractvalue { ptr, i32 } %4141, 1
  store i32 %4143, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %242) #5
  br label %4144

4144:                                             ; preds = %4140, %4136
  call void @llvm.lifetime.end.p0(i64 24, ptr %242) #5
  br label %11991

4145:                                             ; preds = %4111
  %4146 = landingpad { ptr, i32 }
          cleanup
  %4147 = extractvalue { ptr, i32 } %4146, 0
  store ptr %4147, ptr %5, align 8
  %4148 = extractvalue { ptr, i32 } %4146, 1
  store i32 %4148, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %243) #5
  br label %11991

4149:                                             ; preds = %4114
  %4150 = landingpad { ptr, i32 }
          cleanup
  %4151 = extractvalue { ptr, i32 } %4150, 0
  store ptr %4151, ptr %5, align 8
  %4152 = extractvalue { ptr, i32 } %4150, 1
  store i32 %4152, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %244) #5
  br label %11991

4153:                                             ; preds = %4125
  %4154 = landingpad { ptr, i32 }
          cleanup
  %4155 = extractvalue { ptr, i32 } %4154, 0
  store ptr %4155, ptr %5, align 8
  %4156 = extractvalue { ptr, i32 } %4154, 1
  store i32 %4156, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %245) #5
  br label %11991

4157:                                             ; preds = %4131
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4158 unwind label %1024

4158:                                             ; preds = %4157
  br label %4119, !llvm.loop !57

4159:                                             ; preds = %4135
  br label %4160

4160:                                             ; preds = %4159, %3946
  %4161 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %4162 unwind label %1024

4162:                                             ; preds = %4160
  %4163 = trunc i64 %4161 to i32
  %4164 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi32EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %36, i32 noundef %4163)
          to label %4165 unwind label %1024

4165:                                             ; preds = %4162
  %4166 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %36)
          to label %4167 unwind label %1024

4167:                                             ; preds = %4165
  %4168 = trunc i64 %4166 to i32
  switch i32 %4168, label %5064 [
    i32 1, label %4169
    i32 2, label %4274
    i32 3, label %4379
    i32 4, label %4483
  ]

4169:                                             ; preds = %4167
  store i8 1, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %246) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %246, i32 noundef 0)
          to label %4170 unwind label %4205

4170:                                             ; preds = %4169
  %4171 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %246, ptr noundef nonnull align 8 dereferenceable(8) %25)
          to label %4172 unwind label %4209

4172:                                             ; preds = %4170
  %4173 = 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) %4171)
          to label %4174 unwind label %4209

4174:                                             ; preds = %4172
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %246) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %246) #5
  %4175 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %4176 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4175, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4177 unwind label %1024

4177:                                             ; preds = %4174
  %4178 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %4179 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4178, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4180 unwind label %1024

4180:                                             ; preds = %4177
  call void @llvm.lifetime.start.p0(i64 1, ptr %247) #5
  store i8 1, ptr %247, align 1, !tbaa !9
  %4181 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %4182 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4181, ptr noundef nonnull align 1 dereferenceable(1) %247)
          to label %4183 unwind label %4214

4183:                                             ; preds = %4180
  call void @llvm.lifetime.end.p0(i64 1, ptr %247) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %248) #5
  store i8 1, ptr %248, align 1, !tbaa !9
  %4184 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4185 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4184, ptr noundef nonnull align 1 dereferenceable(1) %248)
          to label %4186 unwind label %4218

4186:                                             ; preds = %4183
  call void @llvm.lifetime.end.p0(i64 1, ptr %248) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4187 unwind label %1024

4187:                                             ; preds = %4186
  br label %4188

4188:                                             ; preds = %4227, %4187
  br label %4189

4189:                                             ; preds = %4188
  %4190 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %4191 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4190)
          to label %4192 unwind label %1024

4192:                                             ; preds = %4189
  %4193 = 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) %4191)
          to label %4194 unwind label %1024

4194:                                             ; preds = %4192
  call void @llvm.lifetime.start.p0(i64 1, ptr %249) #5
  store i8 0, ptr %249, align 1, !tbaa !9
  %4195 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4196 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4195, ptr noundef nonnull align 1 dereferenceable(1) %249)
          to label %4197 unwind label %4222

4197:                                             ; preds = %4194
  call void @llvm.lifetime.end.p0(i64 1, ptr %249) #5
  %4198 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %4199 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4198)
          to label %4200 unwind label %1024

4200:                                             ; preds = %4197
  %4201 = load i8, ptr %4199, align 1, !tbaa !9, !range !11, !noundef !12
  %4202 = trunc i8 %4201 to i1
  br i1 %4202, label %4203, label %4226

4203:                                             ; preds = %4200
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4204 unwind label %1024

4204:                                             ; preds = %4203
  br label %4228

4205:                                             ; preds = %4169
  %4206 = landingpad { ptr, i32 }
          cleanup
  %4207 = extractvalue { ptr, i32 } %4206, 0
  store ptr %4207, ptr %5, align 8
  %4208 = extractvalue { ptr, i32 } %4206, 1
  store i32 %4208, ptr %6, align 4
  br label %4213

4209:                                             ; preds = %4172, %4170
  %4210 = landingpad { ptr, i32 }
          cleanup
  %4211 = extractvalue { ptr, i32 } %4210, 0
  store ptr %4211, ptr %5, align 8
  %4212 = extractvalue { ptr, i32 } %4210, 1
  store i32 %4212, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %246) #5
  br label %4213

4213:                                             ; preds = %4209, %4205
  call void @llvm.lifetime.end.p0(i64 24, ptr %246) #5
  br label %11991

4214:                                             ; preds = %4180
  %4215 = landingpad { ptr, i32 }
          cleanup
  %4216 = extractvalue { ptr, i32 } %4215, 0
  store ptr %4216, ptr %5, align 8
  %4217 = extractvalue { ptr, i32 } %4215, 1
  store i32 %4217, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %247) #5
  br label %11991

4218:                                             ; preds = %4183
  %4219 = landingpad { ptr, i32 }
          cleanup
  %4220 = extractvalue { ptr, i32 } %4219, 0
  store ptr %4220, ptr %5, align 8
  %4221 = extractvalue { ptr, i32 } %4219, 1
  store i32 %4221, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %248) #5
  br label %11991

4222:                                             ; preds = %4194
  %4223 = landingpad { ptr, i32 }
          cleanup
  %4224 = extractvalue { ptr, i32 } %4223, 0
  store ptr %4224, ptr %5, align 8
  %4225 = extractvalue { ptr, i32 } %4223, 1
  store i32 %4225, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %249) #5
  br label %11991

4226:                                             ; preds = %4200
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4227 unwind label %1024

4227:                                             ; preds = %4226
  br label %4188, !llvm.loop !58

4228:                                             ; preds = %4204
  %4229 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %4230 unwind label %1024

4230:                                             ; preds = %4228
  %4231 = or i64 %4229, 2
  %4232 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %3, i64 noundef %4231)
          to label %4233 unwind label %1024

4233:                                             ; preds = %4230
  %4234 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %4235 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4234, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4236 unwind label %1024

4236:                                             ; preds = %4233
  %4237 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %4238 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4237, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %4239 unwind label %1024

4239:                                             ; preds = %4236
  call void @llvm.lifetime.start.p0(i64 1, ptr %250) #5
  store i8 0, ptr %250, align 1, !tbaa !9
  %4240 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %4241 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4240, ptr noundef nonnull align 1 dereferenceable(1) %250)
          to label %4242 unwind label %4259

4242:                                             ; preds = %4239
  call void @llvm.lifetime.end.p0(i64 1, ptr %250) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %251) #5
  store i8 1, ptr %251, align 1, !tbaa !9
  %4243 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4244 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4243, ptr noundef nonnull align 1 dereferenceable(1) %251)
          to label %4245 unwind label %4263

4245:                                             ; preds = %4242
  call void @llvm.lifetime.end.p0(i64 1, ptr %251) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4246 unwind label %1024

4246:                                             ; preds = %4245
  br label %4247

4247:                                             ; preds = %4272, %4246
  br label %4248

4248:                                             ; preds = %4247
  call void @llvm.lifetime.start.p0(i64 1, ptr %252) #5
  store i8 0, ptr %252, align 1, !tbaa !9
  %4249 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4250 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4249, ptr noundef nonnull align 1 dereferenceable(1) %252)
          to label %4251 unwind label %4267

4251:                                             ; preds = %4248
  call void @llvm.lifetime.end.p0(i64 1, ptr %252) #5
  %4252 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %4253 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4252)
          to label %4254 unwind label %1024

4254:                                             ; preds = %4251
  %4255 = load i8, ptr %4253, align 1, !tbaa !9, !range !11, !noundef !12
  %4256 = trunc i8 %4255 to i1
  br i1 %4256, label %4257, label %4271

4257:                                             ; preds = %4254
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4258 unwind label %1024

4258:                                             ; preds = %4257
  br label %4273

4259:                                             ; preds = %4239
  %4260 = landingpad { ptr, i32 }
          cleanup
  %4261 = extractvalue { ptr, i32 } %4260, 0
  store ptr %4261, ptr %5, align 8
  %4262 = extractvalue { ptr, i32 } %4260, 1
  store i32 %4262, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %250) #5
  br label %11991

4263:                                             ; preds = %4242
  %4264 = landingpad { ptr, i32 }
          cleanup
  %4265 = extractvalue { ptr, i32 } %4264, 0
  store ptr %4265, ptr %5, align 8
  %4266 = extractvalue { ptr, i32 } %4264, 1
  store i32 %4266, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %251) #5
  br label %11991

4267:                                             ; preds = %4248
  %4268 = landingpad { ptr, i32 }
          cleanup
  %4269 = extractvalue { ptr, i32 } %4268, 0
  store ptr %4269, ptr %5, align 8
  %4270 = extractvalue { ptr, i32 } %4268, 1
  store i32 %4270, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %252) #5
  br label %11991

4271:                                             ; preds = %4254
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4272 unwind label %1024

4272:                                             ; preds = %4271
  br label %4247, !llvm.loop !59

4273:                                             ; preds = %4258
  br label %5068

4274:                                             ; preds = %4167
  store i8 1, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %253) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %253, i32 noundef 0)
          to label %4275 unwind label %4310

4275:                                             ; preds = %4274
  %4276 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %253, ptr noundef nonnull align 8 dereferenceable(8) %25)
          to label %4277 unwind label %4314

4277:                                             ; preds = %4275
  %4278 = 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) %4276)
          to label %4279 unwind label %4314

4279:                                             ; preds = %4277
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %253) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %253) #5
  %4280 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %4281 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4280, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4282 unwind label %1024

4282:                                             ; preds = %4279
  %4283 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %4284 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4283, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4285 unwind label %1024

4285:                                             ; preds = %4282
  call void @llvm.lifetime.start.p0(i64 1, ptr %254) #5
  store i8 1, ptr %254, align 1, !tbaa !9
  %4286 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %4287 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4286, ptr noundef nonnull align 1 dereferenceable(1) %254)
          to label %4288 unwind label %4319

4288:                                             ; preds = %4285
  call void @llvm.lifetime.end.p0(i64 1, ptr %254) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %255) #5
  store i8 1, ptr %255, align 1, !tbaa !9
  %4289 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4290 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4289, ptr noundef nonnull align 1 dereferenceable(1) %255)
          to label %4291 unwind label %4323

4291:                                             ; preds = %4288
  call void @llvm.lifetime.end.p0(i64 1, ptr %255) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4292 unwind label %1024

4292:                                             ; preds = %4291
  br label %4293

4293:                                             ; preds = %4332, %4292
  br label %4294

4294:                                             ; preds = %4293
  %4295 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %4296 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4295)
          to label %4297 unwind label %1024

4297:                                             ; preds = %4294
  %4298 = 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) %4296)
          to label %4299 unwind label %1024

4299:                                             ; preds = %4297
  call void @llvm.lifetime.start.p0(i64 1, ptr %256) #5
  store i8 0, ptr %256, align 1, !tbaa !9
  %4300 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4301 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4300, ptr noundef nonnull align 1 dereferenceable(1) %256)
          to label %4302 unwind label %4327

4302:                                             ; preds = %4299
  call void @llvm.lifetime.end.p0(i64 1, ptr %256) #5
  %4303 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %4304 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4303)
          to label %4305 unwind label %1024

4305:                                             ; preds = %4302
  %4306 = load i8, ptr %4304, align 1, !tbaa !9, !range !11, !noundef !12
  %4307 = trunc i8 %4306 to i1
  br i1 %4307, label %4308, label %4331

4308:                                             ; preds = %4305
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4309 unwind label %1024

4309:                                             ; preds = %4308
  br label %4333

4310:                                             ; preds = %4274
  %4311 = landingpad { ptr, i32 }
          cleanup
  %4312 = extractvalue { ptr, i32 } %4311, 0
  store ptr %4312, ptr %5, align 8
  %4313 = extractvalue { ptr, i32 } %4311, 1
  store i32 %4313, ptr %6, align 4
  br label %4318

4314:                                             ; preds = %4277, %4275
  %4315 = landingpad { ptr, i32 }
          cleanup
  %4316 = extractvalue { ptr, i32 } %4315, 0
  store ptr %4316, ptr %5, align 8
  %4317 = extractvalue { ptr, i32 } %4315, 1
  store i32 %4317, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %253) #5
  br label %4318

4318:                                             ; preds = %4314, %4310
  call void @llvm.lifetime.end.p0(i64 24, ptr %253) #5
  br label %11991

4319:                                             ; preds = %4285
  %4320 = landingpad { ptr, i32 }
          cleanup
  %4321 = extractvalue { ptr, i32 } %4320, 0
  store ptr %4321, ptr %5, align 8
  %4322 = extractvalue { ptr, i32 } %4320, 1
  store i32 %4322, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %254) #5
  br label %11991

4323:                                             ; preds = %4288
  %4324 = landingpad { ptr, i32 }
          cleanup
  %4325 = extractvalue { ptr, i32 } %4324, 0
  store ptr %4325, ptr %5, align 8
  %4326 = extractvalue { ptr, i32 } %4324, 1
  store i32 %4326, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %255) #5
  br label %11991

4327:                                             ; preds = %4299
  %4328 = landingpad { ptr, i32 }
          cleanup
  %4329 = extractvalue { ptr, i32 } %4328, 0
  store ptr %4329, ptr %5, align 8
  %4330 = extractvalue { ptr, i32 } %4328, 1
  store i32 %4330, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %256) #5
  br label %11991

4331:                                             ; preds = %4305
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4332 unwind label %1024

4332:                                             ; preds = %4331
  br label %4293, !llvm.loop !60

4333:                                             ; preds = %4309
  %4334 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %4335 unwind label %1024

4335:                                             ; preds = %4333
  %4336 = and i64 %4334, -3
  %4337 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %3, i64 noundef %4336)
          to label %4338 unwind label %1024

4338:                                             ; preds = %4335
  %4339 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %4340 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4339, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4341 unwind label %1024

4341:                                             ; preds = %4338
  %4342 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %4343 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4342, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %4344 unwind label %1024

4344:                                             ; preds = %4341
  call void @llvm.lifetime.start.p0(i64 1, ptr %257) #5
  store i8 0, ptr %257, align 1, !tbaa !9
  %4345 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %4346 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4345, ptr noundef nonnull align 1 dereferenceable(1) %257)
          to label %4347 unwind label %4364

4347:                                             ; preds = %4344
  call void @llvm.lifetime.end.p0(i64 1, ptr %257) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %258) #5
  store i8 1, ptr %258, align 1, !tbaa !9
  %4348 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4349 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4348, ptr noundef nonnull align 1 dereferenceable(1) %258)
          to label %4350 unwind label %4368

4350:                                             ; preds = %4347
  call void @llvm.lifetime.end.p0(i64 1, ptr %258) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4351 unwind label %1024

4351:                                             ; preds = %4350
  br label %4352

4352:                                             ; preds = %4377, %4351
  br label %4353

4353:                                             ; preds = %4352
  call void @llvm.lifetime.start.p0(i64 1, ptr %259) #5
  store i8 0, ptr %259, align 1, !tbaa !9
  %4354 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4355 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4354, ptr noundef nonnull align 1 dereferenceable(1) %259)
          to label %4356 unwind label %4372

4356:                                             ; preds = %4353
  call void @llvm.lifetime.end.p0(i64 1, ptr %259) #5
  %4357 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %4358 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4357)
          to label %4359 unwind label %1024

4359:                                             ; preds = %4356
  %4360 = load i8, ptr %4358, align 1, !tbaa !9, !range !11, !noundef !12
  %4361 = trunc i8 %4360 to i1
  br i1 %4361, label %4362, label %4376

4362:                                             ; preds = %4359
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4363 unwind label %1024

4363:                                             ; preds = %4362
  br label %4378

4364:                                             ; preds = %4344
  %4365 = landingpad { ptr, i32 }
          cleanup
  %4366 = extractvalue { ptr, i32 } %4365, 0
  store ptr %4366, ptr %5, align 8
  %4367 = extractvalue { ptr, i32 } %4365, 1
  store i32 %4367, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %257) #5
  br label %11991

4368:                                             ; preds = %4347
  %4369 = landingpad { ptr, i32 }
          cleanup
  %4370 = extractvalue { ptr, i32 } %4369, 0
  store ptr %4370, ptr %5, align 8
  %4371 = extractvalue { ptr, i32 } %4369, 1
  store i32 %4371, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %258) #5
  br label %11991

4372:                                             ; preds = %4353
  %4373 = landingpad { ptr, i32 }
          cleanup
  %4374 = extractvalue { ptr, i32 } %4373, 0
  store ptr %4374, ptr %5, align 8
  %4375 = extractvalue { ptr, i32 } %4373, 1
  store i32 %4375, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %259) #5
  br label %11991

4376:                                             ; preds = %4359
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4377 unwind label %1024

4377:                                             ; preds = %4376
  br label %4352, !llvm.loop !61

4378:                                             ; preds = %4363
  br label %5068

4379:                                             ; preds = %4167
  store i8 1, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %260) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %260, i32 noundef 12)
          to label %4380 unwind label %4415

4380:                                             ; preds = %4379
  %4381 = 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) %260)
          to label %4382 unwind label %4419

4382:                                             ; preds = %4380
  %4383 = 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) %4381)
          to label %4384 unwind label %4419

4384:                                             ; preds = %4382
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %260) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %260) #5
  %4385 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %4386 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4385, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4387 unwind label %1024

4387:                                             ; preds = %4384
  %4388 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %4389 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4388, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4390 unwind label %1024

4390:                                             ; preds = %4387
  call void @llvm.lifetime.start.p0(i64 1, ptr %261) #5
  store i8 1, ptr %261, align 1, !tbaa !9
  %4391 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %4392 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4391, ptr noundef nonnull align 1 dereferenceable(1) %261)
          to label %4393 unwind label %4424

4393:                                             ; preds = %4390
  call void @llvm.lifetime.end.p0(i64 1, ptr %261) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %262) #5
  store i8 1, ptr %262, align 1, !tbaa !9
  %4394 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4395 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4394, ptr noundef nonnull align 1 dereferenceable(1) %262)
          to label %4396 unwind label %4428

4396:                                             ; preds = %4393
  call void @llvm.lifetime.end.p0(i64 1, ptr %262) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4397 unwind label %1024

4397:                                             ; preds = %4396
  br label %4398

4398:                                             ; preds = %4437, %4397
  br label %4399

4399:                                             ; preds = %4398
  %4400 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %4401 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4400)
          to label %4402 unwind label %1024

4402:                                             ; preds = %4399
  %4403 = 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) %4401)
          to label %4404 unwind label %1024

4404:                                             ; preds = %4402
  call void @llvm.lifetime.start.p0(i64 1, ptr %263) #5
  store i8 0, ptr %263, align 1, !tbaa !9
  %4405 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4406 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4405, ptr noundef nonnull align 1 dereferenceable(1) %263)
          to label %4407 unwind label %4432

4407:                                             ; preds = %4404
  call void @llvm.lifetime.end.p0(i64 1, ptr %263) #5
  %4408 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %4409 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4408)
          to label %4410 unwind label %1024

4410:                                             ; preds = %4407
  %4411 = load i8, ptr %4409, align 1, !tbaa !9, !range !11, !noundef !12
  %4412 = trunc i8 %4411 to i1
  br i1 %4412, label %4413, label %4436

4413:                                             ; preds = %4410
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4414 unwind label %1024

4414:                                             ; preds = %4413
  br label %4438

4415:                                             ; preds = %4379
  %4416 = landingpad { ptr, i32 }
          cleanup
  %4417 = extractvalue { ptr, i32 } %4416, 0
  store ptr %4417, ptr %5, align 8
  %4418 = extractvalue { ptr, i32 } %4416, 1
  store i32 %4418, ptr %6, align 4
  br label %4423

4419:                                             ; preds = %4382, %4380
  %4420 = landingpad { ptr, i32 }
          cleanup
  %4421 = extractvalue { ptr, i32 } %4420, 0
  store ptr %4421, ptr %5, align 8
  %4422 = extractvalue { ptr, i32 } %4420, 1
  store i32 %4422, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %260) #5
  br label %4423

4423:                                             ; preds = %4419, %4415
  call void @llvm.lifetime.end.p0(i64 24, ptr %260) #5
  br label %11991

4424:                                             ; preds = %4390
  %4425 = landingpad { ptr, i32 }
          cleanup
  %4426 = extractvalue { ptr, i32 } %4425, 0
  store ptr %4426, ptr %5, align 8
  %4427 = extractvalue { ptr, i32 } %4425, 1
  store i32 %4427, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %261) #5
  br label %11991

4428:                                             ; preds = %4393
  %4429 = landingpad { ptr, i32 }
          cleanup
  %4430 = extractvalue { ptr, i32 } %4429, 0
  store ptr %4430, ptr %5, align 8
  %4431 = extractvalue { ptr, i32 } %4429, 1
  store i32 %4431, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %262) #5
  br label %11991

4432:                                             ; preds = %4404
  %4433 = landingpad { ptr, i32 }
          cleanup
  %4434 = extractvalue { ptr, i32 } %4433, 0
  store ptr %4434, ptr %5, align 8
  %4435 = extractvalue { ptr, i32 } %4433, 1
  store i32 %4435, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %263) #5
  br label %11991

4436:                                             ; preds = %4410
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4437 unwind label %1024

4437:                                             ; preds = %4436
  br label %4398, !llvm.loop !62

4438:                                             ; preds = %4414
  %4439 = 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 %4440 unwind label %1024

4440:                                             ; preds = %4438
  %4441 = 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 %4442 unwind label %1024

4442:                                             ; preds = %4440
  %4443 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %4444 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4443, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4445 unwind label %1024

4445:                                             ; preds = %4442
  %4446 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %4447 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4446, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %4448 unwind label %1024

4448:                                             ; preds = %4445
  call void @llvm.lifetime.start.p0(i64 1, ptr %264) #5
  store i8 0, ptr %264, align 1, !tbaa !9
  %4449 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %4450 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4449, ptr noundef nonnull align 1 dereferenceable(1) %264)
          to label %4451 unwind label %4468

4451:                                             ; preds = %4448
  call void @llvm.lifetime.end.p0(i64 1, ptr %264) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %265) #5
  store i8 1, ptr %265, align 1, !tbaa !9
  %4452 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4453 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4452, ptr noundef nonnull align 1 dereferenceable(1) %265)
          to label %4454 unwind label %4472

4454:                                             ; preds = %4451
  call void @llvm.lifetime.end.p0(i64 1, ptr %265) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4455 unwind label %1024

4455:                                             ; preds = %4454
  br label %4456

4456:                                             ; preds = %4481, %4455
  br label %4457

4457:                                             ; preds = %4456
  call void @llvm.lifetime.start.p0(i64 1, ptr %266) #5
  store i8 0, ptr %266, align 1, !tbaa !9
  %4458 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4459 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4458, ptr noundef nonnull align 1 dereferenceable(1) %266)
          to label %4460 unwind label %4476

4460:                                             ; preds = %4457
  call void @llvm.lifetime.end.p0(i64 1, ptr %266) #5
  %4461 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %4462 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4461)
          to label %4463 unwind label %1024

4463:                                             ; preds = %4460
  %4464 = load i8, ptr %4462, align 1, !tbaa !9, !range !11, !noundef !12
  %4465 = trunc i8 %4464 to i1
  br i1 %4465, label %4466, label %4480

4466:                                             ; preds = %4463
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4467 unwind label %1024

4467:                                             ; preds = %4466
  br label %4482

4468:                                             ; preds = %4448
  %4469 = landingpad { ptr, i32 }
          cleanup
  %4470 = extractvalue { ptr, i32 } %4469, 0
  store ptr %4470, ptr %5, align 8
  %4471 = extractvalue { ptr, i32 } %4469, 1
  store i32 %4471, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %264) #5
  br label %11991

4472:                                             ; preds = %4451
  %4473 = landingpad { ptr, i32 }
          cleanup
  %4474 = extractvalue { ptr, i32 } %4473, 0
  store ptr %4474, ptr %5, align 8
  %4475 = extractvalue { ptr, i32 } %4473, 1
  store i32 %4475, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %265) #5
  br label %11991

4476:                                             ; preds = %4457
  %4477 = landingpad { ptr, i32 }
          cleanup
  %4478 = extractvalue { ptr, i32 } %4477, 0
  store ptr %4478, ptr %5, align 8
  %4479 = extractvalue { ptr, i32 } %4477, 1
  store i32 %4479, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %266) #5
  br label %11991

4480:                                             ; preds = %4463
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4481 unwind label %1024

4481:                                             ; preds = %4480
  br label %4456, !llvm.loop !63

4482:                                             ; preds = %4467
  br label %5068

4483:                                             ; preds = %4167
  %4484 = 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 %4485 unwind label %1024

4485:                                             ; preds = %4483
  %4486 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %4487 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4486, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4488 unwind label %1024

4488:                                             ; preds = %4485
  %4489 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %4490 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4489, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4491 unwind label %1024

4491:                                             ; preds = %4488
  call void @llvm.lifetime.start.p0(i64 1, ptr %267) #5
  store i8 1, ptr %267, align 1, !tbaa !9
  %4492 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %4493 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4492, ptr noundef nonnull align 1 dereferenceable(1) %267)
          to label %4494 unwind label %4516

4494:                                             ; preds = %4491
  call void @llvm.lifetime.end.p0(i64 1, ptr %267) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %268) #5
  store i8 1, ptr %268, align 1, !tbaa !9
  %4495 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4496 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4495, ptr noundef nonnull align 1 dereferenceable(1) %268)
          to label %4497 unwind label %4520

4497:                                             ; preds = %4494
  call void @llvm.lifetime.end.p0(i64 1, ptr %268) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4498 unwind label %1024

4498:                                             ; preds = %4497
  br label %4499

4499:                                             ; preds = %4529, %4498
  br label %4500

4500:                                             ; preds = %4499
  %4501 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %4502 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4501)
          to label %4503 unwind label %1024

4503:                                             ; preds = %4500
  %4504 = 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) %4502)
          to label %4505 unwind label %1024

4505:                                             ; preds = %4503
  call void @llvm.lifetime.start.p0(i64 1, ptr %269) #5
  store i8 0, ptr %269, align 1, !tbaa !9
  %4506 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4507 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4506, ptr noundef nonnull align 1 dereferenceable(1) %269)
          to label %4508 unwind label %4524

4508:                                             ; preds = %4505
  call void @llvm.lifetime.end.p0(i64 1, ptr %269) #5
  %4509 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %4510 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4509)
          to label %4511 unwind label %1024

4511:                                             ; preds = %4508
  %4512 = load i8, ptr %4510, align 1, !tbaa !9, !range !11, !noundef !12
  %4513 = trunc i8 %4512 to i1
  br i1 %4513, label %4514, label %4528

4514:                                             ; preds = %4511
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4515 unwind label %1024

4515:                                             ; preds = %4514
  br label %4530

4516:                                             ; preds = %4491
  %4517 = landingpad { ptr, i32 }
          cleanup
  %4518 = extractvalue { ptr, i32 } %4517, 0
  store ptr %4518, ptr %5, align 8
  %4519 = extractvalue { ptr, i32 } %4517, 1
  store i32 %4519, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %267) #5
  br label %11991

4520:                                             ; preds = %4494
  %4521 = landingpad { ptr, i32 }
          cleanup
  %4522 = extractvalue { ptr, i32 } %4521, 0
  store ptr %4522, ptr %5, align 8
  %4523 = extractvalue { ptr, i32 } %4521, 1
  store i32 %4523, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %268) #5
  br label %11991

4524:                                             ; preds = %4505
  %4525 = landingpad { ptr, i32 }
          cleanup
  %4526 = extractvalue { ptr, i32 } %4525, 0
  store ptr %4526, ptr %5, align 8
  %4527 = extractvalue { ptr, i32 } %4525, 1
  store i32 %4527, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %269) #5
  br label %11991

4528:                                             ; preds = %4511
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4529 unwind label %1024

4529:                                             ; preds = %4528
  br label %4499, !llvm.loop !64

4530:                                             ; preds = %4515
  call void @llvm.lifetime.start.p0(i64 24, ptr %270) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %271) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %271, i32 noundef 0)
          to label %4531 unwind label %4569

4531:                                             ; preds = %4530
  %4532 = 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) %271)
          to label %4533 unwind label %4573

4533:                                             ; preds = %4531
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %270, ptr noundef nonnull align 1 dereferenceable(1) %4532)
          to label %4534 unwind label %4573

4534:                                             ; preds = %4533
  %4535 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %4536 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4535, ptr noundef nonnull align 8 dereferenceable(24) %270)
          to label %4537 unwind label %4577

4537:                                             ; preds = %4534
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %270) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %271) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %271) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %270) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %272) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %272, i32 noundef 0)
          to label %4538 unwind label %4583

4538:                                             ; preds = %4537
  %4539 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %4540 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4539, ptr noundef nonnull align 8 dereferenceable(24) %272)
          to label %4541 unwind label %4587

4541:                                             ; preds = %4538
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %272) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %272) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %273) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %274) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %274, i32 noundef 0)
          to label %4542 unwind label %4592

4542:                                             ; preds = %4541
  %4543 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %274, ptr noundef nonnull align 8 dereferenceable(8) %15)
          to label %4544 unwind label %4596

4544:                                             ; preds = %4542
  call void @llvm.lifetime.start.p0(i64 24, ptr %275) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %275, i32 noundef 0)
          to label %4545 unwind label %4600

4545:                                             ; preds = %4544
  %4546 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %4543, ptr noundef nonnull align 8 dereferenceable(8) %275)
          to label %4547 unwind label %4604

4547:                                             ; preds = %4545
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %273, ptr noundef nonnull align 1 dereferenceable(1) %4546)
          to label %4548 unwind label %4604

4548:                                             ; preds = %4547
  %4549 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %4550 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4549, ptr noundef nonnull align 8 dereferenceable(24) %273)
          to label %4551 unwind label %4608

4551:                                             ; preds = %4548
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %273) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %275) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %275) #5
  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.end.p0(i64 24, ptr %273) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %276) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %276, i32 noundef -3)
          to label %4552 unwind label %4616

4552:                                             ; preds = %4551
  %4553 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %4554 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4553, ptr noundef nonnull align 8 dereferenceable(24) %276)
          to label %4555 unwind label %4620

4555:                                             ; preds = %4552
  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.start.p0(i64 1, ptr %277) #5
  store i8 1, ptr %277, align 1, !tbaa !9
  %4556 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %4557 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4556, ptr noundef nonnull align 1 dereferenceable(1) %277)
          to label %4558 unwind label %4625

4558:                                             ; preds = %4555
  call void @llvm.lifetime.end.p0(i64 1, ptr %277) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4559 unwind label %1024

4559:                                             ; preds = %4558
  br label %4560

4560:                                             ; preds = %4568, %4559
  %4561 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %4562 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %4561)
          to label %4563 unwind label %1024

4563:                                             ; preds = %4560
  %4564 = load i8, ptr %4562, align 1, !tbaa !9, !range !11, !noundef !12
  %4565 = trunc i8 %4564 to i1
  %4566 = xor i1 %4565, true
  br i1 %4566, label %4567, label %4629

4567:                                             ; preds = %4563
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4568 unwind label %1024

4568:                                             ; preds = %4567
  br label %4560, !llvm.loop !65

4569:                                             ; preds = %4530
  %4570 = landingpad { ptr, i32 }
          cleanup
  %4571 = extractvalue { ptr, i32 } %4570, 0
  store ptr %4571, ptr %5, align 8
  %4572 = extractvalue { ptr, i32 } %4570, 1
  store i32 %4572, ptr %6, align 4
  br label %4582

4573:                                             ; preds = %4533, %4531
  %4574 = landingpad { ptr, i32 }
          cleanup
  %4575 = extractvalue { ptr, i32 } %4574, 0
  store ptr %4575, ptr %5, align 8
  %4576 = extractvalue { ptr, i32 } %4574, 1
  store i32 %4576, ptr %6, align 4
  br label %4581

4577:                                             ; preds = %4534
  %4578 = landingpad { ptr, i32 }
          cleanup
  %4579 = extractvalue { ptr, i32 } %4578, 0
  store ptr %4579, ptr %5, align 8
  %4580 = extractvalue { ptr, i32 } %4578, 1
  store i32 %4580, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %270) #5
  br label %4581

4581:                                             ; preds = %4577, %4573
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %271) #5
  br label %4582

4582:                                             ; preds = %4581, %4569
  call void @llvm.lifetime.end.p0(i64 24, ptr %271) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %270) #5
  br label %11991

4583:                                             ; preds = %4537
  %4584 = landingpad { ptr, i32 }
          cleanup
  %4585 = extractvalue { ptr, i32 } %4584, 0
  store ptr %4585, ptr %5, align 8
  %4586 = extractvalue { ptr, i32 } %4584, 1
  store i32 %4586, ptr %6, align 4
  br label %4591

4587:                                             ; preds = %4538
  %4588 = landingpad { ptr, i32 }
          cleanup
  %4589 = extractvalue { ptr, i32 } %4588, 0
  store ptr %4589, ptr %5, align 8
  %4590 = extractvalue { ptr, i32 } %4588, 1
  store i32 %4590, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %272) #5
  br label %4591

4591:                                             ; preds = %4587, %4583
  call void @llvm.lifetime.end.p0(i64 24, ptr %272) #5
  br label %11991

4592:                                             ; preds = %4541
  %4593 = landingpad { ptr, i32 }
          cleanup
  %4594 = extractvalue { ptr, i32 } %4593, 0
  store ptr %4594, ptr %5, align 8
  %4595 = extractvalue { ptr, i32 } %4593, 1
  store i32 %4595, ptr %6, align 4
  br label %4615

4596:                                             ; preds = %4542
  %4597 = landingpad { ptr, i32 }
          cleanup
  %4598 = extractvalue { ptr, i32 } %4597, 0
  store ptr %4598, ptr %5, align 8
  %4599 = extractvalue { ptr, i32 } %4597, 1
  store i32 %4599, ptr %6, align 4
  br label %4614

4600:                                             ; preds = %4544
  %4601 = landingpad { ptr, i32 }
          cleanup
  %4602 = extractvalue { ptr, i32 } %4601, 0
  store ptr %4602, ptr %5, align 8
  %4603 = extractvalue { ptr, i32 } %4601, 1
  store i32 %4603, ptr %6, align 4
  br label %4613

4604:                                             ; preds = %4547, %4545
  %4605 = landingpad { ptr, i32 }
          cleanup
  %4606 = extractvalue { ptr, i32 } %4605, 0
  store ptr %4606, ptr %5, align 8
  %4607 = extractvalue { ptr, i32 } %4605, 1
  store i32 %4607, ptr %6, align 4
  br label %4612

4608:                                             ; preds = %4548
  %4609 = landingpad { ptr, i32 }
          cleanup
  %4610 = extractvalue { ptr, i32 } %4609, 0
  store ptr %4610, ptr %5, align 8
  %4611 = extractvalue { ptr, i32 } %4609, 1
  store i32 %4611, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %273) #5
  br label %4612

4612:                                             ; preds = %4608, %4604
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %275) #5
  br label %4613

4613:                                             ; preds = %4612, %4600
  call void @llvm.lifetime.end.p0(i64 24, ptr %275) #5
  br label %4614

4614:                                             ; preds = %4613, %4596
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %274) #5
  br label %4615

4615:                                             ; preds = %4614, %4592
  call void @llvm.lifetime.end.p0(i64 24, ptr %274) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %273) #5
  br label %11991

4616:                                             ; preds = %4551
  %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 %4624

4620:                                             ; preds = %4552
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %276) #5
  br label %4624

4624:                                             ; preds = %4620, %4616
  call void @llvm.lifetime.end.p0(i64 24, ptr %276) #5
  br label %11991

4625:                                             ; preds = %4555
  %4626 = landingpad { ptr, i32 }
          cleanup
  %4627 = extractvalue { ptr, i32 } %4626, 0
  store ptr %4627, ptr %5, align 8
  %4628 = extractvalue { ptr, i32 } %4626, 1
  store i32 %4628, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %277) #5
  br label %11991

4629:                                             ; preds = %4563
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4630 unwind label %1024

4630:                                             ; preds = %4629
  call void @llvm.lifetime.start.p0(i64 1, ptr %278) #5
  store i8 0, ptr %278, align 1, !tbaa !9
  %4631 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %4632 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4631, ptr noundef nonnull align 1 dereferenceable(1) %278)
          to label %4633 unwind label %4663

4633:                                             ; preds = %4630
  call void @llvm.lifetime.end.p0(i64 1, ptr %278) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4634 unwind label %1024

4634:                                             ; preds = %4633
  call void @llvm.lifetime.start.p0(i64 24, ptr %279) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %279, i32 noundef 3779)
          to label %4635 unwind label %4667

4635:                                             ; preds = %4634
  %4636 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %4637 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4636, ptr noundef nonnull align 8 dereferenceable(24) %279)
          to label %4638 unwind label %4671

4638:                                             ; preds = %4635
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %279) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %279) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %280) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %280, i32 noundef 0)
          to label %4639 unwind label %4676

4639:                                             ; preds = %4638
  %4640 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %4641 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4640, ptr noundef nonnull align 8 dereferenceable(24) %280)
          to label %4642 unwind label %4680

4642:                                             ; preds = %4639
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %280) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %280) #5
  %4643 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %4644 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4643, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %4645 unwind label %1024

4645:                                             ; preds = %4642
  call void @llvm.lifetime.start.p0(i64 24, ptr %281) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %281, i32 noundef -2)
          to label %4646 unwind label %4685

4646:                                             ; preds = %4645
  %4647 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %4648 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4647, ptr noundef nonnull align 8 dereferenceable(24) %281)
          to label %4649 unwind label %4689

4649:                                             ; preds = %4646
  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 1, ptr %282) #5
  store i8 1, ptr %282, align 1, !tbaa !9
  %4650 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %4651 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4650, ptr noundef nonnull align 1 dereferenceable(1) %282)
          to label %4652 unwind label %4694

4652:                                             ; preds = %4649
  call void @llvm.lifetime.end.p0(i64 1, ptr %282) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4653 unwind label %1024

4653:                                             ; preds = %4652
  br label %4654

4654:                                             ; preds = %4662, %4653
  %4655 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %4656 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %4655)
          to label %4657 unwind label %1024

4657:                                             ; preds = %4654
  %4658 = load i8, ptr %4656, align 1, !tbaa !9, !range !11, !noundef !12
  %4659 = trunc i8 %4658 to i1
  %4660 = xor i1 %4659, true
  br i1 %4660, label %4661, label %4698

4661:                                             ; preds = %4657
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4662 unwind label %1024

4662:                                             ; preds = %4661
  br label %4654, !llvm.loop !66

4663:                                             ; preds = %4630
  %4664 = landingpad { ptr, i32 }
          cleanup
  %4665 = extractvalue { ptr, i32 } %4664, 0
  store ptr %4665, ptr %5, align 8
  %4666 = extractvalue { ptr, i32 } %4664, 1
  store i32 %4666, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %278) #5
  br label %11991

4667:                                             ; preds = %4634
  %4668 = landingpad { ptr, i32 }
          cleanup
  %4669 = extractvalue { ptr, i32 } %4668, 0
  store ptr %4669, ptr %5, align 8
  %4670 = extractvalue { ptr, i32 } %4668, 1
  store i32 %4670, ptr %6, align 4
  br label %4675

4671:                                             ; preds = %4635
  %4672 = landingpad { ptr, i32 }
          cleanup
  %4673 = extractvalue { ptr, i32 } %4672, 0
  store ptr %4673, ptr %5, align 8
  %4674 = extractvalue { ptr, i32 } %4672, 1
  store i32 %4674, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %279) #5
  br label %4675

4675:                                             ; preds = %4671, %4667
  call void @llvm.lifetime.end.p0(i64 24, ptr %279) #5
  br label %11991

4676:                                             ; preds = %4638
  %4677 = landingpad { ptr, i32 }
          cleanup
  %4678 = extractvalue { ptr, i32 } %4677, 0
  store ptr %4678, ptr %5, align 8
  %4679 = extractvalue { ptr, i32 } %4677, 1
  store i32 %4679, ptr %6, align 4
  br label %4684

4680:                                             ; preds = %4639
  %4681 = landingpad { ptr, i32 }
          cleanup
  %4682 = extractvalue { ptr, i32 } %4681, 0
  store ptr %4682, ptr %5, align 8
  %4683 = extractvalue { ptr, i32 } %4681, 1
  store i32 %4683, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %280) #5
  br label %4684

4684:                                             ; preds = %4680, %4676
  call void @llvm.lifetime.end.p0(i64 24, ptr %280) #5
  br label %11991

4685:                                             ; preds = %4645
  %4686 = landingpad { ptr, i32 }
          cleanup
  %4687 = extractvalue { ptr, i32 } %4686, 0
  store ptr %4687, ptr %5, align 8
  %4688 = extractvalue { ptr, i32 } %4686, 1
  store i32 %4688, ptr %6, align 4
  br label %4693

4689:                                             ; preds = %4646
  %4690 = landingpad { ptr, i32 }
          cleanup
  %4691 = extractvalue { ptr, i32 } %4690, 0
  store ptr %4691, ptr %5, align 8
  %4692 = extractvalue { ptr, i32 } %4690, 1
  store i32 %4692, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %281) #5
  br label %4693

4693:                                             ; preds = %4689, %4685
  call void @llvm.lifetime.end.p0(i64 24, ptr %281) #5
  br label %11991

4694:                                             ; preds = %4649
  %4695 = landingpad { ptr, i32 }
          cleanup
  %4696 = extractvalue { ptr, i32 } %4695, 0
  store ptr %4696, ptr %5, align 8
  %4697 = extractvalue { ptr, i32 } %4695, 1
  store i32 %4697, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %282) #5
  br label %11991

4698:                                             ; preds = %4657
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4699 unwind label %1024

4699:                                             ; preds = %4698
  call void @llvm.lifetime.start.p0(i64 1, ptr %283) #5
  store i8 0, ptr %283, align 1, !tbaa !9
  %4700 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %4701 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4700, ptr noundef nonnull align 1 dereferenceable(1) %283)
          to label %4702 unwind label %4742

4702:                                             ; preds = %4699
  call void @llvm.lifetime.end.p0(i64 1, ptr %283) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4703 unwind label %1024

4703:                                             ; preds = %4702
  call void @llvm.lifetime.start.p0(i64 24, ptr %284) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %284, i32 noundef 10)
          to label %4704 unwind label %4746

4704:                                             ; preds = %4703
  %4705 = 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) %284)
          to label %4706 unwind label %4750

4706:                                             ; preds = %4704
  %4707 = 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) %4705)
          to label %4708 unwind label %4750

4708:                                             ; preds = %4706
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %284) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %284) #5
  %4709 = 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 %4710 unwind label %1024

4710:                                             ; preds = %4708
  %4711 = 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 %4712 unwind label %1024

4712:                                             ; preds = %4710
  %4713 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %4709, ptr noundef nonnull align 8 dereferenceable(8) %4711)
          to label %4714 unwind label %1024

4714:                                             ; preds = %4712
  %4715 = 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) %4713)
          to label %4716 unwind label %1024

4716:                                             ; preds = %4714
  %4717 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %4718 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4717, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4719 unwind label %1024

4719:                                             ; preds = %4716
  %4720 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %4721 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4720, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %4722 unwind label %1024

4722:                                             ; preds = %4719
  call void @llvm.lifetime.start.p0(i64 1, ptr %285) #5
  store i8 0, ptr %285, align 1, !tbaa !9
  %4723 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %4724 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4723, ptr noundef nonnull align 1 dereferenceable(1) %285)
          to label %4725 unwind label %4755

4725:                                             ; preds = %4722
  call void @llvm.lifetime.end.p0(i64 1, ptr %285) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %286) #5
  store i8 1, ptr %286, align 1, !tbaa !9
  %4726 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4727 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4726, ptr noundef nonnull align 1 dereferenceable(1) %286)
          to label %4728 unwind label %4759

4728:                                             ; preds = %4725
  call void @llvm.lifetime.end.p0(i64 1, ptr %286) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4729 unwind label %1024

4729:                                             ; preds = %4728
  br label %4730

4730:                                             ; preds = %4768, %4729
  br label %4731

4731:                                             ; preds = %4730
  call void @llvm.lifetime.start.p0(i64 1, ptr %287) #5
  store i8 0, ptr %287, align 1, !tbaa !9
  %4732 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4733 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4732, ptr noundef nonnull align 1 dereferenceable(1) %287)
          to label %4734 unwind label %4763

4734:                                             ; preds = %4731
  call void @llvm.lifetime.end.p0(i64 1, ptr %287) #5
  %4735 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %4736 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4735)
          to label %4737 unwind label %1024

4737:                                             ; preds = %4734
  %4738 = load i8, ptr %4736, align 1, !tbaa !9, !range !11, !noundef !12
  %4739 = trunc i8 %4738 to i1
  br i1 %4739, label %4740, label %4767

4740:                                             ; preds = %4737
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4741 unwind label %1024

4741:                                             ; preds = %4740
  br label %4769

4742:                                             ; preds = %4699
  %4743 = landingpad { ptr, i32 }
          cleanup
  %4744 = extractvalue { ptr, i32 } %4743, 0
  store ptr %4744, ptr %5, align 8
  %4745 = extractvalue { ptr, i32 } %4743, 1
  store i32 %4745, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %283) #5
  br label %11991

4746:                                             ; preds = %4703
  %4747 = landingpad { ptr, i32 }
          cleanup
  %4748 = extractvalue { ptr, i32 } %4747, 0
  store ptr %4748, ptr %5, align 8
  %4749 = extractvalue { ptr, i32 } %4747, 1
  store i32 %4749, ptr %6, align 4
  br label %4754

4750:                                             ; preds = %4706, %4704
  %4751 = landingpad { ptr, i32 }
          cleanup
  %4752 = extractvalue { ptr, i32 } %4751, 0
  store ptr %4752, ptr %5, align 8
  %4753 = extractvalue { ptr, i32 } %4751, 1
  store i32 %4753, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %284) #5
  br label %4754

4754:                                             ; preds = %4750, %4746
  call void @llvm.lifetime.end.p0(i64 24, ptr %284) #5
  br label %11991

4755:                                             ; preds = %4722
  %4756 = landingpad { ptr, i32 }
          cleanup
  %4757 = extractvalue { ptr, i32 } %4756, 0
  store ptr %4757, ptr %5, align 8
  %4758 = extractvalue { ptr, i32 } %4756, 1
  store i32 %4758, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %285) #5
  br label %11991

4759:                                             ; preds = %4725
  %4760 = landingpad { ptr, i32 }
          cleanup
  %4761 = extractvalue { ptr, i32 } %4760, 0
  store ptr %4761, ptr %5, align 8
  %4762 = extractvalue { ptr, i32 } %4760, 1
  store i32 %4762, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %286) #5
  br label %11991

4763:                                             ; preds = %4731
  %4764 = landingpad { ptr, i32 }
          cleanup
  %4765 = extractvalue { ptr, i32 } %4764, 0
  store ptr %4765, ptr %5, align 8
  %4766 = extractvalue { ptr, i32 } %4764, 1
  store i32 %4766, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %287) #5
  br label %11991

4767:                                             ; preds = %4737
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4768 unwind label %1024

4768:                                             ; preds = %4767
  br label %4730, !llvm.loop !67

4769:                                             ; preds = %4741
  call void @llvm.lifetime.start.p0(i64 24, ptr %288) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %288, i32 noundef 0)
          to label %4770 unwind label %4805

4770:                                             ; preds = %4769
  %4771 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %288, ptr noundef nonnull align 8 dereferenceable(8) %25)
          to label %4772 unwind label %4809

4772:                                             ; preds = %4770
  %4773 = 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) %4771)
          to label %4774 unwind label %4809

4774:                                             ; preds = %4772
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %288) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %288) #5
  %4775 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %4776 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4775, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4777 unwind label %1024

4777:                                             ; preds = %4774
  %4778 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %4779 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4778, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4780 unwind label %1024

4780:                                             ; preds = %4777
  call void @llvm.lifetime.start.p0(i64 1, ptr %289) #5
  store i8 1, ptr %289, align 1, !tbaa !9
  %4781 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %4782 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4781, ptr noundef nonnull align 1 dereferenceable(1) %289)
          to label %4783 unwind label %4814

4783:                                             ; preds = %4780
  call void @llvm.lifetime.end.p0(i64 1, ptr %289) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %290) #5
  store i8 1, ptr %290, align 1, !tbaa !9
  %4784 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4785 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4784, ptr noundef nonnull align 1 dereferenceable(1) %290)
          to label %4786 unwind label %4818

4786:                                             ; preds = %4783
  call void @llvm.lifetime.end.p0(i64 1, ptr %290) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4787 unwind label %1024

4787:                                             ; preds = %4786
  br label %4788

4788:                                             ; preds = %4827, %4787
  br label %4789

4789:                                             ; preds = %4788
  %4790 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %4791 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4790)
          to label %4792 unwind label %1024

4792:                                             ; preds = %4789
  %4793 = 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) %4791)
          to label %4794 unwind label %1024

4794:                                             ; preds = %4792
  call void @llvm.lifetime.start.p0(i64 1, ptr %291) #5
  store i8 0, ptr %291, align 1, !tbaa !9
  %4795 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4796 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4795, ptr noundef nonnull align 1 dereferenceable(1) %291)
          to label %4797 unwind label %4822

4797:                                             ; preds = %4794
  call void @llvm.lifetime.end.p0(i64 1, ptr %291) #5
  %4798 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %4799 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4798)
          to label %4800 unwind label %1024

4800:                                             ; preds = %4797
  %4801 = load i8, ptr %4799, align 1, !tbaa !9, !range !11, !noundef !12
  %4802 = trunc i8 %4801 to i1
  br i1 %4802, label %4803, label %4826

4803:                                             ; preds = %4800
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4804 unwind label %1024

4804:                                             ; preds = %4803
  br label %4828

4805:                                             ; preds = %4769
  %4806 = landingpad { ptr, i32 }
          cleanup
  %4807 = extractvalue { ptr, i32 } %4806, 0
  store ptr %4807, ptr %5, align 8
  %4808 = extractvalue { ptr, i32 } %4806, 1
  store i32 %4808, ptr %6, align 4
  br label %4813

4809:                                             ; preds = %4772, %4770
  %4810 = landingpad { ptr, i32 }
          cleanup
  %4811 = extractvalue { ptr, i32 } %4810, 0
  store ptr %4811, ptr %5, align 8
  %4812 = extractvalue { ptr, i32 } %4810, 1
  store i32 %4812, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %288) #5
  br label %4813

4813:                                             ; preds = %4809, %4805
  call void @llvm.lifetime.end.p0(i64 24, ptr %288) #5
  br label %11991

4814:                                             ; preds = %4780
  %4815 = landingpad { ptr, i32 }
          cleanup
  %4816 = extractvalue { ptr, i32 } %4815, 0
  store ptr %4816, ptr %5, align 8
  %4817 = extractvalue { ptr, i32 } %4815, 1
  store i32 %4817, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %289) #5
  br label %11991

4818:                                             ; preds = %4783
  %4819 = landingpad { ptr, i32 }
          cleanup
  %4820 = extractvalue { ptr, i32 } %4819, 0
  store ptr %4820, ptr %5, align 8
  %4821 = extractvalue { ptr, i32 } %4819, 1
  store i32 %4821, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %290) #5
  br label %11991

4822:                                             ; preds = %4794
  %4823 = landingpad { ptr, i32 }
          cleanup
  %4824 = extractvalue { ptr, i32 } %4823, 0
  store ptr %4824, ptr %5, align 8
  %4825 = extractvalue { ptr, i32 } %4823, 1
  store i32 %4825, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %291) #5
  br label %11991

4826:                                             ; preds = %4800
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4827 unwind label %1024

4827:                                             ; preds = %4826
  br label %4788, !llvm.loop !68

4828:                                             ; preds = %4804
  call void @llvm.lifetime.start.p0(i64 24, ptr %292) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %292, i32 noundef 11)
          to label %4829 unwind label %4841

4829:                                             ; preds = %4828
  %4830 = 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) %292)
          to label %4831 unwind label %4845

4831:                                             ; preds = %4829
  %4832 = 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) %4830)
          to label %4833 unwind label %4845

4833:                                             ; preds = %4831
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %292) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %292) #5
  %4834 = 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 %4835 unwind label %1024

4835:                                             ; preds = %4833
  %4836 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4834)
          to label %4837 unwind label %1024

4837:                                             ; preds = %4835
  br i1 %4836, label %4838, label %4850

4838:                                             ; preds = %4837
  %4839 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %4840 unwind label %1024

4840:                                             ; preds = %4838
  br label %4853

4841:                                             ; preds = %4828
  %4842 = landingpad { ptr, i32 }
          cleanup
  %4843 = extractvalue { ptr, i32 } %4842, 0
  store ptr %4843, ptr %5, align 8
  %4844 = extractvalue { ptr, i32 } %4842, 1
  store i32 %4844, ptr %6, align 4
  br label %4849

4845:                                             ; preds = %4831, %4829
  %4846 = landingpad { ptr, i32 }
          cleanup
  %4847 = extractvalue { ptr, i32 } %4846, 0
  store ptr %4847, ptr %5, align 8
  %4848 = extractvalue { ptr, i32 } %4846, 1
  store i32 %4848, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %292) #5
  br label %4849

4849:                                             ; preds = %4845, %4841
  call void @llvm.lifetime.end.p0(i64 24, ptr %292) #5
  br label %11991

4850:                                             ; preds = %4837
  %4851 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 1)
          to label %4852 unwind label %1024

4852:                                             ; preds = %4850
  br label %4853

4853:                                             ; preds = %4852, %4840
  %4854 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %4855 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4854, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4856 unwind label %1024

4856:                                             ; preds = %4853
  %4857 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %4858 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4857, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %4859 unwind label %1024

4859:                                             ; preds = %4856
  call void @llvm.lifetime.start.p0(i64 1, ptr %293) #5
  store i8 0, ptr %293, align 1, !tbaa !9
  %4860 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %4861 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4860, ptr noundef nonnull align 1 dereferenceable(1) %293)
          to label %4862 unwind label %4879

4862:                                             ; preds = %4859
  call void @llvm.lifetime.end.p0(i64 1, ptr %293) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %294) #5
  store i8 1, ptr %294, align 1, !tbaa !9
  %4863 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4864 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4863, ptr noundef nonnull align 1 dereferenceable(1) %294)
          to label %4865 unwind label %4883

4865:                                             ; preds = %4862
  call void @llvm.lifetime.end.p0(i64 1, ptr %294) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4866 unwind label %1024

4866:                                             ; preds = %4865
  br label %4867

4867:                                             ; preds = %4892, %4866
  br label %4868

4868:                                             ; preds = %4867
  call void @llvm.lifetime.start.p0(i64 1, ptr %295) #5
  store i8 0, ptr %295, align 1, !tbaa !9
  %4869 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4870 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4869, ptr noundef nonnull align 1 dereferenceable(1) %295)
          to label %4871 unwind label %4887

4871:                                             ; preds = %4868
  call void @llvm.lifetime.end.p0(i64 1, ptr %295) #5
  %4872 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %4873 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4872)
          to label %4874 unwind label %1024

4874:                                             ; preds = %4871
  %4875 = load i8, ptr %4873, align 1, !tbaa !9, !range !11, !noundef !12
  %4876 = trunc i8 %4875 to i1
  br i1 %4876, label %4877, label %4891

4877:                                             ; preds = %4874
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4878 unwind label %1024

4878:                                             ; preds = %4877
  br label %4893

4879:                                             ; preds = %4859
  %4880 = landingpad { ptr, i32 }
          cleanup
  %4881 = extractvalue { ptr, i32 } %4880, 0
  store ptr %4881, ptr %5, align 8
  %4882 = extractvalue { ptr, i32 } %4880, 1
  store i32 %4882, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %293) #5
  br label %11991

4883:                                             ; preds = %4862
  %4884 = landingpad { ptr, i32 }
          cleanup
  %4885 = extractvalue { ptr, i32 } %4884, 0
  store ptr %4885, ptr %5, align 8
  %4886 = extractvalue { ptr, i32 } %4884, 1
  store i32 %4886, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %294) #5
  br label %11991

4887:                                             ; preds = %4868
  %4888 = landingpad { ptr, i32 }
          cleanup
  %4889 = extractvalue { ptr, i32 } %4888, 0
  store ptr %4889, ptr %5, align 8
  %4890 = extractvalue { ptr, i32 } %4888, 1
  store i32 %4890, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %295) #5
  br label %11991

4891:                                             ; preds = %4874
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4892 unwind label %1024

4892:                                             ; preds = %4891
  br label %4867, !llvm.loop !69

4893:                                             ; preds = %4878
  %4894 = 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 %4895 unwind label %1024

4895:                                             ; preds = %4893
  %4896 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %4897 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4896, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4898 unwind label %1024

4898:                                             ; preds = %4895
  %4899 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %4900 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4899, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4901 unwind label %1024

4901:                                             ; preds = %4898
  call void @llvm.lifetime.start.p0(i64 1, ptr %296) #5
  store i8 1, ptr %296, align 1, !tbaa !9
  %4902 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %4903 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4902, ptr noundef nonnull align 1 dereferenceable(1) %296)
          to label %4904 unwind label %4926

4904:                                             ; preds = %4901
  call void @llvm.lifetime.end.p0(i64 1, ptr %296) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %297) #5
  store i8 1, ptr %297, align 1, !tbaa !9
  %4905 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4906 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4905, ptr noundef nonnull align 1 dereferenceable(1) %297)
          to label %4907 unwind label %4930

4907:                                             ; preds = %4904
  call void @llvm.lifetime.end.p0(i64 1, ptr %297) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4908 unwind label %1024

4908:                                             ; preds = %4907
  br label %4909

4909:                                             ; preds = %4939, %4908
  br label %4910

4910:                                             ; preds = %4909
  %4911 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %4912 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4911)
          to label %4913 unwind label %1024

4913:                                             ; preds = %4910
  %4914 = 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) %4912)
          to label %4915 unwind label %1024

4915:                                             ; preds = %4913
  call void @llvm.lifetime.start.p0(i64 1, ptr %298) #5
  store i8 0, ptr %298, align 1, !tbaa !9
  %4916 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4917 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4916, ptr noundef nonnull align 1 dereferenceable(1) %298)
          to label %4918 unwind label %4934

4918:                                             ; preds = %4915
  call void @llvm.lifetime.end.p0(i64 1, ptr %298) #5
  %4919 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %4920 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4919)
          to label %4921 unwind label %1024

4921:                                             ; preds = %4918
  %4922 = load i8, ptr %4920, align 1, !tbaa !9, !range !11, !noundef !12
  %4923 = trunc i8 %4922 to i1
  br i1 %4923, label %4924, label %4938

4924:                                             ; preds = %4921
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4925 unwind label %1024

4925:                                             ; preds = %4924
  br label %4940

4926:                                             ; preds = %4901
  %4927 = landingpad { ptr, i32 }
          cleanup
  %4928 = extractvalue { ptr, i32 } %4927, 0
  store ptr %4928, ptr %5, align 8
  %4929 = extractvalue { ptr, i32 } %4927, 1
  store i32 %4929, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %296) #5
  br label %11991

4930:                                             ; preds = %4904
  %4931 = landingpad { ptr, i32 }
          cleanup
  %4932 = extractvalue { ptr, i32 } %4931, 0
  store ptr %4932, ptr %5, align 8
  %4933 = extractvalue { ptr, i32 } %4931, 1
  store i32 %4933, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %297) #5
  br label %11991

4934:                                             ; preds = %4915
  %4935 = landingpad { ptr, i32 }
          cleanup
  %4936 = extractvalue { ptr, i32 } %4935, 0
  store ptr %4936, ptr %5, align 8
  %4937 = extractvalue { ptr, i32 } %4935, 1
  store i32 %4937, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %298) #5
  br label %11991

4938:                                             ; preds = %4921
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4939 unwind label %1024

4939:                                             ; preds = %4938
  br label %4909, !llvm.loop !70

4940:                                             ; preds = %4925
  call void @llvm.lifetime.start.p0(i64 24, ptr %299) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %299, i32 noundef 12)
          to label %4941 unwind label %4973

4941:                                             ; preds = %4940
  %4942 = 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) %299)
          to label %4943 unwind label %4977

4943:                                             ; preds = %4941
  %4944 = 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) %4942)
          to label %4945 unwind label %4977

4945:                                             ; preds = %4943
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %299) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %299) #5
  %4946 = 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 %4947 unwind label %1024

4947:                                             ; preds = %4945
  %4948 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %4949 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4948, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4950 unwind label %1024

4950:                                             ; preds = %4947
  %4951 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %4952 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4951, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %4953 unwind label %1024

4953:                                             ; preds = %4950
  call void @llvm.lifetime.start.p0(i64 1, ptr %300) #5
  store i8 0, ptr %300, align 1, !tbaa !9
  %4954 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %4955 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4954, ptr noundef nonnull align 1 dereferenceable(1) %300)
          to label %4956 unwind label %4982

4956:                                             ; preds = %4953
  call void @llvm.lifetime.end.p0(i64 1, ptr %300) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %301) #5
  store i8 1, ptr %301, align 1, !tbaa !9
  %4957 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4958 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4957, ptr noundef nonnull align 1 dereferenceable(1) %301)
          to label %4959 unwind label %4986

4959:                                             ; preds = %4956
  call void @llvm.lifetime.end.p0(i64 1, ptr %301) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4960 unwind label %1024

4960:                                             ; preds = %4959
  br label %4961

4961:                                             ; preds = %4995, %4960
  br label %4962

4962:                                             ; preds = %4961
  call void @llvm.lifetime.start.p0(i64 1, ptr %302) #5
  store i8 0, ptr %302, align 1, !tbaa !9
  %4963 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %4964 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4963, ptr noundef nonnull align 1 dereferenceable(1) %302)
          to label %4965 unwind label %4990

4965:                                             ; preds = %4962
  call void @llvm.lifetime.end.p0(i64 1, ptr %302) #5
  %4966 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %4967 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4966)
          to label %4968 unwind label %1024

4968:                                             ; preds = %4965
  %4969 = load i8, ptr %4967, align 1, !tbaa !9, !range !11, !noundef !12
  %4970 = trunc i8 %4969 to i1
  br i1 %4970, label %4971, label %4994

4971:                                             ; preds = %4968
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4972 unwind label %1024

4972:                                             ; preds = %4971
  br label %4996

4973:                                             ; preds = %4940
  %4974 = landingpad { ptr, i32 }
          cleanup
  %4975 = extractvalue { ptr, i32 } %4974, 0
  store ptr %4975, ptr %5, align 8
  %4976 = extractvalue { ptr, i32 } %4974, 1
  store i32 %4976, ptr %6, align 4
  br label %4981

4977:                                             ; preds = %4943, %4941
  %4978 = landingpad { ptr, i32 }
          cleanup
  %4979 = extractvalue { ptr, i32 } %4978, 0
  store ptr %4979, ptr %5, align 8
  %4980 = extractvalue { ptr, i32 } %4978, 1
  store i32 %4980, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %299) #5
  br label %4981

4981:                                             ; preds = %4977, %4973
  call void @llvm.lifetime.end.p0(i64 24, ptr %299) #5
  br label %11991

4982:                                             ; preds = %4953
  %4983 = landingpad { ptr, i32 }
          cleanup
  %4984 = extractvalue { ptr, i32 } %4983, 0
  store ptr %4984, ptr %5, align 8
  %4985 = extractvalue { ptr, i32 } %4983, 1
  store i32 %4985, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %300) #5
  br label %11991

4986:                                             ; preds = %4956
  %4987 = landingpad { ptr, i32 }
          cleanup
  %4988 = extractvalue { ptr, i32 } %4987, 0
  store ptr %4988, ptr %5, align 8
  %4989 = extractvalue { ptr, i32 } %4987, 1
  store i32 %4989, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %301) #5
  br label %11991

4990:                                             ; preds = %4962
  %4991 = landingpad { ptr, i32 }
          cleanup
  %4992 = extractvalue { ptr, i32 } %4991, 0
  store ptr %4992, ptr %5, align 8
  %4993 = extractvalue { ptr, i32 } %4991, 1
  store i32 %4993, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %302) #5
  br label %11991

4994:                                             ; preds = %4968
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %4995 unwind label %1024

4995:                                             ; preds = %4994
  br label %4961, !llvm.loop !71

4996:                                             ; preds = %4972
  %4997 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %4998 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4997, ptr noundef nonnull align 8 dereferenceable(24) %11)
          to label %4999 unwind label %1024

4999:                                             ; preds = %4996
  call void @llvm.lifetime.start.p0(i64 24, ptr %303) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %304) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %304, i32 noundef 0)
          to label %5000 unwind label %5027

5000:                                             ; preds = %4999
  %5001 = 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) %304)
          to label %5002 unwind label %5031

5002:                                             ; preds = %5000
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %303, ptr noundef nonnull align 1 dereferenceable(1) %5001)
          to label %5003 unwind label %5031

5003:                                             ; preds = %5002
  %5004 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %5005 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5004, ptr noundef nonnull align 8 dereferenceable(24) %303)
          to label %5006 unwind label %5035

5006:                                             ; preds = %5003
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %303) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %304) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %304) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %303) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %305) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %305, i32 noundef 1)
          to label %5007 unwind label %5041

5007:                                             ; preds = %5006
  %5008 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %5009 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5008, ptr noundef nonnull align 8 dereferenceable(24) %305)
          to label %5010 unwind label %5045

5010:                                             ; preds = %5007
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %305) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %305) #5
  %5011 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %5012 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5011, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %5013 unwind label %1024

5013:                                             ; preds = %5010
  call void @llvm.lifetime.start.p0(i64 1, ptr %306) #5
  store i8 1, ptr %306, align 1, !tbaa !9
  %5014 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %5015 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5014, ptr noundef nonnull align 1 dereferenceable(1) %306)
          to label %5016 unwind label %5050

5016:                                             ; preds = %5013
  call void @llvm.lifetime.end.p0(i64 1, ptr %306) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5017 unwind label %1024

5017:                                             ; preds = %5016
  br label %5018

5018:                                             ; preds = %5026, %5017
  %5019 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %5020 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %5019)
          to label %5021 unwind label %1024

5021:                                             ; preds = %5018
  %5022 = load i8, ptr %5020, align 1, !tbaa !9, !range !11, !noundef !12
  %5023 = trunc i8 %5022 to i1
  %5024 = xor i1 %5023, true
  br i1 %5024, label %5025, label %5054

5025:                                             ; preds = %5021
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5026 unwind label %1024

5026:                                             ; preds = %5025
  br label %5018, !llvm.loop !72

5027:                                             ; preds = %4999
  %5028 = landingpad { ptr, i32 }
          cleanup
  %5029 = extractvalue { ptr, i32 } %5028, 0
  store ptr %5029, ptr %5, align 8
  %5030 = extractvalue { ptr, i32 } %5028, 1
  store i32 %5030, ptr %6, align 4
  br label %5040

5031:                                             ; preds = %5002, %5000
  %5032 = landingpad { ptr, i32 }
          cleanup
  %5033 = extractvalue { ptr, i32 } %5032, 0
  store ptr %5033, ptr %5, align 8
  %5034 = extractvalue { ptr, i32 } %5032, 1
  store i32 %5034, ptr %6, align 4
  br label %5039

5035:                                             ; preds = %5003
  %5036 = landingpad { ptr, i32 }
          cleanup
  %5037 = extractvalue { ptr, i32 } %5036, 0
  store ptr %5037, ptr %5, align 8
  %5038 = extractvalue { ptr, i32 } %5036, 1
  store i32 %5038, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %303) #5
  br label %5039

5039:                                             ; preds = %5035, %5031
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %304) #5
  br label %5040

5040:                                             ; preds = %5039, %5027
  call void @llvm.lifetime.end.p0(i64 24, ptr %304) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %303) #5
  br label %11991

5041:                                             ; preds = %5006
  %5042 = landingpad { ptr, i32 }
          cleanup
  %5043 = extractvalue { ptr, i32 } %5042, 0
  store ptr %5043, ptr %5, align 8
  %5044 = extractvalue { ptr, i32 } %5042, 1
  store i32 %5044, ptr %6, align 4
  br label %5049

5045:                                             ; preds = %5007
  %5046 = landingpad { ptr, i32 }
          cleanup
  %5047 = extractvalue { ptr, i32 } %5046, 0
  store ptr %5047, ptr %5, align 8
  %5048 = extractvalue { ptr, i32 } %5046, 1
  store i32 %5048, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %305) #5
  br label %5049

5049:                                             ; preds = %5045, %5041
  call void @llvm.lifetime.end.p0(i64 24, ptr %305) #5
  br label %11991

5050:                                             ; preds = %5013
  %5051 = landingpad { ptr, i32 }
          cleanup
  %5052 = extractvalue { ptr, i32 } %5051, 0
  store ptr %5052, ptr %5, align 8
  %5053 = extractvalue { ptr, i32 } %5051, 1
  store i32 %5053, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %306) #5
  br label %11991

5054:                                             ; preds = %5021
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5055 unwind label %1024

5055:                                             ; preds = %5054
  call void @llvm.lifetime.start.p0(i64 1, ptr %307) #5
  store i8 0, ptr %307, align 1, !tbaa !9
  %5056 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %5057 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5056, ptr noundef nonnull align 1 dereferenceable(1) %307)
          to label %5058 unwind label %5060

5058:                                             ; preds = %5055
  call void @llvm.lifetime.end.p0(i64 1, ptr %307) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5059 unwind label %1024

5059:                                             ; preds = %5058
  br label %5068

5060:                                             ; preds = %5055
  %5061 = landingpad { ptr, i32 }
          cleanup
  %5062 = extractvalue { ptr, i32 } %5061, 0
  store ptr %5062, ptr %5, align 8
  %5063 = extractvalue { ptr, i32 } %5061, 1
  store i32 %5063, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %307) #5
  br label %11991

5064:                                             ; preds = %4167
  %5065 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef -4)
          to label %5066 unwind label %1024

5066:                                             ; preds = %5064
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5067 unwind label %1024

5067:                                             ; preds = %5066
  br label %5068

5068:                                             ; preds = %5067, %5059, %4482, %4378, %4273
  br label %5069

5069:                                             ; preds = %5068, %2767
  %5070 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %5071 unwind label %1024

5071:                                             ; preds = %5069
  %5072 = icmp ne i64 %5070, 3
  br i1 %5072, label %5077, label %5073

5073:                                             ; preds = %5071
  %5074 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %5075 unwind label %1024

5075:                                             ; preds = %5073
  %5076 = icmp eq i64 %5074, 0
  br i1 %5076, label %5077, label %5081

5077:                                             ; preds = %5075, %5071
  %5078 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %5079 unwind label %1024

5079:                                             ; preds = %5077
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5080 unwind label %1024

5080:                                             ; preds = %5079
  br label %5648

5081:                                             ; preds = %5075
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5082 unwind label %1024

5082:                                             ; preds = %5081
  %5083 = 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 %5084 unwind label %1024

5084:                                             ; preds = %5082
  %5085 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %5086 = trunc i8 %5085 to i1
  %5087 = zext i1 %5086 to i8
  store i8 %5087, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %308) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %308, i32 noundef 24)
          to label %5088 unwind label %5123

5088:                                             ; preds = %5084
  %5089 = 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) %308)
          to label %5090 unwind label %5127

5090:                                             ; preds = %5088
  %5091 = 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) %5089)
          to label %5092 unwind label %5127

5092:                                             ; preds = %5090
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %308) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %308) #5
  %5093 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %5094 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5093, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5095 unwind label %1024

5095:                                             ; preds = %5092
  %5096 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %5097 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5096, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %5098 unwind label %1024

5098:                                             ; preds = %5095
  call void @llvm.lifetime.start.p0(i64 1, ptr %309) #5
  store i8 1, ptr %309, align 1, !tbaa !9
  %5099 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %5100 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5099, ptr noundef nonnull align 1 dereferenceable(1) %309)
          to label %5101 unwind label %5132

5101:                                             ; preds = %5098
  call void @llvm.lifetime.end.p0(i64 1, ptr %309) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %310) #5
  store i8 1, ptr %310, align 1, !tbaa !9
  %5102 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5103 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5102, ptr noundef nonnull align 1 dereferenceable(1) %310)
          to label %5104 unwind label %5136

5104:                                             ; preds = %5101
  call void @llvm.lifetime.end.p0(i64 1, ptr %310) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5105 unwind label %1024

5105:                                             ; preds = %5104
  br label %5106

5106:                                             ; preds = %5145, %5105
  br label %5107

5107:                                             ; preds = %5106
  %5108 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %5109 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %5108)
          to label %5110 unwind label %1024

5110:                                             ; preds = %5107
  %5111 = 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) %5109)
          to label %5112 unwind label %1024

5112:                                             ; preds = %5110
  call void @llvm.lifetime.start.p0(i64 1, ptr %311) #5
  store i8 0, ptr %311, align 1, !tbaa !9
  %5113 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5114 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5113, ptr noundef nonnull align 1 dereferenceable(1) %311)
          to label %5115 unwind label %5140

5115:                                             ; preds = %5112
  call void @llvm.lifetime.end.p0(i64 1, ptr %311) #5
  %5116 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %5117 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5116)
          to label %5118 unwind label %1024

5118:                                             ; preds = %5115
  %5119 = load i8, ptr %5117, align 1, !tbaa !9, !range !11, !noundef !12
  %5120 = trunc i8 %5119 to i1
  br i1 %5120, label %5121, label %5144

5121:                                             ; preds = %5118
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5122 unwind label %1024

5122:                                             ; preds = %5121
  br label %5146

5123:                                             ; preds = %5084
  %5124 = landingpad { ptr, i32 }
          cleanup
  %5125 = extractvalue { ptr, i32 } %5124, 0
  store ptr %5125, ptr %5, align 8
  %5126 = extractvalue { ptr, i32 } %5124, 1
  store i32 %5126, ptr %6, align 4
  br label %5131

5127:                                             ; preds = %5090, %5088
  %5128 = landingpad { ptr, i32 }
          cleanup
  %5129 = extractvalue { ptr, i32 } %5128, 0
  store ptr %5129, ptr %5, align 8
  %5130 = extractvalue { ptr, i32 } %5128, 1
  store i32 %5130, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %308) #5
  br label %5131

5131:                                             ; preds = %5127, %5123
  call void @llvm.lifetime.end.p0(i64 24, ptr %308) #5
  br label %11991

5132:                                             ; preds = %5098
  %5133 = landingpad { ptr, i32 }
          cleanup
  %5134 = extractvalue { ptr, i32 } %5133, 0
  store ptr %5134, ptr %5, align 8
  %5135 = extractvalue { ptr, i32 } %5133, 1
  store i32 %5135, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %309) #5
  br label %11991

5136:                                             ; preds = %5101
  %5137 = landingpad { ptr, i32 }
          cleanup
  %5138 = extractvalue { ptr, i32 } %5137, 0
  store ptr %5138, ptr %5, align 8
  %5139 = extractvalue { ptr, i32 } %5137, 1
  store i32 %5139, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %310) #5
  br label %11991

5140:                                             ; preds = %5112
  %5141 = landingpad { ptr, i32 }
          cleanup
  %5142 = extractvalue { ptr, i32 } %5141, 0
  store ptr %5142, ptr %5, align 8
  %5143 = extractvalue { ptr, i32 } %5141, 1
  store i32 %5143, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %311) #5
  br label %11991

5144:                                             ; preds = %5118
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5145 unwind label %1024

5145:                                             ; preds = %5144
  br label %5106, !llvm.loop !73

5146:                                             ; preds = %5122
  %5147 = 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 %5148 unwind label %1024

5148:                                             ; preds = %5146
  %5149 = 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) %5147)
          to label %5150 unwind label %1024

5150:                                             ; preds = %5148
  %5151 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %5152 unwind label %1024

5152:                                             ; preds = %5150
  %5153 = add nsw i64 %5151, 2
  %5154 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %17, i64 noundef %5153)
          to label %5155 unwind label %1024

5155:                                             ; preds = %5152
  call void @llvm.lifetime.start.p0(i64 24, ptr %312) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %312, i32 noundef 8)
          to label %5156 unwind label %5188

5156:                                             ; preds = %5155
  %5157 = 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) %312)
          to label %5158 unwind label %5192

5158:                                             ; preds = %5156
  %5159 = 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) %5157)
          to label %5160 unwind label %5192

5160:                                             ; preds = %5158
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %312) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %312) #5
  %5161 = 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 %5162 unwind label %1024

5162:                                             ; preds = %5160
  %5163 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %5164 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5163, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5165 unwind label %1024

5165:                                             ; preds = %5162
  %5166 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %5167 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5166, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5168 unwind label %1024

5168:                                             ; preds = %5165
  call void @llvm.lifetime.start.p0(i64 1, ptr %313) #5
  store i8 0, ptr %313, align 1, !tbaa !9
  %5169 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %5170 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5169, ptr noundef nonnull align 1 dereferenceable(1) %313)
          to label %5171 unwind label %5197

5171:                                             ; preds = %5168
  call void @llvm.lifetime.end.p0(i64 1, ptr %313) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %314) #5
  store i8 1, ptr %314, align 1, !tbaa !9
  %5172 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5173 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5172, ptr noundef nonnull align 1 dereferenceable(1) %314)
          to label %5174 unwind label %5201

5174:                                             ; preds = %5171
  call void @llvm.lifetime.end.p0(i64 1, ptr %314) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5175 unwind label %1024

5175:                                             ; preds = %5174
  br label %5176

5176:                                             ; preds = %5210, %5175
  br label %5177

5177:                                             ; preds = %5176
  call void @llvm.lifetime.start.p0(i64 1, ptr %315) #5
  store i8 0, ptr %315, align 1, !tbaa !9
  %5178 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5179 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5178, ptr noundef nonnull align 1 dereferenceable(1) %315)
          to label %5180 unwind label %5205

5180:                                             ; preds = %5177
  call void @llvm.lifetime.end.p0(i64 1, ptr %315) #5
  %5181 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %5182 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5181)
          to label %5183 unwind label %1024

5183:                                             ; preds = %5180
  %5184 = load i8, ptr %5182, align 1, !tbaa !9, !range !11, !noundef !12
  %5185 = trunc i8 %5184 to i1
  br i1 %5185, label %5186, label %5209

5186:                                             ; preds = %5183
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5187 unwind label %1024

5187:                                             ; preds = %5186
  br label %5211

5188:                                             ; preds = %5155
  %5189 = landingpad { ptr, i32 }
          cleanup
  %5190 = extractvalue { ptr, i32 } %5189, 0
  store ptr %5190, ptr %5, align 8
  %5191 = extractvalue { ptr, i32 } %5189, 1
  store i32 %5191, ptr %6, align 4
  br label %5196

5192:                                             ; preds = %5158, %5156
  %5193 = landingpad { ptr, i32 }
          cleanup
  %5194 = extractvalue { ptr, i32 } %5193, 0
  store ptr %5194, ptr %5, align 8
  %5195 = extractvalue { ptr, i32 } %5193, 1
  store i32 %5195, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %312) #5
  br label %5196

5196:                                             ; preds = %5192, %5188
  call void @llvm.lifetime.end.p0(i64 24, ptr %312) #5
  br label %11991

5197:                                             ; preds = %5168
  %5198 = landingpad { ptr, i32 }
          cleanup
  %5199 = extractvalue { ptr, i32 } %5198, 0
  store ptr %5199, ptr %5, align 8
  %5200 = extractvalue { ptr, i32 } %5198, 1
  store i32 %5200, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %313) #5
  br label %11991

5201:                                             ; preds = %5171
  %5202 = landingpad { ptr, i32 }
          cleanup
  %5203 = extractvalue { ptr, i32 } %5202, 0
  store ptr %5203, ptr %5, align 8
  %5204 = extractvalue { ptr, i32 } %5202, 1
  store i32 %5204, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %314) #5
  br label %11991

5205:                                             ; preds = %5177
  %5206 = landingpad { ptr, i32 }
          cleanup
  %5207 = extractvalue { ptr, i32 } %5206, 0
  store ptr %5207, ptr %5, align 8
  %5208 = extractvalue { ptr, i32 } %5206, 1
  store i32 %5208, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %315) #5
  br label %11991

5209:                                             ; preds = %5183
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5210 unwind label %1024

5210:                                             ; preds = %5209
  br label %5176, !llvm.loop !74

5211:                                             ; preds = %5187
  call void @llvm.lifetime.start.p0(i64 24, ptr %316) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %316, i32 noundef 25)
          to label %5212 unwind label %5247

5212:                                             ; preds = %5211
  %5213 = 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) %316)
          to label %5214 unwind label %5251

5214:                                             ; preds = %5212
  %5215 = 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) %5213)
          to label %5216 unwind label %5251

5216:                                             ; preds = %5214
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %316) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %316) #5
  %5217 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %5218 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5217, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5219 unwind label %1024

5219:                                             ; preds = %5216
  %5220 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %5221 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5220, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %5222 unwind label %1024

5222:                                             ; preds = %5219
  call void @llvm.lifetime.start.p0(i64 1, ptr %317) #5
  store i8 1, ptr %317, align 1, !tbaa !9
  %5223 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %5224 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5223, ptr noundef nonnull align 1 dereferenceable(1) %317)
          to label %5225 unwind label %5256

5225:                                             ; preds = %5222
  call void @llvm.lifetime.end.p0(i64 1, ptr %317) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %318) #5
  store i8 1, ptr %318, align 1, !tbaa !9
  %5226 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5227 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5226, ptr noundef nonnull align 1 dereferenceable(1) %318)
          to label %5228 unwind label %5260

5228:                                             ; preds = %5225
  call void @llvm.lifetime.end.p0(i64 1, ptr %318) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5229 unwind label %1024

5229:                                             ; preds = %5228
  br label %5230

5230:                                             ; preds = %5269, %5229
  br label %5231

5231:                                             ; preds = %5230
  %5232 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %5233 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %5232)
          to label %5234 unwind label %1024

5234:                                             ; preds = %5231
  %5235 = 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) %5233)
          to label %5236 unwind label %1024

5236:                                             ; preds = %5234
  call void @llvm.lifetime.start.p0(i64 1, ptr %319) #5
  store i8 0, ptr %319, align 1, !tbaa !9
  %5237 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5238 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5237, ptr noundef nonnull align 1 dereferenceable(1) %319)
          to label %5239 unwind label %5264

5239:                                             ; preds = %5236
  call void @llvm.lifetime.end.p0(i64 1, ptr %319) #5
  %5240 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %5241 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5240)
          to label %5242 unwind label %1024

5242:                                             ; preds = %5239
  %5243 = load i8, ptr %5241, align 1, !tbaa !9, !range !11, !noundef !12
  %5244 = trunc i8 %5243 to i1
  br i1 %5244, label %5245, label %5268

5245:                                             ; preds = %5242
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5246 unwind label %1024

5246:                                             ; preds = %5245
  br label %5270

5247:                                             ; preds = %5211
  %5248 = landingpad { ptr, i32 }
          cleanup
  %5249 = extractvalue { ptr, i32 } %5248, 0
  store ptr %5249, ptr %5, align 8
  %5250 = extractvalue { ptr, i32 } %5248, 1
  store i32 %5250, ptr %6, align 4
  br label %5255

5251:                                             ; preds = %5214, %5212
  %5252 = landingpad { ptr, i32 }
          cleanup
  %5253 = extractvalue { ptr, i32 } %5252, 0
  store ptr %5253, ptr %5, align 8
  %5254 = extractvalue { ptr, i32 } %5252, 1
  store i32 %5254, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %316) #5
  br label %5255

5255:                                             ; preds = %5251, %5247
  call void @llvm.lifetime.end.p0(i64 24, ptr %316) #5
  br label %11991

5256:                                             ; preds = %5222
  %5257 = landingpad { ptr, i32 }
          cleanup
  %5258 = extractvalue { ptr, i32 } %5257, 0
  store ptr %5258, ptr %5, align 8
  %5259 = extractvalue { ptr, i32 } %5257, 1
  store i32 %5259, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %317) #5
  br label %11991

5260:                                             ; preds = %5225
  %5261 = landingpad { ptr, i32 }
          cleanup
  %5262 = extractvalue { ptr, i32 } %5261, 0
  store ptr %5262, ptr %5, align 8
  %5263 = extractvalue { ptr, i32 } %5261, 1
  store i32 %5263, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %318) #5
  br label %11991

5264:                                             ; preds = %5236
  %5265 = landingpad { ptr, i32 }
          cleanup
  %5266 = extractvalue { ptr, i32 } %5265, 0
  store ptr %5266, ptr %5, align 8
  %5267 = extractvalue { ptr, i32 } %5265, 1
  store i32 %5267, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %319) #5
  br label %11991

5268:                                             ; preds = %5242
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5269 unwind label %1024

5269:                                             ; preds = %5268
  br label %5230, !llvm.loop !75

5270:                                             ; preds = %5246
  %5271 = 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 %5272 unwind label %1024

5272:                                             ; preds = %5270
  %5273 = 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) %5271)
          to label %5274 unwind label %1024

5274:                                             ; preds = %5272
  call void @llvm.lifetime.start.p0(i64 24, ptr %320) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %320, i32 noundef 9)
          to label %5275 unwind label %5307

5275:                                             ; preds = %5274
  %5276 = 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) %320)
          to label %5277 unwind label %5311

5277:                                             ; preds = %5275
  %5278 = 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) %5276)
          to label %5279 unwind label %5311

5279:                                             ; preds = %5277
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %320) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %320) #5
  %5280 = 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 %5281 unwind label %1024

5281:                                             ; preds = %5279
  %5282 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %5283 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5282, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5284 unwind label %1024

5284:                                             ; preds = %5281
  %5285 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %5286 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5285, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5287 unwind label %1024

5287:                                             ; preds = %5284
  call void @llvm.lifetime.start.p0(i64 1, ptr %321) #5
  store i8 0, ptr %321, align 1, !tbaa !9
  %5288 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %5289 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5288, ptr noundef nonnull align 1 dereferenceable(1) %321)
          to label %5290 unwind label %5316

5290:                                             ; preds = %5287
  call void @llvm.lifetime.end.p0(i64 1, ptr %321) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %322) #5
  store i8 1, ptr %322, align 1, !tbaa !9
  %5291 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5292 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5291, ptr noundef nonnull align 1 dereferenceable(1) %322)
          to label %5293 unwind label %5320

5293:                                             ; preds = %5290
  call void @llvm.lifetime.end.p0(i64 1, ptr %322) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5294 unwind label %1024

5294:                                             ; preds = %5293
  br label %5295

5295:                                             ; preds = %5329, %5294
  br label %5296

5296:                                             ; preds = %5295
  call void @llvm.lifetime.start.p0(i64 1, ptr %323) #5
  store i8 0, ptr %323, align 1, !tbaa !9
  %5297 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5298 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5297, ptr noundef nonnull align 1 dereferenceable(1) %323)
          to label %5299 unwind label %5324

5299:                                             ; preds = %5296
  call void @llvm.lifetime.end.p0(i64 1, ptr %323) #5
  %5300 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %5301 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5300)
          to label %5302 unwind label %1024

5302:                                             ; preds = %5299
  %5303 = load i8, ptr %5301, align 1, !tbaa !9, !range !11, !noundef !12
  %5304 = trunc i8 %5303 to i1
  br i1 %5304, label %5305, label %5328

5305:                                             ; preds = %5302
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5306 unwind label %1024

5306:                                             ; preds = %5305
  br label %5330

5307:                                             ; preds = %5274
  %5308 = landingpad { ptr, i32 }
          cleanup
  %5309 = extractvalue { ptr, i32 } %5308, 0
  store ptr %5309, ptr %5, align 8
  %5310 = extractvalue { ptr, i32 } %5308, 1
  store i32 %5310, ptr %6, align 4
  br label %5315

5311:                                             ; preds = %5277, %5275
  %5312 = landingpad { ptr, i32 }
          cleanup
  %5313 = extractvalue { ptr, i32 } %5312, 0
  store ptr %5313, ptr %5, align 8
  %5314 = extractvalue { ptr, i32 } %5312, 1
  store i32 %5314, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %320) #5
  br label %5315

5315:                                             ; preds = %5311, %5307
  call void @llvm.lifetime.end.p0(i64 24, ptr %320) #5
  br label %11991

5316:                                             ; preds = %5287
  %5317 = landingpad { ptr, i32 }
          cleanup
  %5318 = extractvalue { ptr, i32 } %5317, 0
  store ptr %5318, ptr %5, align 8
  %5319 = extractvalue { ptr, i32 } %5317, 1
  store i32 %5319, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %321) #5
  br label %11991

5320:                                             ; preds = %5290
  %5321 = landingpad { ptr, i32 }
          cleanup
  %5322 = extractvalue { ptr, i32 } %5321, 0
  store ptr %5322, ptr %5, align 8
  %5323 = extractvalue { ptr, i32 } %5321, 1
  store i32 %5323, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %322) #5
  br label %11991

5324:                                             ; preds = %5296
  %5325 = landingpad { ptr, i32 }
          cleanup
  %5326 = extractvalue { ptr, i32 } %5325, 0
  store ptr %5326, ptr %5, align 8
  %5327 = extractvalue { ptr, i32 } %5325, 1
  store i32 %5327, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %323) #5
  br label %11991

5328:                                             ; preds = %5302
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5329 unwind label %1024

5329:                                             ; preds = %5328
  br label %5295, !llvm.loop !76

5330:                                             ; preds = %5306
  %5331 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %17)
          to label %5332 unwind label %1024

5332:                                             ; preds = %5330
  %5333 = shl i64 %5331, 1
  %5334 = add nsw i64 32, %5333
  %5335 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %17, i64 noundef %5334)
          to label %5336 unwind label %1024

5336:                                             ; preds = %5332
  %5337 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %16, i32 noundef 6)
          to label %5338 unwind label %1024

5338:                                             ; preds = %5336
  %5339 = 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 %5340 unwind label %1024

5340:                                             ; preds = %5338
  %5341 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5339)
          to label %5342 unwind label %1024

5342:                                             ; preds = %5340
  %5343 = icmp ne i64 %5341, 0
  br i1 %5343, label %5344, label %5349

5344:                                             ; preds = %5342
  %5345 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 10)
          to label %5346 unwind label %1024

5346:                                             ; preds = %5344
  %5347 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 272)
          to label %5348 unwind label %1024

5348:                                             ; preds = %5346
  br label %5354

5349:                                             ; preds = %5342
  %5350 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 11)
          to label %5351 unwind label %1024

5351:                                             ; preds = %5349
  %5352 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 288)
          to label %5353 unwind label %1024

5353:                                             ; preds = %5351
  br label %5354

5354:                                             ; preds = %5353, %5348
  call void @llvm.lifetime.start.p0(i64 24, ptr %324) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %324, i32 noundef 0)
          to label %5355 unwind label %5391

5355:                                             ; preds = %5354
  %5356 = 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) %324)
          to label %5357 unwind label %5395

5357:                                             ; preds = %5355
  %5358 = 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) %5356)
          to label %5359 unwind label %5395

5359:                                             ; preds = %5357
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %324) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %324) #5
  %5360 = 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 %5361 unwind label %1024

5361:                                             ; preds = %5359
  %5362 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %5360, ptr noundef nonnull align 8 dereferenceable(8) %15)
          to label %5363 unwind label %1024

5363:                                             ; preds = %5361
  %5364 = 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) %5362)
          to label %5365 unwind label %1024

5365:                                             ; preds = %5363
  %5366 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %5367 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5366, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5368 unwind label %1024

5368:                                             ; preds = %5365
  %5369 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %5370 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5369, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5371 unwind label %1024

5371:                                             ; preds = %5368
  call void @llvm.lifetime.start.p0(i64 1, ptr %325) #5
  store i8 0, ptr %325, align 1, !tbaa !9
  %5372 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %5373 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5372, ptr noundef nonnull align 1 dereferenceable(1) %325)
          to label %5374 unwind label %5400

5374:                                             ; preds = %5371
  call void @llvm.lifetime.end.p0(i64 1, ptr %325) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %326) #5
  store i8 1, ptr %326, align 1, !tbaa !9
  %5375 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5376 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5375, ptr noundef nonnull align 1 dereferenceable(1) %326)
          to label %5377 unwind label %5404

5377:                                             ; preds = %5374
  call void @llvm.lifetime.end.p0(i64 1, ptr %326) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5378 unwind label %1024

5378:                                             ; preds = %5377
  br label %5379

5379:                                             ; preds = %5413, %5378
  br label %5380

5380:                                             ; preds = %5379
  call void @llvm.lifetime.start.p0(i64 1, ptr %327) #5
  store i8 0, ptr %327, align 1, !tbaa !9
  %5381 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5382 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5381, ptr noundef nonnull align 1 dereferenceable(1) %327)
          to label %5383 unwind label %5408

5383:                                             ; preds = %5380
  call void @llvm.lifetime.end.p0(i64 1, ptr %327) #5
  %5384 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %5385 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5384)
          to label %5386 unwind label %1024

5386:                                             ; preds = %5383
  %5387 = load i8, ptr %5385, align 1, !tbaa !9, !range !11, !noundef !12
  %5388 = trunc i8 %5387 to i1
  br i1 %5388, label %5389, label %5412

5389:                                             ; preds = %5386
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5390 unwind label %1024

5390:                                             ; preds = %5389
  br label %5414

5391:                                             ; preds = %5354
  %5392 = landingpad { ptr, i32 }
          cleanup
  %5393 = extractvalue { ptr, i32 } %5392, 0
  store ptr %5393, ptr %5, align 8
  %5394 = extractvalue { ptr, i32 } %5392, 1
  store i32 %5394, ptr %6, align 4
  br label %5399

5395:                                             ; preds = %5357, %5355
  %5396 = landingpad { ptr, i32 }
          cleanup
  %5397 = extractvalue { ptr, i32 } %5396, 0
  store ptr %5397, ptr %5, align 8
  %5398 = extractvalue { ptr, i32 } %5396, 1
  store i32 %5398, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %324) #5
  br label %5399

5399:                                             ; preds = %5395, %5391
  call void @llvm.lifetime.end.p0(i64 24, ptr %324) #5
  br label %11991

5400:                                             ; preds = %5371
  %5401 = landingpad { ptr, i32 }
          cleanup
  %5402 = extractvalue { ptr, i32 } %5401, 0
  store ptr %5402, ptr %5, align 8
  %5403 = extractvalue { ptr, i32 } %5401, 1
  store i32 %5403, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %325) #5
  br label %11991

5404:                                             ; preds = %5374
  %5405 = landingpad { ptr, i32 }
          cleanup
  %5406 = extractvalue { ptr, i32 } %5405, 0
  store ptr %5406, ptr %5, align 8
  %5407 = extractvalue { ptr, i32 } %5405, 1
  store i32 %5407, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %326) #5
  br label %11991

5408:                                             ; preds = %5380
  %5409 = landingpad { ptr, i32 }
          cleanup
  %5410 = extractvalue { ptr, i32 } %5409, 0
  store ptr %5410, ptr %5, align 8
  %5411 = extractvalue { ptr, i32 } %5409, 1
  store i32 %5411, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %327) #5
  br label %11991

5412:                                             ; preds = %5386
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5413 unwind label %1024

5413:                                             ; preds = %5412
  br label %5379, !llvm.loop !77

5414:                                             ; preds = %5390
  call void @llvm.lifetime.start.p0(i64 24, ptr %328) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %328, i32 noundef 1)
          to label %5415 unwind label %5450

5415:                                             ; preds = %5414
  %5416 = 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) %328)
          to label %5417 unwind label %5454

5417:                                             ; preds = %5415
  %5418 = 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) %5416)
          to label %5419 unwind label %5454

5419:                                             ; preds = %5417
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %328) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %328) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %329) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %329, i32 noundef 0)
          to label %5420 unwind label %5459

5420:                                             ; preds = %5419
  %5421 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %329, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %5422 unwind label %5463

5422:                                             ; preds = %5420
  %5423 = 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) %5421)
          to label %5424 unwind label %5463

5424:                                             ; preds = %5422
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %329) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %329) #5
  %5425 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %5426 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5425, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5427 unwind label %1024

5427:                                             ; preds = %5424
  %5428 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %5429 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5428, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5430 unwind label %1024

5430:                                             ; preds = %5427
  call void @llvm.lifetime.start.p0(i64 1, ptr %330) #5
  store i8 0, ptr %330, align 1, !tbaa !9
  %5431 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %5432 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5431, ptr noundef nonnull align 1 dereferenceable(1) %330)
          to label %5433 unwind label %5468

5433:                                             ; preds = %5430
  call void @llvm.lifetime.end.p0(i64 1, ptr %330) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %331) #5
  store i8 1, ptr %331, align 1, !tbaa !9
  %5434 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5435 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5434, ptr noundef nonnull align 1 dereferenceable(1) %331)
          to label %5436 unwind label %5472

5436:                                             ; preds = %5433
  call void @llvm.lifetime.end.p0(i64 1, ptr %331) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5437 unwind label %1024

5437:                                             ; preds = %5436
  br label %5438

5438:                                             ; preds = %5481, %5437
  br label %5439

5439:                                             ; preds = %5438
  call void @llvm.lifetime.start.p0(i64 1, ptr %332) #5
  store i8 0, ptr %332, align 1, !tbaa !9
  %5440 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5441 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5440, ptr noundef nonnull align 1 dereferenceable(1) %332)
          to label %5442 unwind label %5476

5442:                                             ; preds = %5439
  call void @llvm.lifetime.end.p0(i64 1, ptr %332) #5
  %5443 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %5444 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5443)
          to label %5445 unwind label %1024

5445:                                             ; preds = %5442
  %5446 = load i8, ptr %5444, align 1, !tbaa !9, !range !11, !noundef !12
  %5447 = trunc i8 %5446 to i1
  br i1 %5447, label %5448, label %5480

5448:                                             ; preds = %5445
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5449 unwind label %1024

5449:                                             ; preds = %5448
  br label %5482

5450:                                             ; preds = %5414
  %5451 = landingpad { ptr, i32 }
          cleanup
  %5452 = extractvalue { ptr, i32 } %5451, 0
  store ptr %5452, ptr %5, align 8
  %5453 = extractvalue { ptr, i32 } %5451, 1
  store i32 %5453, ptr %6, align 4
  br label %5458

5454:                                             ; preds = %5417, %5415
  %5455 = landingpad { ptr, i32 }
          cleanup
  %5456 = extractvalue { ptr, i32 } %5455, 0
  store ptr %5456, ptr %5, align 8
  %5457 = extractvalue { ptr, i32 } %5455, 1
  store i32 %5457, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %328) #5
  br label %5458

5458:                                             ; preds = %5454, %5450
  call void @llvm.lifetime.end.p0(i64 24, ptr %328) #5
  br label %11991

5459:                                             ; preds = %5419
  %5460 = landingpad { ptr, i32 }
          cleanup
  %5461 = extractvalue { ptr, i32 } %5460, 0
  store ptr %5461, ptr %5, align 8
  %5462 = extractvalue { ptr, i32 } %5460, 1
  store i32 %5462, ptr %6, align 4
  br label %5467

5463:                                             ; preds = %5422, %5420
  %5464 = landingpad { ptr, i32 }
          cleanup
  %5465 = extractvalue { ptr, i32 } %5464, 0
  store ptr %5465, ptr %5, align 8
  %5466 = extractvalue { ptr, i32 } %5464, 1
  store i32 %5466, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %329) #5
  br label %5467

5467:                                             ; preds = %5463, %5459
  call void @llvm.lifetime.end.p0(i64 24, ptr %329) #5
  br label %11991

5468:                                             ; preds = %5430
  %5469 = landingpad { ptr, i32 }
          cleanup
  %5470 = extractvalue { ptr, i32 } %5469, 0
  store ptr %5470, ptr %5, align 8
  %5471 = extractvalue { ptr, i32 } %5469, 1
  store i32 %5471, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %330) #5
  br label %11991

5472:                                             ; preds = %5433
  %5473 = landingpad { ptr, i32 }
          cleanup
  %5474 = extractvalue { ptr, i32 } %5473, 0
  store ptr %5474, ptr %5, align 8
  %5475 = extractvalue { ptr, i32 } %5473, 1
  store i32 %5475, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %331) #5
  br label %11991

5476:                                             ; preds = %5439
  %5477 = landingpad { ptr, i32 }
          cleanup
  %5478 = extractvalue { ptr, i32 } %5477, 0
  store ptr %5478, ptr %5, align 8
  %5479 = extractvalue { ptr, i32 } %5477, 1
  store i32 %5479, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %332) #5
  br label %11991

5480:                                             ; preds = %5445
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5481 unwind label %1024

5481:                                             ; preds = %5480
  br label %5438, !llvm.loop !78

5482:                                             ; preds = %5449
  call void @llvm.lifetime.start.p0(i64 24, ptr %333) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %334) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %334, i32 noundef 26)
          to label %5483 unwind label %5521

5483:                                             ; preds = %5482
  %5484 = 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) %334)
          to label %5485 unwind label %5525

5485:                                             ; preds = %5483
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %333, ptr noundef nonnull align 1 dereferenceable(1) %5484)
          to label %5486 unwind label %5525

5486:                                             ; preds = %5485
  %5487 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %5488 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5487, ptr noundef nonnull align 8 dereferenceable(24) %333)
          to label %5489 unwind label %5529

5489:                                             ; preds = %5486
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %333) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %334) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %334) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %333) #5
  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_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %336, i32 noundef 10)
          to label %5490 unwind label %5535

5490:                                             ; preds = %5489
  %5491 = 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 %5492 unwind label %5539

5492:                                             ; preds = %5490
  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) %5491)
          to label %5493 unwind label %5539

5493:                                             ; preds = %5492
  %5494 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %5495 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5494, ptr noundef nonnull align 8 dereferenceable(24) %335)
          to label %5496 unwind label %5543

5496:                                             ; preds = %5493
  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
  invoke void @_ZN5sc_dt6sc_intILi7EEC2ERKNS_11sc_int_baseE(ptr noundef nonnull align 8 dereferenceable(24) %337, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %5497 unwind label %5549

5497:                                             ; preds = %5496
  %5498 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %5499 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5498, ptr noundef nonnull align 8 dereferenceable(24) %337)
          to label %5500 unwind label %5553

5500:                                             ; preds = %5497
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %337) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %337) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %338) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %338, i32 noundef 3)
          to label %5501 unwind label %5558

5501:                                             ; preds = %5500
  %5502 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %5503 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5502, ptr noundef nonnull align 8 dereferenceable(24) %338)
          to label %5504 unwind label %5562

5504:                                             ; preds = %5501
  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
  %5505 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %5506 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5505, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %5507 unwind label %1024

5507:                                             ; preds = %5504
  call void @llvm.lifetime.start.p0(i64 1, ptr %339) #5
  store i8 1, ptr %339, align 1, !tbaa !9
  %5508 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %5509 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5508, ptr noundef nonnull align 1 dereferenceable(1) %339)
          to label %5510 unwind label %5567

5510:                                             ; preds = %5507
  call void @llvm.lifetime.end.p0(i64 1, ptr %339) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5511 unwind label %1024

5511:                                             ; preds = %5510
  br label %5512

5512:                                             ; preds = %5520, %5511
  %5513 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %5514 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %5513)
          to label %5515 unwind label %1024

5515:                                             ; preds = %5512
  %5516 = load i8, ptr %5514, align 1, !tbaa !9, !range !11, !noundef !12
  %5517 = trunc i8 %5516 to i1
  %5518 = xor i1 %5517, true
  br i1 %5518, label %5519, label %5571

5519:                                             ; preds = %5515
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5520 unwind label %1024

5520:                                             ; preds = %5519
  br label %5512, !llvm.loop !79

5521:                                             ; preds = %5482
  %5522 = landingpad { ptr, i32 }
          cleanup
  %5523 = extractvalue { ptr, i32 } %5522, 0
  store ptr %5523, ptr %5, align 8
  %5524 = extractvalue { ptr, i32 } %5522, 1
  store i32 %5524, ptr %6, align 4
  br label %5534

5525:                                             ; preds = %5485, %5483
  %5526 = landingpad { ptr, i32 }
          cleanup
  %5527 = extractvalue { ptr, i32 } %5526, 0
  store ptr %5527, ptr %5, align 8
  %5528 = extractvalue { ptr, i32 } %5526, 1
  store i32 %5528, ptr %6, align 4
  br label %5533

5529:                                             ; preds = %5486
  %5530 = landingpad { ptr, i32 }
          cleanup
  %5531 = extractvalue { ptr, i32 } %5530, 0
  store ptr %5531, ptr %5, align 8
  %5532 = extractvalue { ptr, i32 } %5530, 1
  store i32 %5532, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %333) #5
  br label %5533

5533:                                             ; preds = %5529, %5525
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %334) #5
  br label %5534

5534:                                             ; preds = %5533, %5521
  call void @llvm.lifetime.end.p0(i64 24, ptr %334) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %333) #5
  br label %11991

5535:                                             ; preds = %5489
  %5536 = landingpad { ptr, i32 }
          cleanup
  %5537 = extractvalue { ptr, i32 } %5536, 0
  store ptr %5537, ptr %5, align 8
  %5538 = extractvalue { ptr, i32 } %5536, 1
  store i32 %5538, ptr %6, align 4
  br label %5548

5539:                                             ; preds = %5492, %5490
  %5540 = landingpad { ptr, i32 }
          cleanup
  %5541 = extractvalue { ptr, i32 } %5540, 0
  store ptr %5541, ptr %5, align 8
  %5542 = extractvalue { ptr, i32 } %5540, 1
  store i32 %5542, ptr %6, align 4
  br label %5547

5543:                                             ; preds = %5493
  %5544 = landingpad { ptr, i32 }
          cleanup
  %5545 = extractvalue { ptr, i32 } %5544, 0
  store ptr %5545, ptr %5, align 8
  %5546 = extractvalue { ptr, i32 } %5544, 1
  store i32 %5546, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %335) #5
  br label %5547

5547:                                             ; preds = %5543, %5539
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %336) #5
  br label %5548

5548:                                             ; preds = %5547, %5535
  call void @llvm.lifetime.end.p0(i64 24, ptr %336) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %335) #5
  br label %11991

5549:                                             ; preds = %5496
  %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 = %5497
  %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) %337) #5
  br label %5557

5557:                                             ; preds = %5553, %5549
  call void @llvm.lifetime.end.p0(i64 24, ptr %337) #5
  br label %11991

5558:                                             ; preds = %5500
  %5559 = landingpad { ptr, i32 }
          cleanup
  %5560 = extractvalue { ptr, i32 } %5559, 0
  store ptr %5560, ptr %5, align 8
  %5561 = extractvalue { ptr, i32 } %5559, 1
  store i32 %5561, ptr %6, align 4
  br label %5566

5562:                                             ; preds = %5501
  %5563 = landingpad { ptr, i32 }
          cleanup
  %5564 = extractvalue { ptr, i32 } %5563, 0
  store ptr %5564, ptr %5, align 8
  %5565 = extractvalue { ptr, i32 } %5563, 1
  store i32 %5565, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %338) #5
  br label %5566

5566:                                             ; preds = %5562, %5558
  call void @llvm.lifetime.end.p0(i64 24, ptr %338) #5
  br label %11991

5567:                                             ; preds = %5507
  %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 @llvm.lifetime.end.p0(i64 1, ptr %339) #5
  br label %11991

5571:                                             ; preds = %5515
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5572 unwind label %1024

5572:                                             ; preds = %5571
  call void @llvm.lifetime.start.p0(i64 1, ptr %340) #5
  store i8 0, ptr %340, align 1, !tbaa !9
  %5573 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %5574 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5573, ptr noundef nonnull align 1 dereferenceable(1) %340)
          to label %5575 unwind label %5607

5575:                                             ; preds = %5572
  call void @llvm.lifetime.end.p0(i64 1, ptr %340) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5576 unwind label %1024

5576:                                             ; preds = %5575
  %5577 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %5578 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5577, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %5579 unwind label %1024

5579:                                             ; preds = %5576
  call void @llvm.lifetime.start.p0(i64 24, ptr %341) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %342) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %342, i32 noundef 0)
          to label %5580 unwind label %5611

5580:                                             ; preds = %5579
  %5581 = 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) %342)
          to label %5582 unwind label %5615

5582:                                             ; preds = %5580
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %341, ptr noundef nonnull align 1 dereferenceable(1) %5581)
          to label %5583 unwind label %5615

5583:                                             ; preds = %5582
  %5584 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %5585 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5584, ptr noundef nonnull align 8 dereferenceable(24) %341)
          to label %5586 unwind label %5619

5586:                                             ; preds = %5583
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %341) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %342) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %342) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %341) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %343) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %343, i32 noundef 1)
          to label %5587 unwind label %5625

5587:                                             ; preds = %5586
  %5588 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %5589 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5588, ptr noundef nonnull align 8 dereferenceable(24) %343)
          to label %5590 unwind label %5629

5590:                                             ; preds = %5587
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %343) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %343) #5
  %5591 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %5592 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5591, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %5593 unwind label %1024

5593:                                             ; preds = %5590
  call void @llvm.lifetime.start.p0(i64 1, ptr %344) #5
  store i8 1, ptr %344, align 1, !tbaa !9
  %5594 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %5595 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5594, ptr noundef nonnull align 1 dereferenceable(1) %344)
          to label %5596 unwind label %5634

5596:                                             ; preds = %5593
  call void @llvm.lifetime.end.p0(i64 1, ptr %344) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5597 unwind label %1024

5597:                                             ; preds = %5596
  br label %5598

5598:                                             ; preds = %5606, %5597
  %5599 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %5600 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %5599)
          to label %5601 unwind label %1024

5601:                                             ; preds = %5598
  %5602 = load i8, ptr %5600, align 1, !tbaa !9, !range !11, !noundef !12
  %5603 = trunc i8 %5602 to i1
  %5604 = xor i1 %5603, true
  br i1 %5604, label %5605, label %5638

5605:                                             ; preds = %5601
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5606 unwind label %1024

5606:                                             ; preds = %5605
  br label %5598, !llvm.loop !80

5607:                                             ; preds = %5572
  %5608 = landingpad { ptr, i32 }
          cleanup
  %5609 = extractvalue { ptr, i32 } %5608, 0
  store ptr %5609, ptr %5, align 8
  %5610 = extractvalue { ptr, i32 } %5608, 1
  store i32 %5610, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %340) #5
  br label %11991

5611:                                             ; preds = %5579
  %5612 = landingpad { ptr, i32 }
          cleanup
  %5613 = extractvalue { ptr, i32 } %5612, 0
  store ptr %5613, ptr %5, align 8
  %5614 = extractvalue { ptr, i32 } %5612, 1
  store i32 %5614, ptr %6, align 4
  br label %5624

5615:                                             ; preds = %5582, %5580
  %5616 = landingpad { ptr, i32 }
          cleanup
  %5617 = extractvalue { ptr, i32 } %5616, 0
  store ptr %5617, ptr %5, align 8
  %5618 = extractvalue { ptr, i32 } %5616, 1
  store i32 %5618, ptr %6, align 4
  br label %5623

5619:                                             ; preds = %5583
  %5620 = landingpad { ptr, i32 }
          cleanup
  %5621 = extractvalue { ptr, i32 } %5620, 0
  store ptr %5621, ptr %5, align 8
  %5622 = extractvalue { ptr, i32 } %5620, 1
  store i32 %5622, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %341) #5
  br label %5623

5623:                                             ; preds = %5619, %5615
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %342) #5
  br label %5624

5624:                                             ; preds = %5623, %5611
  call void @llvm.lifetime.end.p0(i64 24, ptr %342) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %341) #5
  br label %11991

5625:                                             ; preds = %5586
  %5626 = landingpad { ptr, i32 }
          cleanup
  %5627 = extractvalue { ptr, i32 } %5626, 0
  store ptr %5627, ptr %5, align 8
  %5628 = extractvalue { ptr, i32 } %5626, 1
  store i32 %5628, ptr %6, align 4
  br label %5633

5629:                                             ; preds = %5587
  %5630 = landingpad { ptr, i32 }
          cleanup
  %5631 = extractvalue { ptr, i32 } %5630, 0
  store ptr %5631, ptr %5, align 8
  %5632 = extractvalue { ptr, i32 } %5630, 1
  store i32 %5632, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %343) #5
  br label %5633

5633:                                             ; preds = %5629, %5625
  call void @llvm.lifetime.end.p0(i64 24, ptr %343) #5
  br label %11991

5634:                                             ; preds = %5593
  %5635 = landingpad { ptr, i32 }
          cleanup
  %5636 = extractvalue { ptr, i32 } %5635, 0
  store ptr %5636, ptr %5, align 8
  %5637 = extractvalue { ptr, i32 } %5635, 1
  store i32 %5637, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %344) #5
  br label %11991

5638:                                             ; preds = %5601
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5639 unwind label %1024

5639:                                             ; preds = %5638
  call void @llvm.lifetime.start.p0(i64 1, ptr %345) #5
  store i8 0, ptr %345, align 1, !tbaa !9
  %5640 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %5641 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5640, ptr noundef nonnull align 1 dereferenceable(1) %345)
          to label %5642 unwind label %5644

5642:                                             ; preds = %5639
  call void @llvm.lifetime.end.p0(i64 1, ptr %345) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5643 unwind label %1024

5643:                                             ; preds = %5642
  br label %5648

5644:                                             ; preds = %5639
  %5645 = landingpad { ptr, i32 }
          cleanup
  %5646 = extractvalue { ptr, i32 } %5645, 0
  store ptr %5646, ptr %5, align 8
  %5647 = extractvalue { ptr, i32 } %5645, 1
  store i32 %5647, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %345) #5
  br label %11991

5648:                                             ; preds = %5643, %5080
  br label %11889

5649:                                             ; preds = %2767
  %5650 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %5651 unwind label %1024

5651:                                             ; preds = %5649
  %5652 = icmp ne i64 %5650, 3
  br i1 %5652, label %5657, label %5653

5653:                                             ; preds = %5651
  %5654 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %5655 unwind label %1024

5655:                                             ; preds = %5653
  %5656 = icmp eq i64 %5654, 0
  br i1 %5656, label %5657, label %5661

5657:                                             ; preds = %5655, %5651
  %5658 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %5659 unwind label %1024

5659:                                             ; preds = %5657
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5660 unwind label %1024

5660:                                             ; preds = %5659
  br label %7741

5661:                                             ; preds = %5655
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5662 unwind label %1024

5662:                                             ; preds = %5661
  %5663 = 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 %5664 unwind label %1024

5664:                                             ; preds = %5662
  %5665 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %5666 = trunc i8 %5665 to i1
  %5667 = zext i1 %5666 to i8
  store i8 %5667, ptr %34, align 1, !tbaa !9
  %5668 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %17, i32 noundef -32)
          to label %5669 unwind label %1024

5669:                                             ; preds = %5664
  %5670 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %16, i32 noundef 5)
          to label %5671 unwind label %1024

5671:                                             ; preds = %5669
  %5672 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 2)
          to label %5673 unwind label %1024

5673:                                             ; preds = %5671
  %5674 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %21, i32 noundef 0)
          to label %5675 unwind label %1024

5675:                                             ; preds = %5673
  %5676 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %23, i32 noundef 3)
          to label %5677 unwind label %1024

5677:                                             ; preds = %5675
  %5678 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %24, i32 noundef 9)
          to label %5679 unwind label %1024

5679:                                             ; preds = %5677
  %5680 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi4EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %22, i32 noundef 0)
          to label %5681 unwind label %1024

5681:                                             ; preds = %5679
  %5682 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %19, i32 noundef 0)
          to label %5683 unwind label %1024

5683:                                             ; preds = %5681
  store i8 0, ptr %14, align 1, !tbaa !9
  %5684 = 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 %5685 unwind label %1024

5685:                                             ; preds = %5683
  %5686 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5684)
          to label %5687 unwind label %1024

5687:                                             ; preds = %5685
  %5688 = icmp ne i64 %5686, 0
  br i1 %5688, label %5689, label %5694

5689:                                             ; preds = %5687
  %5690 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 10)
          to label %5691 unwind label %1024

5691:                                             ; preds = %5689
  %5692 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 272)
          to label %5693 unwind label %1024

5693:                                             ; preds = %5691
  br label %5699

5694:                                             ; preds = %5687
  %5695 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 11)
          to label %5696 unwind label %1024

5696:                                             ; preds = %5694
  %5697 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 288)
          to label %5698 unwind label %1024

5698:                                             ; preds = %5696
  br label %5699

5699:                                             ; preds = %5698, %5693
  call void @llvm.lifetime.start.p0(i64 24, ptr %346) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %346, i32 noundef 10)
          to label %5700 unwind label %5735

5700:                                             ; preds = %5699
  %5701 = 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) %346)
          to label %5702 unwind label %5739

5702:                                             ; preds = %5700
  %5703 = 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) %5701)
          to label %5704 unwind label %5739

5704:                                             ; preds = %5702
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %346) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %346) #5
  %5705 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %5706 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5705, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5707 unwind label %1024

5707:                                             ; preds = %5704
  %5708 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %5709 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5708, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %5710 unwind label %1024

5710:                                             ; preds = %5707
  call void @llvm.lifetime.start.p0(i64 1, ptr %347) #5
  store i8 1, ptr %347, align 1, !tbaa !9
  %5711 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %5712 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5711, ptr noundef nonnull align 1 dereferenceable(1) %347)
          to label %5713 unwind label %5744

5713:                                             ; preds = %5710
  call void @llvm.lifetime.end.p0(i64 1, ptr %347) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %348) #5
  store i8 1, ptr %348, align 1, !tbaa !9
  %5714 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5715 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5714, ptr noundef nonnull align 1 dereferenceable(1) %348)
          to label %5716 unwind label %5748

5716:                                             ; preds = %5713
  call void @llvm.lifetime.end.p0(i64 1, ptr %348) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5717 unwind label %1024

5717:                                             ; preds = %5716
  br label %5718

5718:                                             ; preds = %5757, %5717
  br label %5719

5719:                                             ; preds = %5718
  %5720 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %5721 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %5720)
          to label %5722 unwind label %1024

5722:                                             ; preds = %5719
  %5723 = 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) %5721)
          to label %5724 unwind label %1024

5724:                                             ; preds = %5722
  call void @llvm.lifetime.start.p0(i64 1, ptr %349) #5
  store i8 0, ptr %349, align 1, !tbaa !9
  %5725 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5726 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5725, ptr noundef nonnull align 1 dereferenceable(1) %349)
          to label %5727 unwind label %5752

5727:                                             ; preds = %5724
  call void @llvm.lifetime.end.p0(i64 1, ptr %349) #5
  %5728 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %5729 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5728)
          to label %5730 unwind label %1024

5730:                                             ; preds = %5727
  %5731 = load i8, ptr %5729, align 1, !tbaa !9, !range !11, !noundef !12
  %5732 = trunc i8 %5731 to i1
  br i1 %5732, label %5733, label %5756

5733:                                             ; preds = %5730
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5734 unwind label %1024

5734:                                             ; preds = %5733
  br label %5758

5735:                                             ; preds = %5699
  %5736 = landingpad { ptr, i32 }
          cleanup
  %5737 = extractvalue { ptr, i32 } %5736, 0
  store ptr %5737, ptr %5, align 8
  %5738 = extractvalue { ptr, i32 } %5736, 1
  store i32 %5738, ptr %6, align 4
  br label %5743

5739:                                             ; preds = %5702, %5700
  %5740 = landingpad { ptr, i32 }
          cleanup
  %5741 = extractvalue { ptr, i32 } %5740, 0
  store ptr %5741, ptr %5, align 8
  %5742 = extractvalue { ptr, i32 } %5740, 1
  store i32 %5742, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %346) #5
  br label %5743

5743:                                             ; preds = %5739, %5735
  call void @llvm.lifetime.end.p0(i64 24, ptr %346) #5
  br label %11991

5744:                                             ; preds = %5710
  %5745 = landingpad { ptr, i32 }
          cleanup
  %5746 = extractvalue { ptr, i32 } %5745, 0
  store ptr %5746, ptr %5, align 8
  %5747 = extractvalue { ptr, i32 } %5745, 1
  store i32 %5747, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %347) #5
  br label %11991

5748:                                             ; preds = %5713
  %5749 = landingpad { ptr, i32 }
          cleanup
  %5750 = extractvalue { ptr, i32 } %5749, 0
  store ptr %5750, ptr %5, align 8
  %5751 = extractvalue { ptr, i32 } %5749, 1
  store i32 %5751, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %348) #5
  br label %11991

5752:                                             ; preds = %5724
  %5753 = landingpad { ptr, i32 }
          cleanup
  %5754 = extractvalue { ptr, i32 } %5753, 0
  store ptr %5754, ptr %5, align 8
  %5755 = extractvalue { ptr, i32 } %5753, 1
  store i32 %5755, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %349) #5
  br label %11991

5756:                                             ; preds = %5730
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5757 unwind label %1024

5757:                                             ; preds = %5756
  br label %5718, !llvm.loop !81

5758:                                             ; preds = %5734
  %5759 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 11
  %5760 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %5759)
          to label %5761 unwind label %1024

5761:                                             ; preds = %5758
  %5762 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %5760, i32 noundef 3)
          to label %5763 unwind label %1024

5763:                                             ; preds = %5761
  %5764 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5762)
          to label %5765 unwind label %1024

5765:                                             ; preds = %5763
  %5766 = icmp ne i64 %5764, 0
  br i1 %5766, label %5767, label %5770

5767:                                             ; preds = %5765
  %5768 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 4096)
          to label %5769 unwind label %1024

5769:                                             ; preds = %5767
  br label %5773

5770:                                             ; preds = %5765
  %5771 = 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 %5772 unwind label %1024

5772:                                             ; preds = %5770
  br label %5773

5773:                                             ; preds = %5772, %5769
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5774 unwind label %1024

5774:                                             ; preds = %5773
  %5775 = 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 %5776 unwind label %1024

5776:                                             ; preds = %5774
  %5777 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %37)
          to label %5778 unwind label %1024

5778:                                             ; preds = %5776
  %5779 = trunc i64 %5777 to i32
  switch i32 %5779, label %7474 [
    i32 0, label %5780
    i32 1, label %5854
    i32 2, label %5911
    i32 3, label %5968
    i32 4, label %6045
    i32 5, label %6158
    i32 6, label %6271
    i32 7, label %6384
    i32 8, label %6520
    i32 9, label %6633
    i32 10, label %6726
    i32 -1, label %6864
  ]

5780:                                             ; preds = %5778
  call void @llvm.lifetime.start.p0(i64 24, ptr %350) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %350, i32 noundef 24)
          to label %5781 unwind label %5821

5781:                                             ; preds = %5780
  %5782 = 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) %350)
          to label %5783 unwind label %5825

5783:                                             ; preds = %5781
  %5784 = 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) %5782)
          to label %5785 unwind label %5825

5785:                                             ; preds = %5783
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %350) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %350) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %351) #5
  invoke void @_ZN5sc_dt6sc_intILi10EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %351, i32 noundef 256)
          to label %5786 unwind label %5830

5786:                                             ; preds = %5785
  %5787 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 7
  %5788 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5787)
          to label %5789 unwind label %5834

5789:                                             ; preds = %5786
  %5790 = load i8, ptr %5788, align 1, !tbaa !9, !range !11, !noundef !12
  %5791 = trunc i8 %5790 to i1
  %5792 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8) %351, i1 noundef zeroext %5791)
          to label %5793 unwind label %5834

5793:                                             ; preds = %5789
  %5794 = 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) %5792)
          to label %5795 unwind label %5834

5795:                                             ; preds = %5793
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %351) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %351) #5
  %5796 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %5797 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5796, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5798 unwind label %1024

5798:                                             ; preds = %5795
  %5799 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %5800 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5799, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5801 unwind label %1024

5801:                                             ; preds = %5798
  call void @llvm.lifetime.start.p0(i64 1, ptr %352) #5
  store i8 0, ptr %352, align 1, !tbaa !9
  %5802 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %5803 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5802, ptr noundef nonnull align 1 dereferenceable(1) %352)
          to label %5804 unwind label %5839

5804:                                             ; preds = %5801
  call void @llvm.lifetime.end.p0(i64 1, ptr %352) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %353) #5
  store i8 1, ptr %353, align 1, !tbaa !9
  %5805 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5806 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5805, ptr noundef nonnull align 1 dereferenceable(1) %353)
          to label %5807 unwind label %5843

5807:                                             ; preds = %5804
  call void @llvm.lifetime.end.p0(i64 1, ptr %353) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5808 unwind label %1024

5808:                                             ; preds = %5807
  br label %5809

5809:                                             ; preds = %5852, %5808
  br label %5810

5810:                                             ; preds = %5809
  call void @llvm.lifetime.start.p0(i64 1, ptr %354) #5
  store i8 0, ptr %354, align 1, !tbaa !9
  %5811 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5812 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5811, ptr noundef nonnull align 1 dereferenceable(1) %354)
          to label %5813 unwind label %5847

5813:                                             ; preds = %5810
  call void @llvm.lifetime.end.p0(i64 1, ptr %354) #5
  %5814 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %5815 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5814)
          to label %5816 unwind label %1024

5816:                                             ; preds = %5813
  %5817 = load i8, ptr %5815, align 1, !tbaa !9, !range !11, !noundef !12
  %5818 = trunc i8 %5817 to i1
  br i1 %5818, label %5819, label %5851

5819:                                             ; preds = %5816
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5820 unwind label %1024

5820:                                             ; preds = %5819
  br label %5853

5821:                                             ; preds = %5780
  %5822 = landingpad { ptr, i32 }
          cleanup
  %5823 = extractvalue { ptr, i32 } %5822, 0
  store ptr %5823, ptr %5, align 8
  %5824 = extractvalue { ptr, i32 } %5822, 1
  store i32 %5824, ptr %6, align 4
  br label %5829

5825:                                             ; preds = %5783, %5781
  %5826 = landingpad { ptr, i32 }
          cleanup
  %5827 = extractvalue { ptr, i32 } %5826, 0
  store ptr %5827, ptr %5, align 8
  %5828 = extractvalue { ptr, i32 } %5826, 1
  store i32 %5828, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %350) #5
  br label %5829

5829:                                             ; preds = %5825, %5821
  call void @llvm.lifetime.end.p0(i64 24, ptr %350) #5
  br label %11991

5830:                                             ; preds = %5785
  %5831 = landingpad { ptr, i32 }
          cleanup
  %5832 = extractvalue { ptr, i32 } %5831, 0
  store ptr %5832, ptr %5, align 8
  %5833 = extractvalue { ptr, i32 } %5831, 1
  store i32 %5833, ptr %6, align 4
  br label %5838

5834:                                             ; preds = %5793, %5789, %5786
  %5835 = landingpad { ptr, i32 }
          cleanup
  %5836 = extractvalue { ptr, i32 } %5835, 0
  store ptr %5836, ptr %5, align 8
  %5837 = extractvalue { ptr, i32 } %5835, 1
  store i32 %5837, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %351) #5
  br label %5838

5838:                                             ; preds = %5834, %5830
  call void @llvm.lifetime.end.p0(i64 24, ptr %351) #5
  br label %11991

5839:                                             ; preds = %5801
  %5840 = landingpad { ptr, i32 }
          cleanup
  %5841 = extractvalue { ptr, i32 } %5840, 0
  store ptr %5841, ptr %5, align 8
  %5842 = extractvalue { ptr, i32 } %5840, 1
  store i32 %5842, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %352) #5
  br label %11991

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
  call void @llvm.lifetime.end.p0(i64 1, ptr %353) #5
  br label %11991

5847:                                             ; preds = %5810
  %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 @llvm.lifetime.end.p0(i64 1, ptr %354) #5
  br label %11991

5851:                                             ; preds = %5816
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5852 unwind label %1024

5852:                                             ; preds = %5851
  br label %5809, !llvm.loop !82

5853:                                             ; preds = %5820
  br label %7478

5854:                                             ; preds = %5778
  call void @llvm.lifetime.start.p0(i64 24, ptr %355) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %355, i32 noundef 24)
          to label %5855 unwind label %5887

5855:                                             ; preds = %5854
  %5856 = 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) %355)
          to label %5857 unwind label %5891

5857:                                             ; preds = %5855
  %5858 = 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) %5856)
          to label %5859 unwind label %5891

5859:                                             ; preds = %5857
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %355) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %355) #5
  %5860 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 3)
          to label %5861 unwind label %1024

5861:                                             ; preds = %5859
  %5862 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %5863 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5862, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5864 unwind label %1024

5864:                                             ; preds = %5861
  %5865 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %5866 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5865, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5867 unwind label %1024

5867:                                             ; preds = %5864
  call void @llvm.lifetime.start.p0(i64 1, ptr %356) #5
  store i8 0, ptr %356, align 1, !tbaa !9
  %5868 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %5869 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5868, ptr noundef nonnull align 1 dereferenceable(1) %356)
          to label %5870 unwind label %5896

5870:                                             ; preds = %5867
  call void @llvm.lifetime.end.p0(i64 1, ptr %356) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %357) #5
  store i8 1, ptr %357, align 1, !tbaa !9
  %5871 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5872 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5871, ptr noundef nonnull align 1 dereferenceable(1) %357)
          to label %5873 unwind label %5900

5873:                                             ; preds = %5870
  call void @llvm.lifetime.end.p0(i64 1, ptr %357) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5874 unwind label %1024

5874:                                             ; preds = %5873
  br label %5875

5875:                                             ; preds = %5909, %5874
  br label %5876

5876:                                             ; preds = %5875
  call void @llvm.lifetime.start.p0(i64 1, ptr %358) #5
  store i8 0, ptr %358, align 1, !tbaa !9
  %5877 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5878 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5877, ptr noundef nonnull align 1 dereferenceable(1) %358)
          to label %5879 unwind label %5904

5879:                                             ; preds = %5876
  call void @llvm.lifetime.end.p0(i64 1, ptr %358) #5
  %5880 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %5881 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5880)
          to label %5882 unwind label %1024

5882:                                             ; preds = %5879
  %5883 = load i8, ptr %5881, align 1, !tbaa !9, !range !11, !noundef !12
  %5884 = trunc i8 %5883 to i1
  br i1 %5884, label %5885, label %5908

5885:                                             ; preds = %5882
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5886 unwind label %1024

5886:                                             ; preds = %5885
  br label %5910

5887:                                             ; preds = %5854
  %5888 = landingpad { ptr, i32 }
          cleanup
  %5889 = extractvalue { ptr, i32 } %5888, 0
  store ptr %5889, ptr %5, align 8
  %5890 = extractvalue { ptr, i32 } %5888, 1
  store i32 %5890, ptr %6, align 4
  br label %5895

5891:                                             ; preds = %5857, %5855
  %5892 = landingpad { ptr, i32 }
          cleanup
  %5893 = extractvalue { ptr, i32 } %5892, 0
  store ptr %5893, ptr %5, align 8
  %5894 = extractvalue { ptr, i32 } %5892, 1
  store i32 %5894, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %355) #5
  br label %5895

5895:                                             ; preds = %5891, %5887
  call void @llvm.lifetime.end.p0(i64 24, ptr %355) #5
  br label %11991

5896:                                             ; preds = %5867
  %5897 = landingpad { ptr, i32 }
          cleanup
  %5898 = extractvalue { ptr, i32 } %5897, 0
  store ptr %5898, ptr %5, align 8
  %5899 = extractvalue { ptr, i32 } %5897, 1
  store i32 %5899, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %356) #5
  br label %11991

5900:                                             ; preds = %5870
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %357) #5
  br label %11991

5904:                                             ; preds = %5876
  %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 @llvm.lifetime.end.p0(i64 1, ptr %358) #5
  br label %11991

5908:                                             ; preds = %5882
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5909 unwind label %1024

5909:                                             ; preds = %5908
  br label %5875, !llvm.loop !83

5910:                                             ; preds = %5886
  br label %7478

5911:                                             ; preds = %5778
  call void @llvm.lifetime.start.p0(i64 24, ptr %359) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %359, i32 noundef 24)
          to label %5912 unwind label %5944

5912:                                             ; preds = %5911
  %5913 = 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) %359)
          to label %5914 unwind label %5948

5914:                                             ; preds = %5912
  %5915 = 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) %5913)
          to label %5916 unwind label %5948

5916:                                             ; preds = %5914
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %359) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %359) #5
  %5917 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 32)
          to label %5918 unwind label %1024

5918:                                             ; preds = %5916
  %5919 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %5920 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5919, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5921 unwind label %1024

5921:                                             ; preds = %5918
  %5922 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %5923 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5922, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5924 unwind label %1024

5924:                                             ; preds = %5921
  call void @llvm.lifetime.start.p0(i64 1, ptr %360) #5
  store i8 0, ptr %360, align 1, !tbaa !9
  %5925 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %5926 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5925, ptr noundef nonnull align 1 dereferenceable(1) %360)
          to label %5927 unwind label %5953

5927:                                             ; preds = %5924
  call void @llvm.lifetime.end.p0(i64 1, ptr %360) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %361) #5
  store i8 1, ptr %361, align 1, !tbaa !9
  %5928 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5929 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5928, ptr noundef nonnull align 1 dereferenceable(1) %361)
          to label %5930 unwind label %5957

5930:                                             ; preds = %5927
  call void @llvm.lifetime.end.p0(i64 1, ptr %361) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5931 unwind label %1024

5931:                                             ; preds = %5930
  br label %5932

5932:                                             ; preds = %5966, %5931
  br label %5933

5933:                                             ; preds = %5932
  call void @llvm.lifetime.start.p0(i64 1, ptr %362) #5
  store i8 0, ptr %362, align 1, !tbaa !9
  %5934 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5935 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5934, ptr noundef nonnull align 1 dereferenceable(1) %362)
          to label %5936 unwind label %5961

5936:                                             ; preds = %5933
  call void @llvm.lifetime.end.p0(i64 1, ptr %362) #5
  %5937 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %5938 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5937)
          to label %5939 unwind label %1024

5939:                                             ; preds = %5936
  %5940 = load i8, ptr %5938, align 1, !tbaa !9, !range !11, !noundef !12
  %5941 = trunc i8 %5940 to i1
  br i1 %5941, label %5942, label %5965

5942:                                             ; preds = %5939
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5943 unwind label %1024

5943:                                             ; preds = %5942
  br label %5967

5944:                                             ; preds = %5911
  %5945 = landingpad { ptr, i32 }
          cleanup
  %5946 = extractvalue { ptr, i32 } %5945, 0
  store ptr %5946, ptr %5, align 8
  %5947 = extractvalue { ptr, i32 } %5945, 1
  store i32 %5947, ptr %6, align 4
  br label %5952

5948:                                             ; preds = %5914, %5912
  %5949 = landingpad { ptr, i32 }
          cleanup
  %5950 = extractvalue { ptr, i32 } %5949, 0
  store ptr %5950, ptr %5, align 8
  %5951 = extractvalue { ptr, i32 } %5949, 1
  store i32 %5951, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %359) #5
  br label %5952

5952:                                             ; preds = %5948, %5944
  call void @llvm.lifetime.end.p0(i64 24, ptr %359) #5
  br label %11991

5953:                                             ; preds = %5924
  %5954 = landingpad { ptr, i32 }
          cleanup
  %5955 = extractvalue { ptr, i32 } %5954, 0
  store ptr %5955, ptr %5, align 8
  %5956 = extractvalue { ptr, i32 } %5954, 1
  store i32 %5956, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %360) #5
  br label %11991

5957:                                             ; preds = %5927
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %361) #5
  br label %11991

5961:                                             ; preds = %5933
  %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 @llvm.lifetime.end.p0(i64 1, ptr %362) #5
  br label %11991

5965:                                             ; preds = %5939
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5966 unwind label %1024

5966:                                             ; preds = %5965
  br label %5932, !llvm.loop !84

5967:                                             ; preds = %5943
  br label %7478

5968:                                             ; preds = %5778
  call void @llvm.lifetime.start.p0(i64 24, ptr %363) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %363, i32 noundef 24)
          to label %5969 unwind label %6012

5969:                                             ; preds = %5968
  %5970 = 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) %363)
          to label %5971 unwind label %6016

5971:                                             ; preds = %5969
  %5972 = 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) %5970)
          to label %5973 unwind label %6016

5973:                                             ; preds = %5971
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %363) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %363) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %364) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %364, i32 noundef 0)
          to label %5974 unwind label %6021

5974:                                             ; preds = %5973
  %5975 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 5
  %5976 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %5975)
          to label %5977 unwind label %6025

5977:                                             ; preds = %5974
  %5978 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 6
  %5979 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi2EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %5978)
          to label %5980 unwind label %6025

5980:                                             ; preds = %5977
  %5981 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %5976, ptr noundef nonnull align 8 dereferenceable(8) %5979)
          to label %5982 unwind label %6025

5982:                                             ; preds = %5980
  %5983 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %364, ptr noundef nonnull align 8 dereferenceable(8) %5981)
          to label %5984 unwind label %6025

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) %3, ptr noundef nonnull align 1 dereferenceable(1) %5983)
          to label %5986 unwind label %6025

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
  %5987 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %5988 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5987, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5989 unwind label %1024

5989:                                             ; preds = %5986
  %5990 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %5991 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5990, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5992 unwind label %1024

5992:                                             ; preds = %5989
  call void @llvm.lifetime.start.p0(i64 1, ptr %365) #5
  store i8 0, ptr %365, align 1, !tbaa !9
  %5993 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %5994 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5993, ptr noundef nonnull align 1 dereferenceable(1) %365)
          to label %5995 unwind label %6030

5995:                                             ; preds = %5992
  call void @llvm.lifetime.end.p0(i64 1, ptr %365) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %366) #5
  store i8 1, ptr %366, align 1, !tbaa !9
  %5996 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %5997 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5996, ptr noundef nonnull align 1 dereferenceable(1) %366)
          to label %5998 unwind label %6034

5998:                                             ; preds = %5995
  call void @llvm.lifetime.end.p0(i64 1, ptr %366) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %5999 unwind label %1024

5999:                                             ; preds = %5998
  br label %6000

6000:                                             ; preds = %6043, %5999
  br label %6001

6001:                                             ; preds = %6000
  call void @llvm.lifetime.start.p0(i64 1, ptr %367) #5
  store i8 0, ptr %367, align 1, !tbaa !9
  %6002 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %6003 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6002, ptr noundef nonnull align 1 dereferenceable(1) %367)
          to label %6004 unwind label %6038

6004:                                             ; preds = %6001
  call void @llvm.lifetime.end.p0(i64 1, ptr %367) #5
  %6005 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %6006 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %6005)
          to label %6007 unwind label %1024

6007:                                             ; preds = %6004
  %6008 = load i8, ptr %6006, align 1, !tbaa !9, !range !11, !noundef !12
  %6009 = trunc i8 %6008 to i1
  br i1 %6009, label %6010, label %6042

6010:                                             ; preds = %6007
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6011 unwind label %1024

6011:                                             ; preds = %6010
  br label %6044

6012:                                             ; preds = %5968
  %6013 = landingpad { ptr, i32 }
          cleanup
  %6014 = extractvalue { ptr, i32 } %6013, 0
  store ptr %6014, ptr %5, align 8
  %6015 = extractvalue { ptr, i32 } %6013, 1
  store i32 %6015, ptr %6, align 4
  br label %6020

6016:                                             ; preds = %5971, %5969
  %6017 = landingpad { ptr, i32 }
          cleanup
  %6018 = extractvalue { ptr, i32 } %6017, 0
  store ptr %6018, ptr %5, align 8
  %6019 = extractvalue { ptr, i32 } %6017, 1
  store i32 %6019, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %363) #5
  br label %6020

6020:                                             ; preds = %6016, %6012
  call void @llvm.lifetime.end.p0(i64 24, ptr %363) #5
  br label %11991

6021:                                             ; preds = %5973
  %6022 = landingpad { ptr, i32 }
          cleanup
  %6023 = extractvalue { ptr, i32 } %6022, 0
  store ptr %6023, ptr %5, align 8
  %6024 = extractvalue { ptr, i32 } %6022, 1
  store i32 %6024, ptr %6, align 4
  br label %6029

6025:                                             ; preds = %5984, %5982, %5980, %5977, %5974
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %364) #5
  br label %6029

6029:                                             ; preds = %6025, %6021
  call void @llvm.lifetime.end.p0(i64 24, ptr %364) #5
  br label %11991

6030:                                             ; preds = %5992
  %6031 = landingpad { ptr, i32 }
          cleanup
  %6032 = extractvalue { ptr, i32 } %6031, 0
  store ptr %6032, ptr %5, align 8
  %6033 = extractvalue { ptr, i32 } %6031, 1
  store i32 %6033, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %365) #5
  br label %11991

6034:                                             ; preds = %5995
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %366) #5
  br label %11991

6038:                                             ; preds = %6001
  %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 @llvm.lifetime.end.p0(i64 1, ptr %367) #5
  br label %11991

6042:                                             ; preds = %6007
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6043 unwind label %1024

6043:                                             ; preds = %6042
  br label %6000, !llvm.loop !85

6044:                                             ; preds = %6011
  br label %7478

6045:                                             ; preds = %5778
  %6046 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 6)
          to label %6047 unwind label %1024

6047:                                             ; preds = %6045
  %6048 = 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 %6049 unwind label %1024

6049:                                             ; preds = %6047
  %6050 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %6048)
          to label %6051 unwind label %1024

6051:                                             ; preds = %6049
  br i1 %6050, label %6052, label %6066

6052:                                             ; preds = %6051
  call void @llvm.lifetime.start.p0(i64 24, ptr %368) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %368, i32 noundef 8)
          to label %6053 unwind label %6057

6053:                                             ; preds = %6052
  %6054 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %6055 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6054, ptr noundef nonnull align 8 dereferenceable(24) %368)
          to label %6056 unwind label %6061

6056:                                             ; preds = %6053
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %368) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %368) #5
  br label %6080

6057:                                             ; preds = %6052
  %6058 = landingpad { ptr, i32 }
          cleanup
  %6059 = extractvalue { ptr, i32 } %6058, 0
  store ptr %6059, ptr %5, align 8
  %6060 = extractvalue { ptr, i32 } %6058, 1
  store i32 %6060, ptr %6, align 4
  br label %6065

6061:                                             ; preds = %6053
  %6062 = landingpad { ptr, i32 }
          cleanup
  %6063 = extractvalue { ptr, i32 } %6062, 0
  store ptr %6063, ptr %5, align 8
  %6064 = extractvalue { ptr, i32 } %6062, 1
  store i32 %6064, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %368) #5
  br label %6065

6065:                                             ; preds = %6061, %6057
  call void @llvm.lifetime.end.p0(i64 24, ptr %368) #5
  br label %11991

6066:                                             ; preds = %6051
  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 16)
          to label %6067 unwind label %6071

6067:                                             ; preds = %6066
  %6068 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %6069 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6068, ptr noundef nonnull align 8 dereferenceable(24) %369)
          to label %6070 unwind label %6075

6070:                                             ; preds = %6067
  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 %6080

6071:                                             ; preds = %6066
  %6072 = landingpad { ptr, i32 }
          cleanup
  %6073 = extractvalue { ptr, i32 } %6072, 0
  store ptr %6073, ptr %5, align 8
  %6074 = extractvalue { ptr, i32 } %6072, 1
  store i32 %6074, ptr %6, align 4
  br label %6079

6075:                                             ; preds = %6067
  %6076 = landingpad { ptr, i32 }
          cleanup
  %6077 = extractvalue { ptr, i32 } %6076, 0
  store ptr %6077, ptr %5, align 8
  %6078 = extractvalue { ptr, i32 } %6076, 1
  store i32 %6078, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %369) #5
  br label %6079

6079:                                             ; preds = %6075, %6071
  call void @llvm.lifetime.end.p0(i64 24, ptr %369) #5
  br label %11991

6080:                                             ; preds = %6070, %6056
  call void @llvm.lifetime.start.p0(i64 24, ptr %370) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %371) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %371, i32 noundef 24)
          to label %6081 unwind label %6112

6081:                                             ; preds = %6080
  %6082 = 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) %371)
          to label %6083 unwind label %6116

6083:                                             ; preds = %6081
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %370, ptr noundef nonnull align 1 dereferenceable(1) %6082)
          to label %6084 unwind label %6116

6084:                                             ; preds = %6083
  %6085 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %6086 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6085, ptr noundef nonnull align 8 dereferenceable(24) %370)
          to label %6087 unwind label %6120

6087:                                             ; preds = %6084
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %370) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %371) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %371) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %370) #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 3)
          to label %6088 unwind label %6126

6088:                                             ; preds = %6087
  %6089 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %6090 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6089, ptr noundef nonnull align 8 dereferenceable(24) %372)
          to label %6091 unwind label %6130

6091:                                             ; preds = %6088
  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.start.p0(i64 24, ptr %373) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %373, i32 noundef 3)
          to label %6092 unwind label %6135

6092:                                             ; preds = %6091
  %6093 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %6094 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6093, ptr noundef nonnull align 8 dereferenceable(24) %373)
          to label %6095 unwind label %6139

6095:                                             ; preds = %6092
  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
  %6096 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %6097 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6096, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6098 unwind label %1024

6098:                                             ; preds = %6095
  call void @llvm.lifetime.start.p0(i64 1, ptr %374) #5
  store i8 1, ptr %374, align 1, !tbaa !9
  %6099 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6100 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6099, ptr noundef nonnull align 1 dereferenceable(1) %374)
          to label %6101 unwind label %6144

6101:                                             ; preds = %6098
  call void @llvm.lifetime.end.p0(i64 1, ptr %374) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6102 unwind label %1024

6102:                                             ; preds = %6101
  br label %6103

6103:                                             ; preds = %6111, %6102
  %6104 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %6105 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6104)
          to label %6106 unwind label %1024

6106:                                             ; preds = %6103
  %6107 = load i8, ptr %6105, align 1, !tbaa !9, !range !11, !noundef !12
  %6108 = trunc i8 %6107 to i1
  %6109 = xor i1 %6108, true
  br i1 %6109, label %6110, label %6148

6110:                                             ; preds = %6106
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6111 unwind label %1024

6111:                                             ; preds = %6110
  br label %6103, !llvm.loop !86

6112:                                             ; preds = %6080
  %6113 = landingpad { ptr, i32 }
          cleanup
  %6114 = extractvalue { ptr, i32 } %6113, 0
  store ptr %6114, ptr %5, align 8
  %6115 = extractvalue { ptr, i32 } %6113, 1
  store i32 %6115, ptr %6, align 4
  br label %6125

6116:                                             ; preds = %6083, %6081
  %6117 = landingpad { ptr, i32 }
          cleanup
  %6118 = extractvalue { ptr, i32 } %6117, 0
  store ptr %6118, ptr %5, align 8
  %6119 = extractvalue { ptr, i32 } %6117, 1
  store i32 %6119, ptr %6, align 4
  br label %6124

6120:                                             ; preds = %6084
  %6121 = landingpad { ptr, i32 }
          cleanup
  %6122 = extractvalue { ptr, i32 } %6121, 0
  store ptr %6122, ptr %5, align 8
  %6123 = extractvalue { ptr, i32 } %6121, 1
  store i32 %6123, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %370) #5
  br label %6124

6124:                                             ; preds = %6120, %6116
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %371) #5
  br label %6125

6125:                                             ; preds = %6124, %6112
  call void @llvm.lifetime.end.p0(i64 24, ptr %371) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %370) #5
  br label %11991

6126:                                             ; preds = %6087
  %6127 = landingpad { ptr, i32 }
          cleanup
  %6128 = extractvalue { ptr, i32 } %6127, 0
  store ptr %6128, ptr %5, align 8
  %6129 = extractvalue { ptr, i32 } %6127, 1
  store i32 %6129, ptr %6, align 4
  br label %6134

6130:                                             ; preds = %6088
  %6131 = landingpad { ptr, i32 }
          cleanup
  %6132 = extractvalue { ptr, i32 } %6131, 0
  store ptr %6132, ptr %5, align 8
  %6133 = extractvalue { ptr, i32 } %6131, 1
  store i32 %6133, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %372) #5
  br label %6134

6134:                                             ; preds = %6130, %6126
  call void @llvm.lifetime.end.p0(i64 24, ptr %372) #5
  br label %11991

6135:                                             ; preds = %6091
  %6136 = landingpad { ptr, i32 }
          cleanup
  %6137 = extractvalue { ptr, i32 } %6136, 0
  store ptr %6137, ptr %5, align 8
  %6138 = extractvalue { ptr, i32 } %6136, 1
  store i32 %6138, ptr %6, align 4
  br label %6143

6139:                                             ; preds = %6092
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %373) #5
  br label %6143

6143:                                             ; preds = %6139, %6135
  call void @llvm.lifetime.end.p0(i64 24, ptr %373) #5
  br label %11991

6144:                                             ; preds = %6098
  %6145 = landingpad { ptr, i32 }
          cleanup
  %6146 = extractvalue { ptr, i32 } %6145, 0
  store ptr %6146, ptr %5, align 8
  %6147 = extractvalue { ptr, i32 } %6145, 1
  store i32 %6147, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %374) #5
  br label %11991

6148:                                             ; preds = %6106
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6149 unwind label %1024

6149:                                             ; preds = %6148
  call void @llvm.lifetime.start.p0(i64 1, ptr %375) #5
  store i8 0, ptr %375, align 1, !tbaa !9
  %6150 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6151 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6150, ptr noundef nonnull align 1 dereferenceable(1) %375)
          to label %6152 unwind label %6154

6152:                                             ; preds = %6149
  call void @llvm.lifetime.end.p0(i64 1, ptr %375) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6153 unwind label %1024

6153:                                             ; preds = %6152
  br label %7478

6154:                                             ; preds = %6149
  %6155 = landingpad { ptr, i32 }
          cleanup
  %6156 = extractvalue { ptr, i32 } %6155, 0
  store ptr %6156, ptr %5, align 8
  %6157 = extractvalue { ptr, i32 } %6155, 1
  store i32 %6157, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %375) #5
  br label %11991

6158:                                             ; preds = %5778
  %6159 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 64)
          to label %6160 unwind label %1024

6160:                                             ; preds = %6158
  %6161 = 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 %6162 unwind label %1024

6162:                                             ; preds = %6160
  %6163 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %6161)
          to label %6164 unwind label %1024

6164:                                             ; preds = %6162
  br i1 %6163, label %6165, label %6179

6165:                                             ; preds = %6164
  call void @llvm.lifetime.start.p0(i64 24, ptr %376) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %376, i32 noundef 64)
          to label %6166 unwind label %6170

6166:                                             ; preds = %6165
  %6167 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %6168 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6167, ptr noundef nonnull align 8 dereferenceable(24) %376)
          to label %6169 unwind label %6174

6169:                                             ; preds = %6166
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %376) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %376) #5
  br label %6193

6170:                                             ; preds = %6165
  %6171 = landingpad { ptr, i32 }
          cleanup
  %6172 = extractvalue { ptr, i32 } %6171, 0
  store ptr %6172, ptr %5, align 8
  %6173 = extractvalue { ptr, i32 } %6171, 1
  store i32 %6173, ptr %6, align 4
  br label %6178

6174:                                             ; preds = %6166
  %6175 = landingpad { ptr, i32 }
          cleanup
  %6176 = extractvalue { ptr, i32 } %6175, 0
  store ptr %6176, ptr %5, align 8
  %6177 = extractvalue { ptr, i32 } %6175, 1
  store i32 %6177, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %376) #5
  br label %6178

6178:                                             ; preds = %6174, %6170
  call void @llvm.lifetime.end.p0(i64 24, ptr %376) #5
  br label %11991

6179:                                             ; preds = %6164
  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 96)
          to label %6180 unwind label %6184

6180:                                             ; preds = %6179
  %6181 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %6182 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6181, ptr noundef nonnull align 8 dereferenceable(24) %377)
          to label %6183 unwind label %6188

6183:                                             ; preds = %6180
  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 %6193

6184:                                             ; preds = %6179
  %6185 = landingpad { ptr, i32 }
          cleanup
  %6186 = extractvalue { ptr, i32 } %6185, 0
  store ptr %6186, ptr %5, align 8
  %6187 = extractvalue { ptr, i32 } %6185, 1
  store i32 %6187, ptr %6, align 4
  br label %6192

6188:                                             ; preds = %6180
  %6189 = landingpad { ptr, i32 }
          cleanup
  %6190 = extractvalue { ptr, i32 } %6189, 0
  store ptr %6190, ptr %5, align 8
  %6191 = extractvalue { ptr, i32 } %6189, 1
  store i32 %6191, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %377) #5
  br label %6192

6192:                                             ; preds = %6188, %6184
  call void @llvm.lifetime.end.p0(i64 24, ptr %377) #5
  br label %11991

6193:                                             ; preds = %6183, %6169
  call void @llvm.lifetime.start.p0(i64 24, ptr %378) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %379) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %379, i32 noundef 24)
          to label %6194 unwind label %6225

6194:                                             ; preds = %6193
  %6195 = 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) %379)
          to label %6196 unwind label %6229

6196:                                             ; preds = %6194
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %378, ptr noundef nonnull align 1 dereferenceable(1) %6195)
          to label %6197 unwind label %6229

6197:                                             ; preds = %6196
  %6198 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %6199 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6198, ptr noundef nonnull align 8 dereferenceable(24) %378)
          to label %6200 unwind label %6233

6200:                                             ; preds = %6197
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %378) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %379) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %379) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %378) #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 32)
          to label %6201 unwind label %6239

6201:                                             ; preds = %6200
  %6202 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %6203 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6202, ptr noundef nonnull align 8 dereferenceable(24) %380)
          to label %6204 unwind label %6243

6204:                                             ; preds = %6201
  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.start.p0(i64 24, ptr %381) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %381, i32 noundef 3)
          to label %6205 unwind label %6248

6205:                                             ; preds = %6204
  %6206 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %6207 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6206, ptr noundef nonnull align 8 dereferenceable(24) %381)
          to label %6208 unwind label %6252

6208:                                             ; preds = %6205
  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
  %6209 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %6210 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6209, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6211 unwind label %1024

6211:                                             ; preds = %6208
  call void @llvm.lifetime.start.p0(i64 1, ptr %382) #5
  store i8 1, ptr %382, align 1, !tbaa !9
  %6212 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6213 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6212, ptr noundef nonnull align 1 dereferenceable(1) %382)
          to label %6214 unwind label %6257

6214:                                             ; preds = %6211
  call void @llvm.lifetime.end.p0(i64 1, ptr %382) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6215 unwind label %1024

6215:                                             ; preds = %6214
  br label %6216

6216:                                             ; preds = %6224, %6215
  %6217 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %6218 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6217)
          to label %6219 unwind label %1024

6219:                                             ; preds = %6216
  %6220 = load i8, ptr %6218, align 1, !tbaa !9, !range !11, !noundef !12
  %6221 = trunc i8 %6220 to i1
  %6222 = xor i1 %6221, true
  br i1 %6222, label %6223, label %6261

6223:                                             ; preds = %6219
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6224 unwind label %1024

6224:                                             ; preds = %6223
  br label %6216, !llvm.loop !87

6225:                                             ; preds = %6193
  %6226 = landingpad { ptr, i32 }
          cleanup
  %6227 = extractvalue { ptr, i32 } %6226, 0
  store ptr %6227, ptr %5, align 8
  %6228 = extractvalue { ptr, i32 } %6226, 1
  store i32 %6228, ptr %6, align 4
  br label %6238

6229:                                             ; preds = %6196, %6194
  %6230 = landingpad { ptr, i32 }
          cleanup
  %6231 = extractvalue { ptr, i32 } %6230, 0
  store ptr %6231, ptr %5, align 8
  %6232 = extractvalue { ptr, i32 } %6230, 1
  store i32 %6232, ptr %6, align 4
  br label %6237

6233:                                             ; preds = %6197
  %6234 = landingpad { ptr, i32 }
          cleanup
  %6235 = extractvalue { ptr, i32 } %6234, 0
  store ptr %6235, ptr %5, align 8
  %6236 = extractvalue { ptr, i32 } %6234, 1
  store i32 %6236, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %378) #5
  br label %6237

6237:                                             ; preds = %6233, %6229
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %379) #5
  br label %6238

6238:                                             ; preds = %6237, %6225
  call void @llvm.lifetime.end.p0(i64 24, ptr %379) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %378) #5
  br label %11991

6239:                                             ; preds = %6200
  %6240 = landingpad { ptr, i32 }
          cleanup
  %6241 = extractvalue { ptr, i32 } %6240, 0
  store ptr %6241, ptr %5, align 8
  %6242 = extractvalue { ptr, i32 } %6240, 1
  store i32 %6242, ptr %6, align 4
  br label %6247

6243:                                             ; preds = %6201
  %6244 = landingpad { ptr, i32 }
          cleanup
  %6245 = extractvalue { ptr, i32 } %6244, 0
  store ptr %6245, ptr %5, align 8
  %6246 = extractvalue { ptr, i32 } %6244, 1
  store i32 %6246, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %380) #5
  br label %6247

6247:                                             ; preds = %6243, %6239
  call void @llvm.lifetime.end.p0(i64 24, ptr %380) #5
  br label %11991

6248:                                             ; preds = %6204
  %6249 = landingpad { ptr, i32 }
          cleanup
  %6250 = extractvalue { ptr, i32 } %6249, 0
  store ptr %6250, ptr %5, align 8
  %6251 = extractvalue { ptr, i32 } %6249, 1
  store i32 %6251, ptr %6, align 4
  br label %6256

6252:                                             ; preds = %6205
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %381) #5
  br label %6256

6256:                                             ; preds = %6252, %6248
  call void @llvm.lifetime.end.p0(i64 24, ptr %381) #5
  br label %11991

6257:                                             ; preds = %6211
  %6258 = landingpad { ptr, i32 }
          cleanup
  %6259 = extractvalue { ptr, i32 } %6258, 0
  store ptr %6259, ptr %5, align 8
  %6260 = extractvalue { ptr, i32 } %6258, 1
  store i32 %6260, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %382) #5
  br label %11991

6261:                                             ; preds = %6219
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6262 unwind label %1024

6262:                                             ; preds = %6261
  call void @llvm.lifetime.start.p0(i64 1, ptr %383) #5
  store i8 0, ptr %383, align 1, !tbaa !9
  %6263 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6264 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6263, ptr noundef nonnull align 1 dereferenceable(1) %383)
          to label %6265 unwind label %6267

6265:                                             ; preds = %6262
  call void @llvm.lifetime.end.p0(i64 1, ptr %383) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6266 unwind label %1024

6266:                                             ; preds = %6265
  br label %7478

6267:                                             ; preds = %6262
  %6268 = landingpad { ptr, i32 }
          cleanup
  %6269 = extractvalue { ptr, i32 } %6268, 0
  store ptr %6269, ptr %5, align 8
  %6270 = extractvalue { ptr, i32 } %6268, 1
  store i32 %6270, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %383) #5
  br label %11991

6271:                                             ; preds = %5778
  %6272 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 64)
          to label %6273 unwind label %1024

6273:                                             ; preds = %6271
  %6274 = 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 %6275 unwind label %1024

6275:                                             ; preds = %6273
  %6276 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %6274)
          to label %6277 unwind label %1024

6277:                                             ; preds = %6275
  br i1 %6276, label %6278, label %6292

6278:                                             ; preds = %6277
  call void @llvm.lifetime.start.p0(i64 24, ptr %384) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %384, i32 noundef 128)
          to label %6279 unwind label %6283

6279:                                             ; preds = %6278
  %6280 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %6281 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6280, ptr noundef nonnull align 8 dereferenceable(24) %384)
          to label %6282 unwind label %6287

6282:                                             ; preds = %6279
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %384) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %384) #5
  br label %6306

6283:                                             ; preds = %6278
  %6284 = landingpad { ptr, i32 }
          cleanup
  %6285 = extractvalue { ptr, i32 } %6284, 0
  store ptr %6285, ptr %5, align 8
  %6286 = extractvalue { ptr, i32 } %6284, 1
  store i32 %6286, ptr %6, align 4
  br label %6291

6287:                                             ; preds = %6279
  %6288 = landingpad { ptr, i32 }
          cleanup
  %6289 = extractvalue { ptr, i32 } %6288, 0
  store ptr %6289, ptr %5, align 8
  %6290 = extractvalue { ptr, i32 } %6288, 1
  store i32 %6290, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %384) #5
  br label %6291

6291:                                             ; preds = %6287, %6283
  call void @llvm.lifetime.end.p0(i64 24, ptr %384) #5
  br label %11991

6292:                                             ; preds = %6277
  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 160)
          to label %6293 unwind label %6297

6293:                                             ; preds = %6292
  %6294 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %6295 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6294, ptr noundef nonnull align 8 dereferenceable(24) %385)
          to label %6296 unwind label %6301

6296:                                             ; preds = %6293
  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 %6306

6297:                                             ; preds = %6292
  %6298 = landingpad { ptr, i32 }
          cleanup
  %6299 = extractvalue { ptr, i32 } %6298, 0
  store ptr %6299, ptr %5, align 8
  %6300 = extractvalue { ptr, i32 } %6298, 1
  store i32 %6300, ptr %6, align 4
  br label %6305

6301:                                             ; preds = %6293
  %6302 = landingpad { ptr, i32 }
          cleanup
  %6303 = extractvalue { ptr, i32 } %6302, 0
  store ptr %6303, ptr %5, align 8
  %6304 = extractvalue { ptr, i32 } %6302, 1
  store i32 %6304, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %385) #5
  br label %6305

6305:                                             ; preds = %6301, %6297
  call void @llvm.lifetime.end.p0(i64 24, ptr %385) #5
  br label %11991

6306:                                             ; preds = %6296, %6282
  call void @llvm.lifetime.start.p0(i64 24, ptr %386) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %387) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %387, i32 noundef 24)
          to label %6307 unwind label %6338

6307:                                             ; preds = %6306
  %6308 = 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) %387)
          to label %6309 unwind label %6342

6309:                                             ; preds = %6307
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %386, ptr noundef nonnull align 1 dereferenceable(1) %6308)
          to label %6310 unwind label %6342

6310:                                             ; preds = %6309
  %6311 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %6312 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6311, ptr noundef nonnull align 8 dereferenceable(24) %386)
          to label %6313 unwind label %6346

6313:                                             ; preds = %6310
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %386) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %387) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %387) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %386) #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 32)
          to label %6314 unwind label %6352

6314:                                             ; preds = %6313
  %6315 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %6316 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6315, ptr noundef nonnull align 8 dereferenceable(24) %388)
          to label %6317 unwind label %6356

6317:                                             ; preds = %6314
  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.start.p0(i64 24, ptr %389) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %389, i32 noundef 3)
          to label %6318 unwind label %6361

6318:                                             ; preds = %6317
  %6319 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %6320 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6319, ptr noundef nonnull align 8 dereferenceable(24) %389)
          to label %6321 unwind label %6365

6321:                                             ; preds = %6318
  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
  %6322 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %6323 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6322, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6324 unwind label %1024

6324:                                             ; preds = %6321
  call void @llvm.lifetime.start.p0(i64 1, ptr %390) #5
  store i8 1, ptr %390, align 1, !tbaa !9
  %6325 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6326 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6325, ptr noundef nonnull align 1 dereferenceable(1) %390)
          to label %6327 unwind label %6370

6327:                                             ; preds = %6324
  call void @llvm.lifetime.end.p0(i64 1, ptr %390) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6328 unwind label %1024

6328:                                             ; preds = %6327
  br label %6329

6329:                                             ; preds = %6337, %6328
  %6330 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %6331 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6330)
          to label %6332 unwind label %1024

6332:                                             ; preds = %6329
  %6333 = load i8, ptr %6331, align 1, !tbaa !9, !range !11, !noundef !12
  %6334 = trunc i8 %6333 to i1
  %6335 = xor i1 %6334, true
  br i1 %6335, label %6336, label %6374

6336:                                             ; preds = %6332
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6337 unwind label %1024

6337:                                             ; preds = %6336
  br label %6329, !llvm.loop !88

6338:                                             ; preds = %6306
  %6339 = landingpad { ptr, i32 }
          cleanup
  %6340 = extractvalue { ptr, i32 } %6339, 0
  store ptr %6340, ptr %5, align 8
  %6341 = extractvalue { ptr, i32 } %6339, 1
  store i32 %6341, ptr %6, align 4
  br label %6351

6342:                                             ; preds = %6309, %6307
  %6343 = landingpad { ptr, i32 }
          cleanup
  %6344 = extractvalue { ptr, i32 } %6343, 0
  store ptr %6344, ptr %5, align 8
  %6345 = extractvalue { ptr, i32 } %6343, 1
  store i32 %6345, ptr %6, align 4
  br label %6350

6346:                                             ; preds = %6310
  %6347 = landingpad { ptr, i32 }
          cleanup
  %6348 = extractvalue { ptr, i32 } %6347, 0
  store ptr %6348, ptr %5, align 8
  %6349 = extractvalue { ptr, i32 } %6347, 1
  store i32 %6349, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %386) #5
  br label %6350

6350:                                             ; preds = %6346, %6342
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %387) #5
  br label %6351

6351:                                             ; preds = %6350, %6338
  call void @llvm.lifetime.end.p0(i64 24, ptr %387) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %386) #5
  br label %11991

6352:                                             ; preds = %6313
  %6353 = landingpad { ptr, i32 }
          cleanup
  %6354 = extractvalue { ptr, i32 } %6353, 0
  store ptr %6354, ptr %5, align 8
  %6355 = extractvalue { ptr, i32 } %6353, 1
  store i32 %6355, ptr %6, align 4
  br label %6360

6356:                                             ; preds = %6314
  %6357 = landingpad { ptr, i32 }
          cleanup
  %6358 = extractvalue { ptr, i32 } %6357, 0
  store ptr %6358, ptr %5, align 8
  %6359 = extractvalue { ptr, i32 } %6357, 1
  store i32 %6359, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %388) #5
  br label %6360

6360:                                             ; preds = %6356, %6352
  call void @llvm.lifetime.end.p0(i64 24, ptr %388) #5
  br label %11991

6361:                                             ; preds = %6317
  %6362 = landingpad { ptr, i32 }
          cleanup
  %6363 = extractvalue { ptr, i32 } %6362, 0
  store ptr %6363, ptr %5, align 8
  %6364 = extractvalue { ptr, i32 } %6362, 1
  store i32 %6364, ptr %6, align 4
  br label %6369

6365:                                             ; preds = %6318
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %389) #5
  br label %6369

6369:                                             ; preds = %6365, %6361
  call void @llvm.lifetime.end.p0(i64 24, ptr %389) #5
  br label %11991

6370:                                             ; preds = %6324
  %6371 = landingpad { ptr, i32 }
          cleanup
  %6372 = extractvalue { ptr, i32 } %6371, 0
  store ptr %6372, ptr %5, align 8
  %6373 = extractvalue { ptr, i32 } %6371, 1
  store i32 %6373, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %390) #5
  br label %11991

6374:                                             ; preds = %6332
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6375 unwind label %1024

6375:                                             ; preds = %6374
  call void @llvm.lifetime.start.p0(i64 1, ptr %391) #5
  store i8 0, ptr %391, align 1, !tbaa !9
  %6376 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6377 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6376, ptr noundef nonnull align 1 dereferenceable(1) %391)
          to label %6378 unwind label %6380

6378:                                             ; preds = %6375
  call void @llvm.lifetime.end.p0(i64 1, ptr %391) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6379 unwind label %1024

6379:                                             ; preds = %6378
  br label %7478

6380:                                             ; preds = %6375
  %6381 = landingpad { ptr, i32 }
          cleanup
  %6382 = extractvalue { ptr, i32 } %6381, 0
  store ptr %6382, ptr %5, align 8
  %6383 = extractvalue { ptr, i32 } %6381, 1
  store i32 %6383, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %391) #5
  br label %11991

6384:                                             ; preds = %5778
  %6385 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 7
  %6386 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6385)
          to label %6387 unwind label %1024

6387:                                             ; preds = %6384
  %6388 = load i8, ptr %6386, align 1, !tbaa !9, !range !11, !noundef !12
  %6389 = trunc i8 %6388 to i1
  br i1 %6389, label %6406, label %6390

6390:                                             ; preds = %6387
  %6391 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 12)
          to label %6392 unwind label %1024

6392:                                             ; preds = %6390
  call void @llvm.lifetime.start.p0(i64 24, ptr %392) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %392, i32 noundef 6)
          to label %6393 unwind label %6397

6393:                                             ; preds = %6392
  %6394 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %6395 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6394, ptr noundef nonnull align 8 dereferenceable(24) %392)
          to label %6396 unwind label %6401

6396:                                             ; preds = %6393
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %392) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %392) #5
  br label %6422

6397:                                             ; preds = %6392
  %6398 = landingpad { ptr, i32 }
          cleanup
  %6399 = extractvalue { ptr, i32 } %6398, 0
  store ptr %6399, ptr %5, align 8
  %6400 = extractvalue { ptr, i32 } %6398, 1
  store i32 %6400, ptr %6, align 4
  br label %6405

6401:                                             ; preds = %6393
  %6402 = landingpad { ptr, i32 }
          cleanup
  %6403 = extractvalue { ptr, i32 } %6402, 0
  store ptr %6403, ptr %5, align 8
  %6404 = extractvalue { ptr, i32 } %6402, 1
  store i32 %6404, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %392) #5
  br label %6405

6405:                                             ; preds = %6401, %6397
  call void @llvm.lifetime.end.p0(i64 24, ptr %392) #5
  br label %11991

6406:                                             ; preds = %6387
  %6407 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 8)
          to label %6408 unwind label %1024

6408:                                             ; preds = %6406
  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 4)
          to label %6409 unwind label %6413

6409:                                             ; preds = %6408
  %6410 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %6411 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6410, ptr noundef nonnull align 8 dereferenceable(24) %393)
          to label %6412 unwind label %6417

6412:                                             ; preds = %6409
  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 %6422

6413:                                             ; preds = %6408
  %6414 = landingpad { ptr, i32 }
          cleanup
  %6415 = extractvalue { ptr, i32 } %6414, 0
  store ptr %6415, ptr %5, align 8
  %6416 = extractvalue { ptr, i32 } %6414, 1
  store i32 %6416, ptr %6, align 4
  br label %6421

6417:                                             ; preds = %6409
  %6418 = landingpad { ptr, i32 }
          cleanup
  %6419 = extractvalue { ptr, i32 } %6418, 0
  store ptr %6419, ptr %5, align 8
  %6420 = extractvalue { ptr, i32 } %6418, 1
  store i32 %6420, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %393) #5
  br label %6421

6421:                                             ; preds = %6417, %6413
  call void @llvm.lifetime.end.p0(i64 24, ptr %393) #5
  br label %11991

6422:                                             ; preds = %6412, %6396
  %6423 = 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 %6424 unwind label %1024

6424:                                             ; preds = %6422
  %6425 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %6423)
          to label %6426 unwind label %1024

6426:                                             ; preds = %6424
  br i1 %6425, label %6427, label %6441

6427:                                             ; preds = %6426
  call void @llvm.lifetime.start.p0(i64 24, ptr %394) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %394, i32 noundef 32)
          to label %6428 unwind label %6432

6428:                                             ; preds = %6427
  %6429 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %6430 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6429, ptr noundef nonnull align 8 dereferenceable(24) %394)
          to label %6431 unwind label %6436

6431:                                             ; preds = %6428
  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 %6455

6432:                                             ; preds = %6427
  %6433 = landingpad { ptr, i32 }
          cleanup
  %6434 = extractvalue { ptr, i32 } %6433, 0
  store ptr %6434, ptr %5, align 8
  %6435 = extractvalue { ptr, i32 } %6433, 1
  store i32 %6435, ptr %6, align 4
  br label %6440

6436:                                             ; preds = %6428
  %6437 = landingpad { ptr, i32 }
          cleanup
  %6438 = extractvalue { ptr, i32 } %6437, 0
  store ptr %6438, ptr %5, align 8
  %6439 = extractvalue { ptr, i32 } %6437, 1
  store i32 %6439, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %394) #5
  br label %6440

6440:                                             ; preds = %6436, %6432
  call void @llvm.lifetime.end.p0(i64 24, ptr %394) #5
  br label %11991

6441:                                             ; preds = %6426
  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 48)
          to label %6442 unwind label %6446

6442:                                             ; preds = %6441
  %6443 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %6444 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6443, ptr noundef nonnull align 8 dereferenceable(24) %395)
          to label %6445 unwind label %6450

6445:                                             ; preds = %6442
  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 %6455

6446:                                             ; preds = %6441
  %6447 = landingpad { ptr, i32 }
          cleanup
  %6448 = extractvalue { ptr, i32 } %6447, 0
  store ptr %6448, ptr %5, align 8
  %6449 = extractvalue { ptr, i32 } %6447, 1
  store i32 %6449, ptr %6, align 4
  br label %6454

6450:                                             ; preds = %6442
  %6451 = landingpad { ptr, i32 }
          cleanup
  %6452 = extractvalue { ptr, i32 } %6451, 0
  store ptr %6452, ptr %5, align 8
  %6453 = extractvalue { ptr, i32 } %6451, 1
  store i32 %6453, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %395) #5
  br label %6454

6454:                                             ; preds = %6450, %6446
  call void @llvm.lifetime.end.p0(i64 24, ptr %395) #5
  br label %11991

6455:                                             ; preds = %6445, %6431
  call void @llvm.lifetime.start.p0(i64 24, ptr %396) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %397) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %397, i32 noundef 24)
          to label %6456 unwind label %6483

6456:                                             ; preds = %6455
  %6457 = 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) %397)
          to label %6458 unwind label %6487

6458:                                             ; preds = %6456
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %396, ptr noundef nonnull align 1 dereferenceable(1) %6457)
          to label %6459 unwind label %6487

6459:                                             ; preds = %6458
  %6460 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %6461 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6460, ptr noundef nonnull align 8 dereferenceable(24) %396)
          to label %6462 unwind label %6491

6462:                                             ; preds = %6459
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %396) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %397) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %397) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %396) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %398) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %398, i32 noundef 3)
          to label %6463 unwind label %6497

6463:                                             ; preds = %6462
  %6464 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %6465 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6464, ptr noundef nonnull align 8 dereferenceable(24) %398)
          to label %6466 unwind label %6501

6466:                                             ; preds = %6463
  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
  %6467 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %6468 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6467, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6469 unwind label %1024

6469:                                             ; preds = %6466
  call void @llvm.lifetime.start.p0(i64 1, ptr %399) #5
  store i8 1, ptr %399, align 1, !tbaa !9
  %6470 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6471 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6470, ptr noundef nonnull align 1 dereferenceable(1) %399)
          to label %6472 unwind label %6506

6472:                                             ; preds = %6469
  call void @llvm.lifetime.end.p0(i64 1, ptr %399) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6473 unwind label %1024

6473:                                             ; preds = %6472
  br label %6474

6474:                                             ; preds = %6482, %6473
  %6475 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %6476 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6475)
          to label %6477 unwind label %1024

6477:                                             ; preds = %6474
  %6478 = load i8, ptr %6476, align 1, !tbaa !9, !range !11, !noundef !12
  %6479 = trunc i8 %6478 to i1
  %6480 = xor i1 %6479, true
  br i1 %6480, label %6481, label %6510

6481:                                             ; preds = %6477
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6482 unwind label %1024

6482:                                             ; preds = %6481
  br label %6474, !llvm.loop !89

6483:                                             ; preds = %6455
  %6484 = landingpad { ptr, i32 }
          cleanup
  %6485 = extractvalue { ptr, i32 } %6484, 0
  store ptr %6485, ptr %5, align 8
  %6486 = extractvalue { ptr, i32 } %6484, 1
  store i32 %6486, ptr %6, align 4
  br label %6496

6487:                                             ; preds = %6458, %6456
  %6488 = landingpad { ptr, i32 }
          cleanup
  %6489 = extractvalue { ptr, i32 } %6488, 0
  store ptr %6489, ptr %5, align 8
  %6490 = extractvalue { ptr, i32 } %6488, 1
  store i32 %6490, ptr %6, align 4
  br label %6495

6491:                                             ; preds = %6459
  %6492 = landingpad { ptr, i32 }
          cleanup
  %6493 = extractvalue { ptr, i32 } %6492, 0
  store ptr %6493, ptr %5, align 8
  %6494 = extractvalue { ptr, i32 } %6492, 1
  store i32 %6494, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %396) #5
  br label %6495

6495:                                             ; preds = %6491, %6487
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %397) #5
  br label %6496

6496:                                             ; preds = %6495, %6483
  call void @llvm.lifetime.end.p0(i64 24, ptr %397) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %396) #5
  br label %11991

6497:                                             ; preds = %6462
  %6498 = landingpad { ptr, i32 }
          cleanup
  %6499 = extractvalue { ptr, i32 } %6498, 0
  store ptr %6499, ptr %5, align 8
  %6500 = extractvalue { ptr, i32 } %6498, 1
  store i32 %6500, ptr %6, align 4
  br label %6505

6501:                                             ; preds = %6463
  %6502 = landingpad { ptr, i32 }
          cleanup
  %6503 = extractvalue { ptr, i32 } %6502, 0
  store ptr %6503, ptr %5, align 8
  %6504 = extractvalue { ptr, i32 } %6502, 1
  store i32 %6504, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %398) #5
  br label %6505

6505:                                             ; preds = %6501, %6497
  call void @llvm.lifetime.end.p0(i64 24, ptr %398) #5
  br label %11991

6506:                                             ; preds = %6469
  %6507 = landingpad { ptr, i32 }
          cleanup
  %6508 = extractvalue { ptr, i32 } %6507, 0
  store ptr %6508, ptr %5, align 8
  %6509 = extractvalue { ptr, i32 } %6507, 1
  store i32 %6509, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %399) #5
  br label %11991

6510:                                             ; preds = %6477
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6511 unwind label %1024

6511:                                             ; preds = %6510
  call void @llvm.lifetime.start.p0(i64 1, ptr %400) #5
  store i8 0, ptr %400, align 1, !tbaa !9
  %6512 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6513 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6512, ptr noundef nonnull align 1 dereferenceable(1) %400)
          to label %6514 unwind label %6516

6514:                                             ; preds = %6511
  call void @llvm.lifetime.end.p0(i64 1, ptr %400) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6515 unwind label %1024

6515:                                             ; preds = %6514
  br label %7478

6516:                                             ; preds = %6511
  %6517 = landingpad { ptr, i32 }
          cleanup
  %6518 = extractvalue { ptr, i32 } %6517, 0
  store ptr %6518, ptr %5, align 8
  %6519 = extractvalue { ptr, i32 } %6517, 1
  store i32 %6519, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %400) #5
  br label %11991

6520:                                             ; preds = %5778
  %6521 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 2)
          to label %6522 unwind label %1024

6522:                                             ; preds = %6520
  %6523 = 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 %6524 unwind label %1024

6524:                                             ; preds = %6522
  %6525 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %6523)
          to label %6526 unwind label %1024

6526:                                             ; preds = %6524
  br i1 %6525, label %6527, label %6541

6527:                                             ; preds = %6526
  call void @llvm.lifetime.start.p0(i64 24, ptr %401) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %401, i32 noundef 2)
          to label %6528 unwind label %6532

6528:                                             ; preds = %6527
  %6529 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %6530 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6529, ptr noundef nonnull align 8 dereferenceable(24) %401)
          to label %6531 unwind label %6536

6531:                                             ; preds = %6528
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %401) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %401) #5
  br label %6555

6532:                                             ; preds = %6527
  %6533 = landingpad { ptr, i32 }
          cleanup
  %6534 = extractvalue { ptr, i32 } %6533, 0
  store ptr %6534, ptr %5, align 8
  %6535 = extractvalue { ptr, i32 } %6533, 1
  store i32 %6535, ptr %6, align 4
  br label %6540

6536:                                             ; preds = %6528
  %6537 = landingpad { ptr, i32 }
          cleanup
  %6538 = extractvalue { ptr, i32 } %6537, 0
  store ptr %6538, ptr %5, align 8
  %6539 = extractvalue { ptr, i32 } %6537, 1
  store i32 %6539, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %401) #5
  br label %6540

6540:                                             ; preds = %6536, %6532
  call void @llvm.lifetime.end.p0(i64 24, ptr %401) #5
  br label %11991

6541:                                             ; preds = %6526
  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 4)
          to label %6542 unwind label %6546

6542:                                             ; preds = %6541
  %6543 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %6544 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6543, ptr noundef nonnull align 8 dereferenceable(24) %402)
          to label %6545 unwind label %6550

6545:                                             ; preds = %6542
  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 %6555

6546:                                             ; preds = %6541
  %6547 = landingpad { ptr, i32 }
          cleanup
  %6548 = extractvalue { ptr, i32 } %6547, 0
  store ptr %6548, ptr %5, align 8
  %6549 = extractvalue { ptr, i32 } %6547, 1
  store i32 %6549, ptr %6, align 4
  br label %6554

6550:                                             ; preds = %6542
  %6551 = landingpad { ptr, i32 }
          cleanup
  %6552 = extractvalue { ptr, i32 } %6551, 0
  store ptr %6552, ptr %5, align 8
  %6553 = extractvalue { ptr, i32 } %6551, 1
  store i32 %6553, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %402) #5
  br label %6554

6554:                                             ; preds = %6550, %6546
  call void @llvm.lifetime.end.p0(i64 24, ptr %402) #5
  br label %11991

6555:                                             ; preds = %6545, %6531
  call void @llvm.lifetime.start.p0(i64 24, ptr %403) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %404) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %404, i32 noundef 24)
          to label %6556 unwind label %6587

6556:                                             ; preds = %6555
  %6557 = 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) %404)
          to label %6558 unwind label %6591

6558:                                             ; preds = %6556
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %403, ptr noundef nonnull align 1 dereferenceable(1) %6557)
          to label %6559 unwind label %6591

6559:                                             ; preds = %6558
  %6560 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %6561 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6560, ptr noundef nonnull align 8 dereferenceable(24) %403)
          to label %6562 unwind label %6595

6562:                                             ; preds = %6559
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %403) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %404) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %404) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %403) #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 1)
          to label %6563 unwind label %6601

6563:                                             ; preds = %6562
  %6564 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %6565 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6564, ptr noundef nonnull align 8 dereferenceable(24) %405)
          to label %6566 unwind label %6605

6566:                                             ; preds = %6563
  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.start.p0(i64 24, ptr %406) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %406, i32 noundef 3)
          to label %6567 unwind label %6610

6567:                                             ; preds = %6566
  %6568 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %6569 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6568, ptr noundef nonnull align 8 dereferenceable(24) %406)
          to label %6570 unwind label %6614

6570:                                             ; preds = %6567
  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
  %6571 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %6572 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6571, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6573 unwind label %1024

6573:                                             ; preds = %6570
  call void @llvm.lifetime.start.p0(i64 1, ptr %407) #5
  store i8 1, ptr %407, align 1, !tbaa !9
  %6574 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6575 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6574, ptr noundef nonnull align 1 dereferenceable(1) %407)
          to label %6576 unwind label %6619

6576:                                             ; preds = %6573
  call void @llvm.lifetime.end.p0(i64 1, ptr %407) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6577 unwind label %1024

6577:                                             ; preds = %6576
  br label %6578

6578:                                             ; preds = %6586, %6577
  %6579 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %6580 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6579)
          to label %6581 unwind label %1024

6581:                                             ; preds = %6578
  %6582 = load i8, ptr %6580, align 1, !tbaa !9, !range !11, !noundef !12
  %6583 = trunc i8 %6582 to i1
  %6584 = xor i1 %6583, true
  br i1 %6584, label %6585, label %6623

6585:                                             ; preds = %6581
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6586 unwind label %1024

6586:                                             ; preds = %6585
  br label %6578, !llvm.loop !90

6587:                                             ; preds = %6555
  %6588 = landingpad { ptr, i32 }
          cleanup
  %6589 = extractvalue { ptr, i32 } %6588, 0
  store ptr %6589, ptr %5, align 8
  %6590 = extractvalue { ptr, i32 } %6588, 1
  store i32 %6590, ptr %6, align 4
  br label %6600

6591:                                             ; preds = %6558, %6556
  %6592 = landingpad { ptr, i32 }
          cleanup
  %6593 = extractvalue { ptr, i32 } %6592, 0
  store ptr %6593, ptr %5, align 8
  %6594 = extractvalue { ptr, i32 } %6592, 1
  store i32 %6594, ptr %6, align 4
  br label %6599

6595:                                             ; preds = %6559
  %6596 = landingpad { ptr, i32 }
          cleanup
  %6597 = extractvalue { ptr, i32 } %6596, 0
  store ptr %6597, ptr %5, align 8
  %6598 = extractvalue { ptr, i32 } %6596, 1
  store i32 %6598, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %403) #5
  br label %6599

6599:                                             ; preds = %6595, %6591
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %404) #5
  br label %6600

6600:                                             ; preds = %6599, %6587
  call void @llvm.lifetime.end.p0(i64 24, ptr %404) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %403) #5
  br label %11991

6601:                                             ; preds = %6562
  %6602 = landingpad { ptr, i32 }
          cleanup
  %6603 = extractvalue { ptr, i32 } %6602, 0
  store ptr %6603, ptr %5, align 8
  %6604 = extractvalue { ptr, i32 } %6602, 1
  store i32 %6604, ptr %6, align 4
  br label %6609

6605:                                             ; preds = %6563
  %6606 = landingpad { ptr, i32 }
          cleanup
  %6607 = extractvalue { ptr, i32 } %6606, 0
  store ptr %6607, ptr %5, align 8
  %6608 = extractvalue { ptr, i32 } %6606, 1
  store i32 %6608, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %405) #5
  br label %6609

6609:                                             ; preds = %6605, %6601
  call void @llvm.lifetime.end.p0(i64 24, ptr %405) #5
  br label %11991

6610:                                             ; preds = %6566
  %6611 = landingpad { ptr, i32 }
          cleanup
  %6612 = extractvalue { ptr, i32 } %6611, 0
  store ptr %6612, ptr %5, align 8
  %6613 = extractvalue { ptr, i32 } %6611, 1
  store i32 %6613, ptr %6, align 4
  br label %6618

6614:                                             ; preds = %6567
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %406) #5
  br label %6618

6618:                                             ; preds = %6614, %6610
  call void @llvm.lifetime.end.p0(i64 24, ptr %406) #5
  br label %11991

6619:                                             ; preds = %6573
  %6620 = landingpad { ptr, i32 }
          cleanup
  %6621 = extractvalue { ptr, i32 } %6620, 0
  store ptr %6621, ptr %5, align 8
  %6622 = extractvalue { ptr, i32 } %6620, 1
  store i32 %6622, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %407) #5
  br label %11991

6623:                                             ; preds = %6581
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6624 unwind label %1024

6624:                                             ; preds = %6623
  call void @llvm.lifetime.start.p0(i64 1, ptr %408) #5
  store i8 0, ptr %408, align 1, !tbaa !9
  %6625 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6626 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6625, ptr noundef nonnull align 1 dereferenceable(1) %408)
          to label %6627 unwind label %6629

6627:                                             ; preds = %6624
  call void @llvm.lifetime.end.p0(i64 1, ptr %408) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6628 unwind label %1024

6628:                                             ; preds = %6627
  br label %7478

6629:                                             ; preds = %6624
  %6630 = landingpad { ptr, i32 }
          cleanup
  %6631 = extractvalue { ptr, i32 } %6630, 0
  store ptr %6631, ptr %5, align 8
  %6632 = extractvalue { ptr, i32 } %6630, 1
  store i32 %6632, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %408) #5
  br label %11991

6633:                                             ; preds = %5778
  %6634 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 8)
          to label %6635 unwind label %1024

6635:                                             ; preds = %6633
  call void @llvm.lifetime.start.p0(i64 24, ptr %409) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %409, i32 noundef 20)
          to label %6636 unwind label %6671

6636:                                             ; preds = %6635
  %6637 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %6638 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6637, ptr noundef nonnull align 8 dereferenceable(24) %409)
          to label %6639 unwind label %6675

6639:                                             ; preds = %6636
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %409) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %409) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %410) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %411) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %411, i32 noundef 24)
          to label %6640 unwind label %6680

6640:                                             ; preds = %6639
  %6641 = 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) %411)
          to label %6642 unwind label %6684

6642:                                             ; preds = %6640
  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) %6641)
          to label %6643 unwind label %6684

6643:                                             ; preds = %6642
  %6644 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %6645 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6644, ptr noundef nonnull align 8 dereferenceable(24) %410)
          to label %6646 unwind label %6688

6646:                                             ; preds = %6643
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %410) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %411) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %411) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %410) #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 4)
          to label %6647 unwind label %6694

6647:                                             ; preds = %6646
  %6648 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %6649 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6648, ptr noundef nonnull align 8 dereferenceable(24) %412)
          to label %6650 unwind label %6698

6650:                                             ; preds = %6647
  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.start.p0(i64 24, ptr %413) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %413, i32 noundef 3)
          to label %6651 unwind label %6703

6651:                                             ; preds = %6650
  %6652 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %6653 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6652, ptr noundef nonnull align 8 dereferenceable(24) %413)
          to label %6654 unwind label %6707

6654:                                             ; preds = %6651
  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
  %6655 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %6656 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6655, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6657 unwind label %1024

6657:                                             ; preds = %6654
  call void @llvm.lifetime.start.p0(i64 1, ptr %414) #5
  store i8 1, ptr %414, align 1, !tbaa !9
  %6658 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6659 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6658, ptr noundef nonnull align 1 dereferenceable(1) %414)
          to label %6660 unwind label %6712

6660:                                             ; preds = %6657
  call void @llvm.lifetime.end.p0(i64 1, ptr %414) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6661 unwind label %1024

6661:                                             ; preds = %6660
  br label %6662

6662:                                             ; preds = %6670, %6661
  %6663 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %6664 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6663)
          to label %6665 unwind label %1024

6665:                                             ; preds = %6662
  %6666 = load i8, ptr %6664, align 1, !tbaa !9, !range !11, !noundef !12
  %6667 = trunc i8 %6666 to i1
  %6668 = xor i1 %6667, true
  br i1 %6668, label %6669, label %6716

6669:                                             ; preds = %6665
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6670 unwind label %1024

6670:                                             ; preds = %6669
  br label %6662, !llvm.loop !91

6671:                                             ; preds = %6635
  %6672 = landingpad { ptr, i32 }
          cleanup
  %6673 = extractvalue { ptr, i32 } %6672, 0
  store ptr %6673, ptr %5, align 8
  %6674 = extractvalue { ptr, i32 } %6672, 1
  store i32 %6674, ptr %6, align 4
  br label %6679

6675:                                             ; preds = %6636
  %6676 = landingpad { ptr, i32 }
          cleanup
  %6677 = extractvalue { ptr, i32 } %6676, 0
  store ptr %6677, ptr %5, align 8
  %6678 = extractvalue { ptr, i32 } %6676, 1
  store i32 %6678, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %409) #5
  br label %6679

6679:                                             ; preds = %6675, %6671
  call void @llvm.lifetime.end.p0(i64 24, ptr %409) #5
  br label %11991

6680:                                             ; preds = %6639
  %6681 = landingpad { ptr, i32 }
          cleanup
  %6682 = extractvalue { ptr, i32 } %6681, 0
  store ptr %6682, ptr %5, align 8
  %6683 = extractvalue { ptr, i32 } %6681, 1
  store i32 %6683, ptr %6, align 4
  br label %6693

6684:                                             ; preds = %6642, %6640
  %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 = %6643
  %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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %411) #5
  br label %6693

6693:                                             ; preds = %6692, %6680
  call void @llvm.lifetime.end.p0(i64 24, ptr %411) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %410) #5
  br label %11991

6694:                                             ; preds = %6646
  %6695 = landingpad { ptr, i32 }
          cleanup
  %6696 = extractvalue { ptr, i32 } %6695, 0
  store ptr %6696, ptr %5, align 8
  %6697 = extractvalue { ptr, i32 } %6695, 1
  store i32 %6697, ptr %6, align 4
  br label %6702

6698:                                             ; preds = %6647
  %6699 = landingpad { ptr, i32 }
          cleanup
  %6700 = extractvalue { ptr, i32 } %6699, 0
  store ptr %6700, ptr %5, align 8
  %6701 = extractvalue { ptr, i32 } %6699, 1
  store i32 %6701, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %412) #5
  br label %6702

6702:                                             ; preds = %6698, %6694
  call void @llvm.lifetime.end.p0(i64 24, ptr %412) #5
  br label %11991

6703:                                             ; preds = %6650
  %6704 = landingpad { ptr, i32 }
          cleanup
  %6705 = extractvalue { ptr, i32 } %6704, 0
  store ptr %6705, ptr %5, align 8
  %6706 = extractvalue { ptr, i32 } %6704, 1
  store i32 %6706, ptr %6, align 4
  br label %6711

6707:                                             ; preds = %6651
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %413) #5
  br label %6711

6711:                                             ; preds = %6707, %6703
  call void @llvm.lifetime.end.p0(i64 24, ptr %413) #5
  br label %11991

6712:                                             ; preds = %6657
  %6713 = landingpad { ptr, i32 }
          cleanup
  %6714 = extractvalue { ptr, i32 } %6713, 0
  store ptr %6714, ptr %5, align 8
  %6715 = extractvalue { ptr, i32 } %6713, 1
  store i32 %6715, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %414) #5
  br label %11991

6716:                                             ; preds = %6665
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6717 unwind label %1024

6717:                                             ; preds = %6716
  call void @llvm.lifetime.start.p0(i64 1, ptr %415) #5
  store i8 0, ptr %415, align 1, !tbaa !9
  %6718 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6719 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6718, ptr noundef nonnull align 1 dereferenceable(1) %415)
          to label %6720 unwind label %6722

6720:                                             ; preds = %6717
  call void @llvm.lifetime.end.p0(i64 1, ptr %415) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6721 unwind label %1024

6721:                                             ; preds = %6720
  br label %7478

6722:                                             ; preds = %6717
  %6723 = landingpad { ptr, i32 }
          cleanup
  %6724 = extractvalue { ptr, i32 } %6723, 0
  store ptr %6724, ptr %5, align 8
  %6725 = extractvalue { ptr, i32 } %6723, 1
  store i32 %6725, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %415) #5
  br label %11991

6726:                                             ; preds = %5778
  %6727 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 2)
          to label %6728 unwind label %1024

6728:                                             ; preds = %6726
  %6729 = 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 %6730 unwind label %1024

6730:                                             ; preds = %6728
  %6731 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %6729)
          to label %6732 unwind label %1024

6732:                                             ; preds = %6730
  br i1 %6731, label %6733, label %6736

6733:                                             ; preds = %6732
  %6734 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 0)
          to label %6735 unwind label %1024

6735:                                             ; preds = %6733
  br label %6739

6736:                                             ; preds = %6732
  %6737 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 1)
          to label %6738 unwind label %1024

6738:                                             ; preds = %6736
  br label %6739

6739:                                             ; preds = %6738, %6735
  %6740 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %6741 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6740, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %6742 unwind label %1024

6742:                                             ; preds = %6739
  call void @llvm.lifetime.start.p0(i64 24, ptr %416) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %417) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %417, i32 noundef 24)
          to label %6743 unwind label %6774

6743:                                             ; preds = %6742
  %6744 = 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) %417)
          to label %6745 unwind label %6778

6745:                                             ; preds = %6743
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %416, ptr noundef nonnull align 1 dereferenceable(1) %6744)
          to label %6746 unwind label %6778

6746:                                             ; preds = %6745
  %6747 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %6748 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6747, ptr noundef nonnull align 8 dereferenceable(24) %416)
          to label %6749 unwind label %6782

6749:                                             ; preds = %6746
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %416) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %417) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %417) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %416) #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 1)
          to label %6750 unwind label %6788

6750:                                             ; preds = %6749
  %6751 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %6752 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6751, ptr noundef nonnull align 8 dereferenceable(24) %418)
          to label %6753 unwind label %6792

6753:                                             ; preds = %6750
  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.start.p0(i64 24, ptr %419) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %419, i32 noundef 3)
          to label %6754 unwind label %6797

6754:                                             ; preds = %6753
  %6755 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %6756 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6755, ptr noundef nonnull align 8 dereferenceable(24) %419)
          to label %6757 unwind label %6801

6757:                                             ; preds = %6754
  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
  %6758 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %6759 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6758, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6760 unwind label %1024

6760:                                             ; preds = %6757
  call void @llvm.lifetime.start.p0(i64 1, ptr %420) #5
  store i8 1, ptr %420, align 1, !tbaa !9
  %6761 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6762 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6761, ptr noundef nonnull align 1 dereferenceable(1) %420)
          to label %6763 unwind label %6806

6763:                                             ; preds = %6760
  call void @llvm.lifetime.end.p0(i64 1, ptr %420) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6764 unwind label %1024

6764:                                             ; preds = %6763
  br label %6765

6765:                                             ; preds = %6773, %6764
  %6766 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %6767 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6766)
          to label %6768 unwind label %1024

6768:                                             ; preds = %6765
  %6769 = load i8, ptr %6767, align 1, !tbaa !9, !range !11, !noundef !12
  %6770 = trunc i8 %6769 to i1
  %6771 = xor i1 %6770, true
  br i1 %6771, label %6772, label %6810

6772:                                             ; preds = %6768
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6773 unwind label %1024

6773:                                             ; preds = %6772
  br label %6765, !llvm.loop !92

6774:                                             ; preds = %6742
  %6775 = landingpad { ptr, i32 }
          cleanup
  %6776 = extractvalue { ptr, i32 } %6775, 0
  store ptr %6776, ptr %5, align 8
  %6777 = extractvalue { ptr, i32 } %6775, 1
  store i32 %6777, ptr %6, align 4
  br label %6787

6778:                                             ; preds = %6745, %6743
  %6779 = landingpad { ptr, i32 }
          cleanup
  %6780 = extractvalue { ptr, i32 } %6779, 0
  store ptr %6780, ptr %5, align 8
  %6781 = extractvalue { ptr, i32 } %6779, 1
  store i32 %6781, ptr %6, align 4
  br label %6786

6782:                                             ; preds = %6746
  %6783 = landingpad { ptr, i32 }
          cleanup
  %6784 = extractvalue { ptr, i32 } %6783, 0
  store ptr %6784, ptr %5, align 8
  %6785 = extractvalue { ptr, i32 } %6783, 1
  store i32 %6785, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %416) #5
  br label %6786

6786:                                             ; preds = %6782, %6778
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %417) #5
  br label %6787

6787:                                             ; preds = %6786, %6774
  call void @llvm.lifetime.end.p0(i64 24, ptr %417) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %416) #5
  br label %11991

6788:                                             ; preds = %6749
  %6789 = landingpad { ptr, i32 }
          cleanup
  %6790 = extractvalue { ptr, i32 } %6789, 0
  store ptr %6790, ptr %5, align 8
  %6791 = extractvalue { ptr, i32 } %6789, 1
  store i32 %6791, ptr %6, align 4
  br label %6796

6792:                                             ; preds = %6750
  %6793 = landingpad { ptr, i32 }
          cleanup
  %6794 = extractvalue { ptr, i32 } %6793, 0
  store ptr %6794, ptr %5, align 8
  %6795 = extractvalue { ptr, i32 } %6793, 1
  store i32 %6795, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %418) #5
  br label %6796

6796:                                             ; preds = %6792, %6788
  call void @llvm.lifetime.end.p0(i64 24, ptr %418) #5
  br label %11991

6797:                                             ; preds = %6753
  %6798 = landingpad { ptr, i32 }
          cleanup
  %6799 = extractvalue { ptr, i32 } %6798, 0
  store ptr %6799, ptr %5, align 8
  %6800 = extractvalue { ptr, i32 } %6798, 1
  store i32 %6800, ptr %6, align 4
  br label %6805

6801:                                             ; preds = %6754
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %419) #5
  br label %6805

6805:                                             ; preds = %6801, %6797
  call void @llvm.lifetime.end.p0(i64 24, ptr %419) #5
  br label %11991

6806:                                             ; preds = %6760
  %6807 = landingpad { ptr, i32 }
          cleanup
  %6808 = extractvalue { ptr, i32 } %6807, 0
  store ptr %6808, ptr %5, align 8
  %6809 = extractvalue { ptr, i32 } %6807, 1
  store i32 %6809, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %420) #5
  br label %11991

6810:                                             ; preds = %6768
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6811 unwind label %1024

6811:                                             ; preds = %6810
  call void @llvm.lifetime.start.p0(i64 1, ptr %421) #5
  store i8 0, ptr %421, align 1, !tbaa !9
  %6812 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %6813 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6812, ptr noundef nonnull align 1 dereferenceable(1) %421)
          to label %6814 unwind label %6845

6814:                                             ; preds = %6811
  call void @llvm.lifetime.end.p0(i64 1, ptr %421) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6815 unwind label %1024

6815:                                             ; preds = %6814
  %6816 = 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 %6817 unwind label %1024

6817:                                             ; preds = %6815
  %6818 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %6819 unwind label %1024

6819:                                             ; preds = %6817
  %6820 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %6821 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6820, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %6822 unwind label %1024

6822:                                             ; preds = %6819
  %6823 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %6824 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6823, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %6825 unwind label %1024

6825:                                             ; preds = %6822
  call void @llvm.lifetime.start.p0(i64 1, ptr %422) #5
  store i8 0, ptr %422, align 1, !tbaa !9
  %6826 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %6827 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6826, ptr noundef nonnull align 1 dereferenceable(1) %422)
          to label %6828 unwind label %6849

6828:                                             ; preds = %6825
  call void @llvm.lifetime.end.p0(i64 1, ptr %422) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %423) #5
  store i8 1, ptr %423, align 1, !tbaa !9
  %6829 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %6830 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6829, ptr noundef nonnull align 1 dereferenceable(1) %423)
          to label %6831 unwind label %6853

6831:                                             ; preds = %6828
  call void @llvm.lifetime.end.p0(i64 1, ptr %423) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6832 unwind label %1024

6832:                                             ; preds = %6831
  br label %6833

6833:                                             ; preds = %6862, %6832
  br label %6834

6834:                                             ; preds = %6833
  call void @llvm.lifetime.start.p0(i64 1, ptr %424) #5
  store i8 0, ptr %424, align 1, !tbaa !9
  %6835 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %6836 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6835, ptr noundef nonnull align 1 dereferenceable(1) %424)
          to label %6837 unwind label %6857

6837:                                             ; preds = %6834
  call void @llvm.lifetime.end.p0(i64 1, ptr %424) #5
  %6838 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %6839 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %6838)
          to label %6840 unwind label %1024

6840:                                             ; preds = %6837
  %6841 = load i8, ptr %6839, align 1, !tbaa !9, !range !11, !noundef !12
  %6842 = trunc i8 %6841 to i1
  br i1 %6842, label %6843, label %6861

6843:                                             ; preds = %6840
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6844 unwind label %1024

6844:                                             ; preds = %6843
  br label %6863

6845:                                             ; preds = %6811
  %6846 = landingpad { ptr, i32 }
          cleanup
  %6847 = extractvalue { ptr, i32 } %6846, 0
  store ptr %6847, ptr %5, align 8
  %6848 = extractvalue { ptr, i32 } %6846, 1
  store i32 %6848, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %421) #5
  br label %11991

6849:                                             ; preds = %6825
  %6850 = landingpad { ptr, i32 }
          cleanup
  %6851 = extractvalue { ptr, i32 } %6850, 0
  store ptr %6851, ptr %5, align 8
  %6852 = extractvalue { ptr, i32 } %6850, 1
  store i32 %6852, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %422) #5
  br label %11991

6853:                                             ; preds = %6828
  %6854 = landingpad { ptr, i32 }
          cleanup
  %6855 = extractvalue { ptr, i32 } %6854, 0
  store ptr %6855, ptr %5, align 8
  %6856 = extractvalue { ptr, i32 } %6854, 1
  store i32 %6856, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %423) #5
  br label %11991

6857:                                             ; preds = %6834
  %6858 = landingpad { ptr, i32 }
          cleanup
  %6859 = extractvalue { ptr, i32 } %6858, 0
  store ptr %6859, ptr %5, align 8
  %6860 = extractvalue { ptr, i32 } %6858, 1
  store i32 %6860, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %424) #5
  br label %11991

6861:                                             ; preds = %6840
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6862 unwind label %1024

6862:                                             ; preds = %6861
  br label %6833, !llvm.loop !93

6863:                                             ; preds = %6844
  br label %7478

6864:                                             ; preds = %5778
  %6865 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %20, i32 noundef 0)
          to label %6866 unwind label %1024

6866:                                             ; preds = %6864
  store i8 1, ptr %30, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %425) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %425, i32 noundef 11)
          to label %6867 unwind label %6902

6867:                                             ; preds = %6866
  %6868 = 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) %425)
          to label %6869 unwind label %6906

6869:                                             ; preds = %6867
  %6870 = 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) %6868)
          to label %6871 unwind label %6906

6871:                                             ; preds = %6869
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %425) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %425) #5
  %6872 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %6873 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6872, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %6874 unwind label %1024

6874:                                             ; preds = %6871
  %6875 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %6876 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6875, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6877 unwind label %1024

6877:                                             ; preds = %6874
  call void @llvm.lifetime.start.p0(i64 1, ptr %426) #5
  store i8 1, ptr %426, align 1, !tbaa !9
  %6878 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %6879 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6878, ptr noundef nonnull align 1 dereferenceable(1) %426)
          to label %6880 unwind label %6911

6880:                                             ; preds = %6877
  call void @llvm.lifetime.end.p0(i64 1, ptr %426) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %427) #5
  store i8 1, ptr %427, align 1, !tbaa !9
  %6881 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %6882 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6881, ptr noundef nonnull align 1 dereferenceable(1) %427)
          to label %6883 unwind label %6915

6883:                                             ; preds = %6880
  call void @llvm.lifetime.end.p0(i64 1, ptr %427) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6884 unwind label %1024

6884:                                             ; preds = %6883
  br label %6885

6885:                                             ; preds = %6924, %6884
  br label %6886

6886:                                             ; preds = %6885
  %6887 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %6888 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %6887)
          to label %6889 unwind label %1024

6889:                                             ; preds = %6886
  %6890 = 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) %6888)
          to label %6891 unwind label %1024

6891:                                             ; preds = %6889
  call void @llvm.lifetime.start.p0(i64 1, ptr %428) #5
  store i8 0, ptr %428, align 1, !tbaa !9
  %6892 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %6893 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6892, ptr noundef nonnull align 1 dereferenceable(1) %428)
          to label %6894 unwind label %6919

6894:                                             ; preds = %6891
  call void @llvm.lifetime.end.p0(i64 1, ptr %428) #5
  %6895 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %6896 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %6895)
          to label %6897 unwind label %1024

6897:                                             ; preds = %6894
  %6898 = load i8, ptr %6896, align 1, !tbaa !9, !range !11, !noundef !12
  %6899 = trunc i8 %6898 to i1
  br i1 %6899, label %6900, label %6923

6900:                                             ; preds = %6897
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6901 unwind label %1024

6901:                                             ; preds = %6900
  br label %6925

6902:                                             ; preds = %6866
  %6903 = landingpad { ptr, i32 }
          cleanup
  %6904 = extractvalue { ptr, i32 } %6903, 0
  store ptr %6904, ptr %5, align 8
  %6905 = extractvalue { ptr, i32 } %6903, 1
  store i32 %6905, ptr %6, align 4
  br label %6910

6906:                                             ; preds = %6869, %6867
  %6907 = landingpad { ptr, i32 }
          cleanup
  %6908 = extractvalue { ptr, i32 } %6907, 0
  store ptr %6908, ptr %5, align 8
  %6909 = extractvalue { ptr, i32 } %6907, 1
  store i32 %6909, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %425) #5
  br label %6910

6910:                                             ; preds = %6906, %6902
  call void @llvm.lifetime.end.p0(i64 24, ptr %425) #5
  br label %11991

6911:                                             ; preds = %6877
  %6912 = landingpad { ptr, i32 }
          cleanup
  %6913 = extractvalue { ptr, i32 } %6912, 0
  store ptr %6913, ptr %5, align 8
  %6914 = extractvalue { ptr, i32 } %6912, 1
  store i32 %6914, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %426) #5
  br label %11991

6915:                                             ; preds = %6880
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %427) #5
  br label %11991

6919:                                             ; preds = %6891
  %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 @llvm.lifetime.end.p0(i64 1, ptr %428) #5
  br label %11991

6923:                                             ; preds = %6897
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6924 unwind label %1024

6924:                                             ; preds = %6923
  br label %6885, !llvm.loop !94

6925:                                             ; preds = %6901
  %6926 = 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 %6927 unwind label %1024

6927:                                             ; preds = %6925
  %6928 = 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) %6926)
          to label %6929 unwind label %1024

6929:                                             ; preds = %6927
  call void @llvm.lifetime.start.p0(i64 24, ptr %429) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %429, i32 noundef 24)
          to label %6930 unwind label %6970

6930:                                             ; preds = %6929
  %6931 = 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) %429)
          to label %6932 unwind label %6974

6932:                                             ; preds = %6930
  %6933 = 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) %6931)
          to label %6934 unwind label %6974

6934:                                             ; preds = %6932
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %429) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %429) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %430) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %430, i32 noundef 13)
          to label %6935 unwind label %6979

6935:                                             ; preds = %6934
  %6936 = 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 %6937 unwind label %6983

6937:                                             ; preds = %6935
  %6938 = 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) %6936)
          to label %6939 unwind label %6983

6939:                                             ; preds = %6937
  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
  %6940 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %6941 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6940, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %6942 unwind label %1024

6942:                                             ; preds = %6939
  %6943 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %6944 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6943, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6945 unwind label %1024

6945:                                             ; preds = %6942
  call void @llvm.lifetime.start.p0(i64 1, ptr %431) #5
  store i8 1, ptr %431, align 1, !tbaa !9
  %6946 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %6947 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6946, ptr noundef nonnull align 1 dereferenceable(1) %431)
          to label %6948 unwind label %6988

6948:                                             ; preds = %6945
  call void @llvm.lifetime.end.p0(i64 1, ptr %431) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %432) #5
  store i8 1, ptr %432, align 1, !tbaa !9
  %6949 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %6950 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6949, ptr noundef nonnull align 1 dereferenceable(1) %432)
          to label %6951 unwind label %6992

6951:                                             ; preds = %6948
  call void @llvm.lifetime.end.p0(i64 1, ptr %432) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6952 unwind label %1024

6952:                                             ; preds = %6951
  br label %6953

6953:                                             ; preds = %7001, %6952
  br label %6954

6954:                                             ; preds = %6953
  %6955 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %6956 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %6955)
          to label %6957 unwind label %1024

6957:                                             ; preds = %6954
  %6958 = 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) %6956)
          to label %6959 unwind label %1024

6959:                                             ; preds = %6957
  call void @llvm.lifetime.start.p0(i64 1, ptr %433) #5
  store i8 0, ptr %433, align 1, !tbaa !9
  %6960 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %6961 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6960, ptr noundef nonnull align 1 dereferenceable(1) %433)
          to label %6962 unwind label %6996

6962:                                             ; preds = %6959
  call void @llvm.lifetime.end.p0(i64 1, ptr %433) #5
  %6963 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %6964 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %6963)
          to label %6965 unwind label %1024

6965:                                             ; preds = %6962
  %6966 = load i8, ptr %6964, align 1, !tbaa !9, !range !11, !noundef !12
  %6967 = trunc i8 %6966 to i1
  br i1 %6967, label %6968, label %7000

6968:                                             ; preds = %6965
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %6969 unwind label %1024

6969:                                             ; preds = %6968
  br label %7002

6970:                                             ; preds = %6929
  %6971 = landingpad { ptr, i32 }
          cleanup
  %6972 = extractvalue { ptr, i32 } %6971, 0
  store ptr %6972, ptr %5, align 8
  %6973 = extractvalue { ptr, i32 } %6971, 1
  store i32 %6973, ptr %6, align 4
  br label %6978

6974:                                             ; preds = %6932, %6930
  %6975 = landingpad { ptr, i32 }
          cleanup
  %6976 = extractvalue { ptr, i32 } %6975, 0
  store ptr %6976, ptr %5, align 8
  %6977 = extractvalue { ptr, i32 } %6975, 1
  store i32 %6977, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %429) #5
  br label %6978

6978:                                             ; preds = %6974, %6970
  call void @llvm.lifetime.end.p0(i64 24, ptr %429) #5
  br label %11991

6979:                                             ; preds = %6934
  %6980 = landingpad { ptr, i32 }
          cleanup
  %6981 = extractvalue { ptr, i32 } %6980, 0
  store ptr %6981, ptr %5, align 8
  %6982 = extractvalue { ptr, i32 } %6980, 1
  store i32 %6982, ptr %6, align 4
  br label %6987

6983:                                             ; preds = %6937, %6935
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %430) #5
  br label %6987

6987:                                             ; preds = %6983, %6979
  call void @llvm.lifetime.end.p0(i64 24, ptr %430) #5
  br label %11991

6988:                                             ; preds = %6945
  %6989 = landingpad { ptr, i32 }
          cleanup
  %6990 = extractvalue { ptr, i32 } %6989, 0
  store ptr %6990, ptr %5, align 8
  %6991 = extractvalue { ptr, i32 } %6989, 1
  store i32 %6991, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %431) #5
  br label %11991

6992:                                             ; preds = %6948
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %432) #5
  br label %11991

6996:                                             ; preds = %6959
  %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 @llvm.lifetime.end.p0(i64 1, ptr %433) #5
  br label %11991

7000:                                             ; preds = %6965
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7001 unwind label %1024

7001:                                             ; preds = %7000
  br label %6953, !llvm.loop !95

7002:                                             ; preds = %6969
  %7003 = 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 %7004 unwind label %1024

7004:                                             ; preds = %7002
  %7005 = 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) %7003)
          to label %7006 unwind label %1024

7006:                                             ; preds = %7004
  %7007 = 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 %7008 unwind label %1024

7008:                                             ; preds = %7006
  %7009 = 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) %7007)
          to label %7010 unwind label %1024

7010:                                             ; preds = %7008
  %7011 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef -48)
          to label %7012 unwind label %1024

7012:                                             ; preds = %7010
  br label %7013

7013:                                             ; preds = %7012
  br label %7014

7014:                                             ; preds = %7275, %7013
  br label %7015

7015:                                             ; preds = %7014
  %7016 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7017 unwind label %1024

7017:                                             ; preds = %7015
  %7018 = icmp sle i64 %7016, 1
  br i1 %7018, label %7019, label %7023

7019:                                             ; preds = %7017
  %7020 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %20, i32 noundef 0)
          to label %7021 unwind label %1024

7021:                                             ; preds = %7019
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7022 unwind label %1024

7022:                                             ; preds = %7021
  br label %7285

7023:                                             ; preds = %7017
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7024 unwind label %1024

7024:                                             ; preds = %7023
  br label %7025

7025:                                             ; preds = %7024
  %7026 = 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 %7027 unwind label %1024

7027:                                             ; preds = %7025
  br i1 %7026, label %7028, label %7040

7028:                                             ; preds = %7027
  %7029 = 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 %7030 unwind label %1024

7030:                                             ; preds = %7028
  %7031 = 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) %7029)
          to label %7032 unwind label %1024

7032:                                             ; preds = %7030
  store i8 1, ptr %31, align 1, !tbaa !9
  %7033 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7034 unwind label %1024

7034:                                             ; preds = %7032
  %7035 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %7)
          to label %7036 unwind label %1024

7036:                                             ; preds = %7034
  %7037 = sub nsw i64 %7033, %7035
  %7038 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %26, i64 noundef %7037)
          to label %7039 unwind label %1024

7039:                                             ; preds = %7036
  br label %7050

7040:                                             ; preds = %7027
  %7041 = 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 %7042 unwind label %1024

7042:                                             ; preds = %7040
  %7043 = 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) %7041)
          to label %7044 unwind label %1024

7044:                                             ; preds = %7042
  store i8 0, ptr %31, align 1, !tbaa !9
  %7045 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7046 unwind label %1024

7046:                                             ; preds = %7044
  %7047 = and i64 %7045, 1
  %7048 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %26, i64 noundef %7047)
          to label %7049 unwind label %1024

7049:                                             ; preds = %7046
  br label %7050

7050:                                             ; preds = %7049, %7039
  %7051 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %7052 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7051, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %7053 unwind label %1024

7053:                                             ; preds = %7050
  %7054 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %7055 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7054, ptr noundef nonnull align 8 dereferenceable(24) %11)
          to label %7056 unwind label %1024

7056:                                             ; preds = %7053
  %7057 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %7058 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7057, ptr noundef nonnull align 8 dereferenceable(24) %20)
          to label %7059 unwind label %1024

7059:                                             ; preds = %7056
  call void @llvm.lifetime.start.p0(i64 24, ptr %434) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %434, i32 noundef 3)
          to label %7060 unwind label %7080

7060:                                             ; preds = %7059
  %7061 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %7062 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7061, ptr noundef nonnull align 8 dereferenceable(24) %434)
          to label %7063 unwind label %7084

7063:                                             ; preds = %7060
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %434) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %434) #5
  %7064 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %7065 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7064, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7066 unwind label %1024

7066:                                             ; preds = %7063
  call void @llvm.lifetime.start.p0(i64 1, ptr %435) #5
  store i8 1, ptr %435, align 1, !tbaa !9
  %7067 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %7068 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7067, ptr noundef nonnull align 1 dereferenceable(1) %435)
          to label %7069 unwind label %7089

7069:                                             ; preds = %7066
  call void @llvm.lifetime.end.p0(i64 1, ptr %435) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7070 unwind label %1024

7070:                                             ; preds = %7069
  br label %7071

7071:                                             ; preds = %7079, %7070
  %7072 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %7073 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %7072)
          to label %7074 unwind label %1024

7074:                                             ; preds = %7071
  %7075 = load i8, ptr %7073, align 1, !tbaa !9, !range !11, !noundef !12
  %7076 = trunc i8 %7075 to i1
  %7077 = xor i1 %7076, true
  br i1 %7077, label %7078, label %7093

7078:                                             ; preds = %7074
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7079 unwind label %1024

7079:                                             ; preds = %7078
  br label %7071, !llvm.loop !96

7080:                                             ; preds = %7059
  %7081 = landingpad { ptr, i32 }
          cleanup
  %7082 = extractvalue { ptr, i32 } %7081, 0
  store ptr %7082, ptr %5, align 8
  %7083 = extractvalue { ptr, i32 } %7081, 1
  store i32 %7083, ptr %6, align 4
  br label %7088

7084:                                             ; preds = %7060
  %7085 = landingpad { ptr, i32 }
          cleanup
  %7086 = extractvalue { ptr, i32 } %7085, 0
  store ptr %7086, ptr %5, align 8
  %7087 = extractvalue { ptr, i32 } %7085, 1
  store i32 %7087, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %434) #5
  br label %7088

7088:                                             ; preds = %7084, %7080
  call void @llvm.lifetime.end.p0(i64 24, ptr %434) #5
  br label %11991

7089:                                             ; preds = %7066
  %7090 = landingpad { ptr, i32 }
          cleanup
  %7091 = extractvalue { ptr, i32 } %7090, 0
  store ptr %7091, ptr %5, align 8
  %7092 = extractvalue { ptr, i32 } %7090, 1
  store i32 %7092, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %435) #5
  br label %11991

7093:                                             ; preds = %7074
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7094 unwind label %1024

7094:                                             ; preds = %7093
  call void @llvm.lifetime.start.p0(i64 1, ptr %436) #5
  store i8 0, ptr %436, align 1, !tbaa !9
  %7095 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %7096 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7095, ptr noundef nonnull align 1 dereferenceable(1) %436)
          to label %7097 unwind label %7103

7097:                                             ; preds = %7094
  call void @llvm.lifetime.end.p0(i64 1, ptr %436) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7098 unwind label %1024

7098:                                             ; preds = %7097
  %7099 = load i8, ptr %31, align 1, !tbaa !9, !range !11, !noundef !12
  %7100 = trunc i8 %7099 to i1
  br i1 %7100, label %7107, label %7101

7101:                                             ; preds = %7098
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7102 unwind label %1024

7102:                                             ; preds = %7101
  br label %7285

7103:                                             ; preds = %7094
  %7104 = landingpad { ptr, i32 }
          cleanup
  %7105 = extractvalue { ptr, i32 } %7104, 0
  store ptr %7105, ptr %5, align 8
  %7106 = extractvalue { ptr, i32 } %7104, 1
  store i32 %7106, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %436) #5
  br label %11991

7107:                                             ; preds = %7098
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7108 unwind label %1024

7108:                                             ; preds = %7107
  br label %7109

7109:                                             ; preds = %7108
  call void @llvm.lifetime.start.p0(i64 24, ptr %437) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %437, i32 noundef -8192)
          to label %7110 unwind label %7141

7110:                                             ; preds = %7109
  %7111 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %7112 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7111, ptr noundef nonnull align 8 dereferenceable(24) %437)
          to label %7113 unwind label %7145

7113:                                             ; preds = %7110
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %437) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %437) #5
  %7114 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %7115 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7114, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7116 unwind label %1024

7116:                                             ; preds = %7113
  call void @llvm.lifetime.start.p0(i64 1, ptr %438) #5
  store i8 1, ptr %438, align 1, !tbaa !9
  %7117 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %7118 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7117, ptr noundef nonnull align 1 dereferenceable(1) %438)
          to label %7119 unwind label %7150

7119:                                             ; preds = %7116
  call void @llvm.lifetime.end.p0(i64 1, ptr %438) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %439) #5
  store i8 1, ptr %439, align 1, !tbaa !9
  %7120 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7121 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7120, ptr noundef nonnull align 1 dereferenceable(1) %439)
          to label %7122 unwind label %7154

7122:                                             ; preds = %7119
  call void @llvm.lifetime.end.p0(i64 1, ptr %439) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7123 unwind label %1024

7123:                                             ; preds = %7122
  br label %7124

7124:                                             ; preds = %7163, %7123
  br label %7125

7125:                                             ; preds = %7124
  %7126 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %7127 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %7126)
          to label %7128 unwind label %1024

7128:                                             ; preds = %7125
  %7129 = 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) %7127)
          to label %7130 unwind label %1024

7130:                                             ; preds = %7128
  call void @llvm.lifetime.start.p0(i64 1, ptr %440) #5
  store i8 0, ptr %440, align 1, !tbaa !9
  %7131 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7132 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7131, ptr noundef nonnull align 1 dereferenceable(1) %440)
          to label %7133 unwind label %7158

7133:                                             ; preds = %7130
  call void @llvm.lifetime.end.p0(i64 1, ptr %440) #5
  %7134 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %7135 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7134)
          to label %7136 unwind label %1024

7136:                                             ; preds = %7133
  %7137 = load i8, ptr %7135, align 1, !tbaa !9, !range !11, !noundef !12
  %7138 = trunc i8 %7137 to i1
  br i1 %7138, label %7139, label %7162

7139:                                             ; preds = %7136
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7140 unwind label %1024

7140:                                             ; preds = %7139
  br label %7164

7141:                                             ; preds = %7109
  %7142 = landingpad { ptr, i32 }
          cleanup
  %7143 = extractvalue { ptr, i32 } %7142, 0
  store ptr %7143, ptr %5, align 8
  %7144 = extractvalue { ptr, i32 } %7142, 1
  store i32 %7144, ptr %6, align 4
  br label %7149

7145:                                             ; preds = %7110
  %7146 = landingpad { ptr, i32 }
          cleanup
  %7147 = extractvalue { ptr, i32 } %7146, 0
  store ptr %7147, ptr %5, align 8
  %7148 = extractvalue { ptr, i32 } %7146, 1
  store i32 %7148, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %437) #5
  br label %7149

7149:                                             ; preds = %7145, %7141
  call void @llvm.lifetime.end.p0(i64 24, ptr %437) #5
  br label %11991

7150:                                             ; preds = %7116
  %7151 = landingpad { ptr, i32 }
          cleanup
  %7152 = extractvalue { ptr, i32 } %7151, 0
  store ptr %7152, ptr %5, align 8
  %7153 = extractvalue { ptr, i32 } %7151, 1
  store i32 %7153, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %438) #5
  br label %11991

7154:                                             ; preds = %7119
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %439) #5
  br label %11991

7158:                                             ; preds = %7130
  %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 @llvm.lifetime.end.p0(i64 1, ptr %440) #5
  br label %11991

7162:                                             ; preds = %7136
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7163 unwind label %1024

7163:                                             ; preds = %7162
  br label %7124, !llvm.loop !97

7164:                                             ; preds = %7140
  %7165 = load i8, ptr %30, align 1, !tbaa !9, !range !11, !noundef !12
  %7166 = trunc i8 %7165 to i1
  br i1 %7166, label %7167, label %7177

7167:                                             ; preds = %7164
  %7168 = 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 %7169 unwind label %1024

7169:                                             ; preds = %7167
  %7170 = 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) %7168)
          to label %7171 unwind label %1024

7171:                                             ; preds = %7169
  store i8 1, ptr %14, align 1, !tbaa !9
  %7172 = 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 %7173 unwind label %1024

7173:                                             ; preds = %7171
  %7174 = 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 %7175 unwind label %1024

7175:                                             ; preds = %7173
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7176 unwind label %1024

7176:                                             ; preds = %7175
  br label %7255

7177:                                             ; preds = %7164
  %7178 = 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 %7179 unwind label %1024

7179:                                             ; preds = %7177
  %7180 = load i8, ptr %14, align 1, !tbaa !9, !range !11, !noundef !12
  %7181 = trunc i8 %7180 to i1
  %7182 = zext i1 %7181 to i8
  store i8 %7182, ptr %14, align 1, !tbaa !9
  %7183 = 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 %7184 unwind label %1024

7184:                                             ; preds = %7179
  call void @llvm.lifetime.start.p0(i64 24, ptr %441) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %441, i32 noundef 2)
          to label %7185 unwind label %7222

7185:                                             ; preds = %7184
  %7186 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %7183, ptr noundef nonnull align 8 dereferenceable(8) %441)
          to label %7187 unwind label %7226

7187:                                             ; preds = %7185
  %7188 = 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) %7186)
          to label %7189 unwind label %7226

7189:                                             ; preds = %7187
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %441) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %441) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %442) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %442, i32 noundef -4)
          to label %7190 unwind label %7231

7190:                                             ; preds = %7189
  %7191 = 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 %7192 unwind label %7235

7192:                                             ; preds = %7190
  %7193 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %442, ptr noundef nonnull align 8 dereferenceable(8) %7191)
          to label %7194 unwind label %7235

7194:                                             ; preds = %7192
  %7195 = 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) %7193)
          to label %7196 unwind label %7235

7196:                                             ; preds = %7194
  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
  %7197 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %7198 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7197, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7199 unwind label %1024

7199:                                             ; preds = %7196
  %7200 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %7201 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7200, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %7202 unwind label %1024

7202:                                             ; preds = %7199
  call void @llvm.lifetime.start.p0(i64 1, ptr %443) #5
  store i8 0, ptr %443, align 1, !tbaa !9
  %7203 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %7204 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7203, ptr noundef nonnull align 1 dereferenceable(1) %443)
          to label %7205 unwind label %7240

7205:                                             ; preds = %7202
  call void @llvm.lifetime.end.p0(i64 1, ptr %443) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %444) #5
  store i8 1, ptr %444, align 1, !tbaa !9
  %7206 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7207 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7206, ptr noundef nonnull align 1 dereferenceable(1) %444)
          to label %7208 unwind label %7244

7208:                                             ; preds = %7205
  call void @llvm.lifetime.end.p0(i64 1, ptr %444) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7209 unwind label %1024

7209:                                             ; preds = %7208
  br label %7210

7210:                                             ; preds = %7253, %7209
  br label %7211

7211:                                             ; preds = %7210
  call void @llvm.lifetime.start.p0(i64 1, ptr %445) #5
  store i8 0, ptr %445, align 1, !tbaa !9
  %7212 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7213 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7212, ptr noundef nonnull align 1 dereferenceable(1) %445)
          to label %7214 unwind label %7248

7214:                                             ; preds = %7211
  call void @llvm.lifetime.end.p0(i64 1, ptr %445) #5
  %7215 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %7216 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7215)
          to label %7217 unwind label %1024

7217:                                             ; preds = %7214
  %7218 = load i8, ptr %7216, align 1, !tbaa !9, !range !11, !noundef !12
  %7219 = trunc i8 %7218 to i1
  br i1 %7219, label %7220, label %7252

7220:                                             ; preds = %7217
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7221 unwind label %1024

7221:                                             ; preds = %7220
  br label %7254

7222:                                             ; preds = %7184
  %7223 = landingpad { ptr, i32 }
          cleanup
  %7224 = extractvalue { ptr, i32 } %7223, 0
  store ptr %7224, ptr %5, align 8
  %7225 = extractvalue { ptr, i32 } %7223, 1
  store i32 %7225, ptr %6, align 4
  br label %7230

7226:                                             ; preds = %7187, %7185
  %7227 = landingpad { ptr, i32 }
          cleanup
  %7228 = extractvalue { ptr, i32 } %7227, 0
  store ptr %7228, ptr %5, align 8
  %7229 = extractvalue { ptr, i32 } %7227, 1
  store i32 %7229, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %441) #5
  br label %7230

7230:                                             ; preds = %7226, %7222
  call void @llvm.lifetime.end.p0(i64 24, ptr %441) #5
  br label %11991

7231:                                             ; preds = %7189
  %7232 = landingpad { ptr, i32 }
          cleanup
  %7233 = extractvalue { ptr, i32 } %7232, 0
  store ptr %7233, ptr %5, align 8
  %7234 = extractvalue { ptr, i32 } %7232, 1
  store i32 %7234, ptr %6, align 4
  br label %7239

7235:                                             ; preds = %7194, %7192, %7190
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %442) #5
  br label %7239

7239:                                             ; preds = %7235, %7231
  call void @llvm.lifetime.end.p0(i64 24, ptr %442) #5
  br label %11991

7240:                                             ; preds = %7202
  %7241 = landingpad { ptr, i32 }
          cleanup
  %7242 = extractvalue { ptr, i32 } %7241, 0
  store ptr %7242, ptr %5, align 8
  %7243 = extractvalue { ptr, i32 } %7241, 1
  store i32 %7243, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %443) #5
  br label %11991

7244:                                             ; preds = %7205
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %444) #5
  br label %11991

7248:                                             ; preds = %7211
  %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 @llvm.lifetime.end.p0(i64 1, ptr %445) #5
  br label %11991

7252:                                             ; preds = %7217
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7253 unwind label %1024

7253:                                             ; preds = %7252
  br label %7210, !llvm.loop !98

7254:                                             ; preds = %7221
  br label %7255

7255:                                             ; preds = %7254, %7176
  %7256 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef -16)
          to label %7257 unwind label %1024

7257:                                             ; preds = %7255
  %7258 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %7259 unwind label %1024

7259:                                             ; preds = %7257
  %7260 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %20)
          to label %7261 unwind label %1024

7261:                                             ; preds = %7259
  %7262 = add nsw i64 %7258, %7260
  %7263 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %10, i64 noundef %7262)
          to label %7264 unwind label %1024

7264:                                             ; preds = %7261
  %7265 = 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 %7266 unwind label %1024

7266:                                             ; preds = %7264
  call void @llvm.lifetime.start.p0(i64 24, ptr %446) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %446, i32 noundef 8)
          to label %7267 unwind label %7276

7267:                                             ; preds = %7266
  %7268 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %7265, ptr noundef nonnull align 8 dereferenceable(8) %446)
          to label %7269 unwind label %7280

7269:                                             ; preds = %7267
  %7270 = 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) %7268)
          to label %7271 unwind label %7280

7271:                                             ; preds = %7269
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %446) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %446) #5
  %7272 = 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 %7273 unwind label %1024

7273:                                             ; preds = %7271
  %7274 = 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) %7272)
          to label %7275 unwind label %1024

7275:                                             ; preds = %7273
  store i8 0, ptr %30, align 1, !tbaa !9
  br label %7014, !llvm.loop !99

7276:                                             ; preds = %7266
  %7277 = landingpad { ptr, i32 }
          cleanup
  %7278 = extractvalue { ptr, i32 } %7277, 0
  store ptr %7278, ptr %5, align 8
  %7279 = extractvalue { ptr, i32 } %7277, 1
  store i32 %7279, ptr %6, align 4
  br label %7284

7280:                                             ; preds = %7269, %7267
  %7281 = landingpad { ptr, i32 }
          cleanup
  %7282 = extractvalue { ptr, i32 } %7281, 0
  store ptr %7282, ptr %5, align 8
  %7283 = extractvalue { ptr, i32 } %7281, 1
  store i32 %7283, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %446) #5
  br label %7284

7284:                                             ; preds = %7280, %7276
  call void @llvm.lifetime.end.p0(i64 24, ptr %446) #5
  br label %11991

7285:                                             ; preds = %7102, %7022
  %7286 = 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 %7287 unwind label %1024

7287:                                             ; preds = %7285
  %7288 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %7286)
          to label %7289 unwind label %1024

7289:                                             ; preds = %7287
  br i1 %7288, label %7290, label %7292

7290:                                             ; preds = %7289
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7291 unwind label %1024

7291:                                             ; preds = %7290
  br label %7409

7292:                                             ; preds = %7289
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7293 unwind label %1024

7293:                                             ; preds = %7292
  %7294 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %7295 unwind label %1024

7295:                                             ; preds = %7293
  %7296 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %20)
          to label %7297 unwind label %1024

7297:                                             ; preds = %7295
  %7298 = add nsw i64 %7294, %7296
  %7299 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %8, i64 noundef %7298)
          to label %7300 unwind label %1024

7300:                                             ; preds = %7297
  %7301 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %7302 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7301, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7303 unwind label %1024

7303:                                             ; preds = %7300
  %7304 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %7305 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7304, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7306 unwind label %1024

7306:                                             ; preds = %7303
  call void @llvm.lifetime.start.p0(i64 1, ptr %447) #5
  store i8 1, ptr %447, align 1, !tbaa !9
  %7307 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %7308 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7307, ptr noundef nonnull align 1 dereferenceable(1) %447)
          to label %7309 unwind label %7331

7309:                                             ; preds = %7306
  call void @llvm.lifetime.end.p0(i64 1, ptr %447) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %448) #5
  store i8 1, ptr %448, align 1, !tbaa !9
  %7310 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7311 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7310, ptr noundef nonnull align 1 dereferenceable(1) %448)
          to label %7312 unwind label %7335

7312:                                             ; preds = %7309
  call void @llvm.lifetime.end.p0(i64 1, ptr %448) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7313 unwind label %1024

7313:                                             ; preds = %7312
  br label %7314

7314:                                             ; preds = %7344, %7313
  br label %7315

7315:                                             ; preds = %7314
  %7316 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %7317 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %7316)
          to label %7318 unwind label %1024

7318:                                             ; preds = %7315
  %7319 = 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) %7317)
          to label %7320 unwind label %1024

7320:                                             ; preds = %7318
  call void @llvm.lifetime.start.p0(i64 1, ptr %449) #5
  store i8 0, ptr %449, align 1, !tbaa !9
  %7321 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7322 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7321, ptr noundef nonnull align 1 dereferenceable(1) %449)
          to label %7323 unwind label %7339

7323:                                             ; preds = %7320
  call void @llvm.lifetime.end.p0(i64 1, ptr %449) #5
  %7324 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %7325 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7324)
          to label %7326 unwind label %1024

7326:                                             ; preds = %7323
  %7327 = load i8, ptr %7325, align 1, !tbaa !9, !range !11, !noundef !12
  %7328 = trunc i8 %7327 to i1
  br i1 %7328, label %7329, label %7343

7329:                                             ; preds = %7326
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7330 unwind label %1024

7330:                                             ; preds = %7329
  br label %7345

7331:                                             ; preds = %7306
  %7332 = landingpad { ptr, i32 }
          cleanup
  %7333 = extractvalue { ptr, i32 } %7332, 0
  store ptr %7333, ptr %5, align 8
  %7334 = extractvalue { ptr, i32 } %7332, 1
  store i32 %7334, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %447) #5
  br label %11991

7335:                                             ; preds = %7309
  %7336 = landingpad { ptr, i32 }
          cleanup
  %7337 = extractvalue { ptr, i32 } %7336, 0
  store ptr %7337, ptr %5, align 8
  %7338 = extractvalue { ptr, i32 } %7336, 1
  store i32 %7338, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %448) #5
  br label %11991

7339:                                             ; preds = %7320
  %7340 = landingpad { ptr, i32 }
          cleanup
  %7341 = extractvalue { ptr, i32 } %7340, 0
  store ptr %7341, ptr %5, align 8
  %7342 = extractvalue { ptr, i32 } %7340, 1
  store i32 %7342, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %449) #5
  br label %11991

7343:                                             ; preds = %7326
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7344 unwind label %1024

7344:                                             ; preds = %7343
  br label %7314, !llvm.loop !100

7345:                                             ; preds = %7330
  %7346 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
          to label %7347 unwind label %1024

7347:                                             ; preds = %7345
  %7348 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %20)
          to label %7349 unwind label %1024

7349:                                             ; preds = %7347
  %7350 = add nsw i64 %7346, %7348
  %7351 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %8, i64 noundef %7350)
          to label %7352 unwind label %1024

7352:                                             ; preds = %7349
  call void @llvm.lifetime.start.p0(i64 24, ptr %450) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %450, i32 noundef 0)
          to label %7353 unwind label %7385

7353:                                             ; preds = %7352
  %7354 = 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 %7355 unwind label %7389

7355:                                             ; preds = %7353
  %7356 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %450, ptr noundef nonnull align 8 dereferenceable(8) %7354)
          to label %7357 unwind label %7389

7357:                                             ; preds = %7355
  %7358 = 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) %7356)
          to label %7359 unwind label %7389

7359:                                             ; preds = %7357
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %450) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %450) #5
  %7360 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %7361 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7360, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7362 unwind label %1024

7362:                                             ; preds = %7359
  %7363 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %7364 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7363, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %7365 unwind label %1024

7365:                                             ; preds = %7362
  call void @llvm.lifetime.start.p0(i64 1, ptr %451) #5
  store i8 0, ptr %451, align 1, !tbaa !9
  %7366 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %7367 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7366, ptr noundef nonnull align 1 dereferenceable(1) %451)
          to label %7368 unwind label %7394

7368:                                             ; preds = %7365
  call void @llvm.lifetime.end.p0(i64 1, ptr %451) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %452) #5
  store i8 1, ptr %452, align 1, !tbaa !9
  %7369 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7370 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7369, ptr noundef nonnull align 1 dereferenceable(1) %452)
          to label %7371 unwind label %7398

7371:                                             ; preds = %7368
  call void @llvm.lifetime.end.p0(i64 1, ptr %452) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7372 unwind label %1024

7372:                                             ; preds = %7371
  br label %7373

7373:                                             ; preds = %7407, %7372
  br label %7374

7374:                                             ; preds = %7373
  call void @llvm.lifetime.start.p0(i64 1, ptr %453) #5
  store i8 0, ptr %453, align 1, !tbaa !9
  %7375 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7376 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7375, ptr noundef nonnull align 1 dereferenceable(1) %453)
          to label %7377 unwind label %7402

7377:                                             ; preds = %7374
  call void @llvm.lifetime.end.p0(i64 1, ptr %453) #5
  %7378 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %7379 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7378)
          to label %7380 unwind label %1024

7380:                                             ; preds = %7377
  %7381 = load i8, ptr %7379, align 1, !tbaa !9, !range !11, !noundef !12
  %7382 = trunc i8 %7381 to i1
  br i1 %7382, label %7383, label %7406

7383:                                             ; preds = %7380
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7384 unwind label %1024

7384:                                             ; preds = %7383
  br label %7408

7385:                                             ; preds = %7352
  %7386 = landingpad { ptr, i32 }
          cleanup
  %7387 = extractvalue { ptr, i32 } %7386, 0
  store ptr %7387, ptr %5, align 8
  %7388 = extractvalue { ptr, i32 } %7386, 1
  store i32 %7388, ptr %6, align 4
  br label %7393

7389:                                             ; preds = %7357, %7355, %7353
  %7390 = landingpad { ptr, i32 }
          cleanup
  %7391 = extractvalue { ptr, i32 } %7390, 0
  store ptr %7391, ptr %5, align 8
  %7392 = extractvalue { ptr, i32 } %7390, 1
  store i32 %7392, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %450) #5
  br label %7393

7393:                                             ; preds = %7389, %7385
  call void @llvm.lifetime.end.p0(i64 24, ptr %450) #5
  br label %11991

7394:                                             ; preds = %7365
  %7395 = landingpad { ptr, i32 }
          cleanup
  %7396 = extractvalue { ptr, i32 } %7395, 0
  store ptr %7396, ptr %5, align 8
  %7397 = extractvalue { ptr, i32 } %7395, 1
  store i32 %7397, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %451) #5
  br label %11991

7398:                                             ; preds = %7368
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %452) #5
  br label %11991

7402:                                             ; preds = %7374
  %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 @llvm.lifetime.end.p0(i64 1, ptr %453) #5
  br label %11991

7406:                                             ; preds = %7380
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7407 unwind label %1024

7407:                                             ; preds = %7406
  br label %7373, !llvm.loop !101

7408:                                             ; preds = %7384
  br label %7409

7409:                                             ; preds = %7408, %7291
  %7410 = load i8, ptr %30, align 1, !tbaa !9, !range !11, !noundef !12
  %7411 = trunc i8 %7410 to i1
  br i1 %7411, label %7471, label %7412

7412:                                             ; preds = %7409
  %7413 = 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 %7414 unwind label %1024

7414:                                             ; preds = %7412
  call void @llvm.lifetime.start.p0(i64 24, ptr %454) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %454, i32 noundef 2)
          to label %7415 unwind label %7447

7415:                                             ; preds = %7414
  %7416 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %7413, ptr noundef nonnull align 8 dereferenceable(8) %454)
          to label %7417 unwind label %7451

7417:                                             ; preds = %7415
  %7418 = 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) %7416)
          to label %7419 unwind label %7451

7419:                                             ; preds = %7417
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %454) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %454) #5
  %7420 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %7421 unwind label %1024

7421:                                             ; preds = %7419
  %7422 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %7423 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7422, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7424 unwind label %1024

7424:                                             ; preds = %7421
  %7425 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %7426 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7425, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %7427 unwind label %1024

7427:                                             ; preds = %7424
  call void @llvm.lifetime.start.p0(i64 1, ptr %455) #5
  store i8 0, ptr %455, align 1, !tbaa !9
  %7428 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %7429 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7428, ptr noundef nonnull align 1 dereferenceable(1) %455)
          to label %7430 unwind label %7456

7430:                                             ; preds = %7427
  call void @llvm.lifetime.end.p0(i64 1, ptr %455) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %456) #5
  store i8 1, ptr %456, align 1, !tbaa !9
  %7431 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7432 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7431, ptr noundef nonnull align 1 dereferenceable(1) %456)
          to label %7433 unwind label %7460

7433:                                             ; preds = %7430
  call void @llvm.lifetime.end.p0(i64 1, ptr %456) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7434 unwind label %1024

7434:                                             ; preds = %7433
  br label %7435

7435:                                             ; preds = %7469, %7434
  br label %7436

7436:                                             ; preds = %7435
  call void @llvm.lifetime.start.p0(i64 1, ptr %457) #5
  store i8 0, ptr %457, align 1, !tbaa !9
  %7437 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7438 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7437, ptr noundef nonnull align 1 dereferenceable(1) %457)
          to label %7439 unwind label %7464

7439:                                             ; preds = %7436
  call void @llvm.lifetime.end.p0(i64 1, ptr %457) #5
  %7440 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %7441 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7440)
          to label %7442 unwind label %1024

7442:                                             ; preds = %7439
  %7443 = load i8, ptr %7441, align 1, !tbaa !9, !range !11, !noundef !12
  %7444 = trunc i8 %7443 to i1
  br i1 %7444, label %7445, label %7468

7445:                                             ; preds = %7442
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7446 unwind label %1024

7446:                                             ; preds = %7445
  br label %7470

7447:                                             ; preds = %7414
  %7448 = landingpad { ptr, i32 }
          cleanup
  %7449 = extractvalue { ptr, i32 } %7448, 0
  store ptr %7449, ptr %5, align 8
  %7450 = extractvalue { ptr, i32 } %7448, 1
  store i32 %7450, ptr %6, align 4
  br label %7455

7451:                                             ; preds = %7417, %7415
  %7452 = landingpad { ptr, i32 }
          cleanup
  %7453 = extractvalue { ptr, i32 } %7452, 0
  store ptr %7453, ptr %5, align 8
  %7454 = extractvalue { ptr, i32 } %7452, 1
  store i32 %7454, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %454) #5
  br label %7455

7455:                                             ; preds = %7451, %7447
  call void @llvm.lifetime.end.p0(i64 24, ptr %454) #5
  br label %11991

7456:                                             ; preds = %7427
  %7457 = landingpad { ptr, i32 }
          cleanup
  %7458 = extractvalue { ptr, i32 } %7457, 0
  store ptr %7458, ptr %5, align 8
  %7459 = extractvalue { ptr, i32 } %7457, 1
  store i32 %7459, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %455) #5
  br label %11991

7460:                                             ; preds = %7430
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %456) #5
  br label %11991

7464:                                             ; preds = %7436
  %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 @llvm.lifetime.end.p0(i64 1, ptr %457) #5
  br label %11991

7468:                                             ; preds = %7442
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7469 unwind label %1024

7469:                                             ; preds = %7468
  br label %7435, !llvm.loop !102

7470:                                             ; preds = %7446
  br label %7473

7471:                                             ; preds = %7409
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7472 unwind label %1024

7472:                                             ; preds = %7471
  br label %7473

7473:                                             ; preds = %7472, %7470
  br label %7478

7474:                                             ; preds = %5778
  %7475 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef -3)
          to label %7476 unwind label %1024

7476:                                             ; preds = %7474
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7477 unwind label %1024

7477:                                             ; preds = %7476
  br label %7478

7478:                                             ; preds = %7477, %7473, %6863, %6721, %6628, %6515, %6379, %6266, %6153, %6044, %5967, %5910, %5853
  %7479 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %7480 = trunc i8 %7479 to i1
  %7481 = zext i1 %7480 to i32
  %7482 = icmp eq i32 %7481, 0
  br i1 %7482, label %7483, label %7738

7483:                                             ; preds = %7478
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7484 unwind label %1024

7484:                                             ; preds = %7483
  call void @llvm.lifetime.start.p0(i64 24, ptr %458) #5
  %7485 = 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 %7486 unwind label %7526

7486:                                             ; preds = %7484
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %458, ptr noundef nonnull align 1 dereferenceable(1) %7485)
          to label %7487 unwind label %7526

7487:                                             ; preds = %7486
  %7488 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %7489 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7488, ptr noundef nonnull align 8 dereferenceable(24) %458)
          to label %7490 unwind label %7530

7490:                                             ; preds = %7487
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %458) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %458) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %459) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %460) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %460, i32 noundef 0)
          to label %7491 unwind label %7535

7491:                                             ; preds = %7490
  %7492 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %460, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %7493 unwind label %7539

7493:                                             ; preds = %7491
  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) %7492)
          to label %7494 unwind label %7539

7494:                                             ; preds = %7493
  %7495 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %7496 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7495, ptr noundef nonnull align 8 dereferenceable(24) %459)
          to label %7497 unwind label %7543

7497:                                             ; preds = %7494
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %459) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %460) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %460) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %459) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %461) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %462) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %462, i32 noundef 0)
          to label %7498 unwind label %7549

7498:                                             ; preds = %7497
  %7499 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %462, ptr noundef nonnull align 8 dereferenceable(8) %15)
          to label %7500 unwind label %7553

7500:                                             ; preds = %7498
  %7501 = load i8, ptr %14, align 1, !tbaa !9, !range !11, !noundef !12
  %7502 = trunc i8 %7501 to i1
  %7503 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8) %7499, i1 noundef zeroext %7502)
          to label %7504 unwind label %7553

7504:                                             ; preds = %7500
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %461, ptr noundef nonnull align 1 dereferenceable(1) %7503)
          to label %7505 unwind label %7553

7505:                                             ; preds = %7504
  %7506 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %7507 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7506, ptr noundef nonnull align 8 dereferenceable(24) %461)
          to label %7508 unwind label %7557

7508:                                             ; preds = %7505
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %461) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %462) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %462) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %461) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %463) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %463, i32 noundef -3)
          to label %7509 unwind label %7563

7509:                                             ; preds = %7508
  %7510 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %7511 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7510, ptr noundef nonnull align 8 dereferenceable(24) %463)
          to label %7512 unwind label %7567

7512:                                             ; preds = %7509
  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.start.p0(i64 1, ptr %464) #5
  store i8 1, ptr %464, align 1, !tbaa !9
  %7513 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %7514 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7513, ptr noundef nonnull align 1 dereferenceable(1) %464)
          to label %7515 unwind label %7572

7515:                                             ; preds = %7512
  call void @llvm.lifetime.end.p0(i64 1, ptr %464) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7516 unwind label %1024

7516:                                             ; preds = %7515
  br label %7517

7517:                                             ; preds = %7525, %7516
  %7518 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %7519 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %7518)
          to label %7520 unwind label %1024

7520:                                             ; preds = %7517
  %7521 = load i8, ptr %7519, align 1, !tbaa !9, !range !11, !noundef !12
  %7522 = trunc i8 %7521 to i1
  %7523 = xor i1 %7522, true
  br i1 %7523, label %7524, label %7576

7524:                                             ; preds = %7520
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7525 unwind label %1024

7525:                                             ; preds = %7524
  br label %7517, !llvm.loop !103

7526:                                             ; preds = %7486, %7484
  %7527 = landingpad { ptr, i32 }
          cleanup
  %7528 = extractvalue { ptr, i32 } %7527, 0
  store ptr %7528, ptr %5, align 8
  %7529 = extractvalue { ptr, i32 } %7527, 1
  store i32 %7529, ptr %6, align 4
  br label %7534

7530:                                             ; preds = %7487
  %7531 = landingpad { ptr, i32 }
          cleanup
  %7532 = extractvalue { ptr, i32 } %7531, 0
  store ptr %7532, ptr %5, align 8
  %7533 = extractvalue { ptr, i32 } %7531, 1
  store i32 %7533, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %458) #5
  br label %7534

7534:                                             ; preds = %7530, %7526
  call void @llvm.lifetime.end.p0(i64 24, ptr %458) #5
  br label %11991

7535:                                             ; preds = %7490
  %7536 = landingpad { ptr, i32 }
          cleanup
  %7537 = extractvalue { ptr, i32 } %7536, 0
  store ptr %7537, ptr %5, align 8
  %7538 = extractvalue { ptr, i32 } %7536, 1
  store i32 %7538, ptr %6, align 4
  br label %7548

7539:                                             ; preds = %7493, %7491
  %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 = %7494
  %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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %460) #5
  br label %7548

7548:                                             ; preds = %7547, %7535
  call void @llvm.lifetime.end.p0(i64 24, ptr %460) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %459) #5
  br label %11991

7549:                                             ; preds = %7497
  %7550 = landingpad { ptr, i32 }
          cleanup
  %7551 = extractvalue { ptr, i32 } %7550, 0
  store ptr %7551, ptr %5, align 8
  %7552 = extractvalue { ptr, i32 } %7550, 1
  store i32 %7552, ptr %6, align 4
  br label %7562

7553:                                             ; preds = %7504, %7500, %7498
  %7554 = landingpad { ptr, i32 }
          cleanup
  %7555 = extractvalue { ptr, i32 } %7554, 0
  store ptr %7555, ptr %5, align 8
  %7556 = extractvalue { ptr, i32 } %7554, 1
  store i32 %7556, ptr %6, align 4
  br label %7561

7557:                                             ; preds = %7505
  %7558 = landingpad { ptr, i32 }
          cleanup
  %7559 = extractvalue { ptr, i32 } %7558, 0
  store ptr %7559, ptr %5, align 8
  %7560 = extractvalue { ptr, i32 } %7558, 1
  store i32 %7560, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %461) #5
  br label %7561

7561:                                             ; preds = %7557, %7553
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %462) #5
  br label %7562

7562:                                             ; preds = %7561, %7549
  call void @llvm.lifetime.end.p0(i64 24, ptr %462) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %461) #5
  br label %11991

7563:                                             ; preds = %7508
  %7564 = landingpad { ptr, i32 }
          cleanup
  %7565 = extractvalue { ptr, i32 } %7564, 0
  store ptr %7565, ptr %5, align 8
  %7566 = extractvalue { ptr, i32 } %7564, 1
  store i32 %7566, ptr %6, align 4
  br label %7571

7567:                                             ; preds = %7509
  %7568 = landingpad { ptr, i32 }
          cleanup
  %7569 = extractvalue { ptr, i32 } %7568, 0
  store ptr %7569, ptr %5, align 8
  %7570 = extractvalue { ptr, i32 } %7568, 1
  store i32 %7570, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %463) #5
  br label %7571

7571:                                             ; preds = %7567, %7563
  call void @llvm.lifetime.end.p0(i64 24, ptr %463) #5
  br label %11991

7572:                                             ; preds = %7512
  %7573 = landingpad { ptr, i32 }
          cleanup
  %7574 = extractvalue { ptr, i32 } %7573, 0
  store ptr %7574, ptr %5, align 8
  %7575 = extractvalue { ptr, i32 } %7573, 1
  store i32 %7575, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %464) #5
  br label %11991

7576:                                             ; preds = %7520
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7577 unwind label %1024

7577:                                             ; preds = %7576
  call void @llvm.lifetime.start.p0(i64 1, ptr %465) #5
  store i8 0, ptr %465, align 1, !tbaa !9
  %7578 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %7579 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7578, ptr noundef nonnull align 1 dereferenceable(1) %465)
          to label %7580 unwind label %7616

7580:                                             ; preds = %7577
  call void @llvm.lifetime.end.p0(i64 1, ptr %465) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7581 unwind label %1024

7581:                                             ; preds = %7580
  call void @llvm.lifetime.start.p0(i64 24, ptr %466) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %467) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %467, i32 noundef 9)
          to label %7582 unwind label %7620

7582:                                             ; preds = %7581
  %7583 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %467, ptr noundef nonnull align 8 dereferenceable(8) %23)
          to label %7584 unwind label %7624

7584:                                             ; preds = %7582
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %466, ptr noundef nonnull align 1 dereferenceable(1) %7583)
          to label %7585 unwind label %7624

7585:                                             ; preds = %7584
  %7586 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %7587 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7586, ptr noundef nonnull align 8 dereferenceable(24) %466)
          to label %7588 unwind label %7628

7588:                                             ; preds = %7585
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %466) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %467) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %467) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %466) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %468) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %469) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %469, i32 noundef 0)
          to label %7589 unwind label %7634

7589:                                             ; preds = %7588
  %7590 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %469, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %7591 unwind label %7638

7591:                                             ; preds = %7589
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %468, ptr noundef nonnull align 1 dereferenceable(1) %7590)
          to label %7592 unwind label %7638

7592:                                             ; preds = %7591
  %7593 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %7594 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7593, ptr noundef nonnull align 8 dereferenceable(24) %468)
          to label %7595 unwind label %7642

7595:                                             ; preds = %7592
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %468) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %469) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %469) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %468) #5
  %7596 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %7597 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7596, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %7598 unwind label %1024

7598:                                             ; preds = %7595
  call void @llvm.lifetime.start.p0(i64 24, ptr %470) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %470, i32 noundef -2)
          to label %7599 unwind label %7648

7599:                                             ; preds = %7598
  %7600 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %7601 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7600, ptr noundef nonnull align 8 dereferenceable(24) %470)
          to label %7602 unwind label %7652

7602:                                             ; preds = %7599
  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.start.p0(i64 1, ptr %471) #5
  store i8 1, ptr %471, align 1, !tbaa !9
  %7603 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %7604 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7603, ptr noundef nonnull align 1 dereferenceable(1) %471)
          to label %7605 unwind label %7657

7605:                                             ; preds = %7602
  call void @llvm.lifetime.end.p0(i64 1, ptr %471) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7606 unwind label %1024

7606:                                             ; preds = %7605
  br label %7607

7607:                                             ; preds = %7615, %7606
  %7608 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %7609 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %7608)
          to label %7610 unwind label %1024

7610:                                             ; preds = %7607
  %7611 = load i8, ptr %7609, align 1, !tbaa !9, !range !11, !noundef !12
  %7612 = trunc i8 %7611 to i1
  %7613 = xor i1 %7612, true
  br i1 %7613, label %7614, label %7661

7614:                                             ; preds = %7610
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7615 unwind label %1024

7615:                                             ; preds = %7614
  br label %7607, !llvm.loop !104

7616:                                             ; preds = %7577
  %7617 = landingpad { ptr, i32 }
          cleanup
  %7618 = extractvalue { ptr, i32 } %7617, 0
  store ptr %7618, ptr %5, align 8
  %7619 = extractvalue { ptr, i32 } %7617, 1
  store i32 %7619, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %465) #5
  br label %11991

7620:                                             ; preds = %7581
  %7621 = landingpad { ptr, i32 }
          cleanup
  %7622 = extractvalue { ptr, i32 } %7621, 0
  store ptr %7622, ptr %5, align 8
  %7623 = extractvalue { ptr, i32 } %7621, 1
  store i32 %7623, ptr %6, align 4
  br label %7633

7624:                                             ; preds = %7584, %7582
  %7625 = landingpad { ptr, i32 }
          cleanup
  %7626 = extractvalue { ptr, i32 } %7625, 0
  store ptr %7626, ptr %5, align 8
  %7627 = extractvalue { ptr, i32 } %7625, 1
  store i32 %7627, ptr %6, align 4
  br label %7632

7628:                                             ; preds = %7585
  %7629 = landingpad { ptr, i32 }
          cleanup
  %7630 = extractvalue { ptr, i32 } %7629, 0
  store ptr %7630, ptr %5, align 8
  %7631 = extractvalue { ptr, i32 } %7629, 1
  store i32 %7631, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %466) #5
  br label %7632

7632:                                             ; preds = %7628, %7624
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %467) #5
  br label %7633

7633:                                             ; preds = %7632, %7620
  call void @llvm.lifetime.end.p0(i64 24, ptr %467) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %466) #5
  br label %11991

7634:                                             ; preds = %7588
  %7635 = landingpad { ptr, i32 }
          cleanup
  %7636 = extractvalue { ptr, i32 } %7635, 0
  store ptr %7636, ptr %5, align 8
  %7637 = extractvalue { ptr, i32 } %7635, 1
  store i32 %7637, ptr %6, align 4
  br label %7647

7638:                                             ; preds = %7591, %7589
  %7639 = landingpad { ptr, i32 }
          cleanup
  %7640 = extractvalue { ptr, i32 } %7639, 0
  store ptr %7640, ptr %5, align 8
  %7641 = extractvalue { ptr, i32 } %7639, 1
  store i32 %7641, ptr %6, align 4
  br label %7646

7642:                                             ; preds = %7592
  %7643 = landingpad { ptr, i32 }
          cleanup
  %7644 = extractvalue { ptr, i32 } %7643, 0
  store ptr %7644, ptr %5, align 8
  %7645 = extractvalue { ptr, i32 } %7643, 1
  store i32 %7645, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %468) #5
  br label %7646

7646:                                             ; preds = %7642, %7638
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %469) #5
  br label %7647

7647:                                             ; preds = %7646, %7634
  call void @llvm.lifetime.end.p0(i64 24, ptr %469) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %468) #5
  br label %11991

7648:                                             ; preds = %7598
  %7649 = landingpad { ptr, i32 }
          cleanup
  %7650 = extractvalue { ptr, i32 } %7649, 0
  store ptr %7650, ptr %5, align 8
  %7651 = extractvalue { ptr, i32 } %7649, 1
  store i32 %7651, ptr %6, align 4
  br label %7656

7652:                                             ; preds = %7599
  %7653 = landingpad { ptr, i32 }
          cleanup
  %7654 = extractvalue { ptr, i32 } %7653, 0
  store ptr %7654, ptr %5, align 8
  %7655 = extractvalue { ptr, i32 } %7653, 1
  store i32 %7655, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %470) #5
  br label %7656

7656:                                             ; preds = %7652, %7648
  call void @llvm.lifetime.end.p0(i64 24, ptr %470) #5
  br label %11991

7657:                                             ; preds = %7602
  %7658 = landingpad { ptr, i32 }
          cleanup
  %7659 = extractvalue { ptr, i32 } %7658, 0
  store ptr %7659, ptr %5, align 8
  %7660 = extractvalue { ptr, i32 } %7658, 1
  store i32 %7660, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %471) #5
  br label %11991

7661:                                             ; preds = %7610
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7662 unwind label %1024

7662:                                             ; preds = %7661
  call void @llvm.lifetime.start.p0(i64 1, ptr %472) #5
  store i8 0, ptr %472, align 1, !tbaa !9
  %7663 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %7664 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7663, ptr noundef nonnull align 1 dereferenceable(1) %472)
          to label %7665 unwind label %7697

7665:                                             ; preds = %7662
  call void @llvm.lifetime.end.p0(i64 1, ptr %472) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7666 unwind label %1024

7666:                                             ; preds = %7665
  %7667 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %7668 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7667, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %7669 unwind label %1024

7669:                                             ; preds = %7666
  call void @llvm.lifetime.start.p0(i64 24, ptr %473) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %474) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %474, i32 noundef 0)
          to label %7670 unwind label %7701

7670:                                             ; preds = %7669
  %7671 = 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) %474)
          to label %7672 unwind label %7705

7672:                                             ; preds = %7670
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %473, ptr noundef nonnull align 1 dereferenceable(1) %7671)
          to label %7673 unwind label %7705

7673:                                             ; preds = %7672
  %7674 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %7675 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7674, ptr noundef nonnull align 8 dereferenceable(24) %473)
          to label %7676 unwind label %7709

7676:                                             ; preds = %7673
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %473) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %474) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %474) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %473) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %475) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %475, i32 noundef 1)
          to label %7677 unwind label %7715

7677:                                             ; preds = %7676
  %7678 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %7679 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7678, ptr noundef nonnull align 8 dereferenceable(24) %475)
          to label %7680 unwind label %7719

7680:                                             ; preds = %7677
  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
  %7681 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %7682 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7681, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7683 unwind label %1024

7683:                                             ; preds = %7680
  call void @llvm.lifetime.start.p0(i64 1, ptr %476) #5
  store i8 1, ptr %476, align 1, !tbaa !9
  %7684 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %7685 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7684, ptr noundef nonnull align 1 dereferenceable(1) %476)
          to label %7686 unwind label %7724

7686:                                             ; preds = %7683
  call void @llvm.lifetime.end.p0(i64 1, ptr %476) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7687 unwind label %1024

7687:                                             ; preds = %7686
  br label %7688

7688:                                             ; preds = %7696, %7687
  %7689 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %7690 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %7689)
          to label %7691 unwind label %1024

7691:                                             ; preds = %7688
  %7692 = load i8, ptr %7690, align 1, !tbaa !9, !range !11, !noundef !12
  %7693 = trunc i8 %7692 to i1
  %7694 = xor i1 %7693, true
  br i1 %7694, label %7695, label %7728

7695:                                             ; preds = %7691
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7696 unwind label %1024

7696:                                             ; preds = %7695
  br label %7688, !llvm.loop !105

7697:                                             ; preds = %7662
  %7698 = landingpad { ptr, i32 }
          cleanup
  %7699 = extractvalue { ptr, i32 } %7698, 0
  store ptr %7699, ptr %5, align 8
  %7700 = extractvalue { ptr, i32 } %7698, 1
  store i32 %7700, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %472) #5
  br label %11991

7701:                                             ; preds = %7669
  %7702 = landingpad { ptr, i32 }
          cleanup
  %7703 = extractvalue { ptr, i32 } %7702, 0
  store ptr %7703, ptr %5, align 8
  %7704 = extractvalue { ptr, i32 } %7702, 1
  store i32 %7704, ptr %6, align 4
  br label %7714

7705:                                             ; preds = %7672, %7670
  %7706 = landingpad { ptr, i32 }
          cleanup
  %7707 = extractvalue { ptr, i32 } %7706, 0
  store ptr %7707, ptr %5, align 8
  %7708 = extractvalue { ptr, i32 } %7706, 1
  store i32 %7708, ptr %6, align 4
  br label %7713

7709:                                             ; preds = %7673
  %7710 = landingpad { ptr, i32 }
          cleanup
  %7711 = extractvalue { ptr, i32 } %7710, 0
  store ptr %7711, ptr %5, align 8
  %7712 = extractvalue { ptr, i32 } %7710, 1
  store i32 %7712, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %473) #5
  br label %7713

7713:                                             ; preds = %7709, %7705
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %474) #5
  br label %7714

7714:                                             ; preds = %7713, %7701
  call void @llvm.lifetime.end.p0(i64 24, ptr %474) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %473) #5
  br label %11991

7715:                                             ; preds = %7676
  %7716 = landingpad { ptr, i32 }
          cleanup
  %7717 = extractvalue { ptr, i32 } %7716, 0
  store ptr %7717, ptr %5, align 8
  %7718 = extractvalue { ptr, i32 } %7716, 1
  store i32 %7718, ptr %6, align 4
  br label %7723

7719:                                             ; preds = %7677
  %7720 = landingpad { ptr, i32 }
          cleanup
  %7721 = extractvalue { ptr, i32 } %7720, 0
  store ptr %7721, ptr %5, align 8
  %7722 = extractvalue { ptr, i32 } %7720, 1
  store i32 %7722, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %475) #5
  br label %7723

7723:                                             ; preds = %7719, %7715
  call void @llvm.lifetime.end.p0(i64 24, ptr %475) #5
  br label %11991

7724:                                             ; preds = %7683
  %7725 = landingpad { ptr, i32 }
          cleanup
  %7726 = extractvalue { ptr, i32 } %7725, 0
  store ptr %7726, ptr %5, align 8
  %7727 = extractvalue { ptr, i32 } %7725, 1
  store i32 %7727, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %476) #5
  br label %11991

7728:                                             ; preds = %7691
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7729 unwind label %1024

7729:                                             ; preds = %7728
  call void @llvm.lifetime.start.p0(i64 1, ptr %477) #5
  store i8 0, ptr %477, align 1, !tbaa !9
  %7730 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %7731 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7730, ptr noundef nonnull align 1 dereferenceable(1) %477)
          to label %7732 unwind label %7734

7732:                                             ; preds = %7729
  call void @llvm.lifetime.end.p0(i64 1, ptr %477) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7733 unwind label %1024

7733:                                             ; preds = %7732
  br label %7740

7734:                                             ; preds = %7729
  %7735 = landingpad { ptr, i32 }
          cleanup
  %7736 = extractvalue { ptr, i32 } %7735, 0
  store ptr %7736, ptr %5, align 8
  %7737 = extractvalue { ptr, i32 } %7735, 1
  store i32 %7737, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %477) #5
  br label %11991

7738:                                             ; preds = %7478
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7739 unwind label %1024

7739:                                             ; preds = %7738
  br label %7740

7740:                                             ; preds = %7739, %7733
  br label %7741

7741:                                             ; preds = %7740, %5660
  br label %11889

7742:                                             ; preds = %2767
  %7743 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %7744 unwind label %1024

7744:                                             ; preds = %7742
  %7745 = icmp ne i64 %7743, 3
  br i1 %7745, label %7750, label %7746

7746:                                             ; preds = %7744
  %7747 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %7748 unwind label %1024

7748:                                             ; preds = %7746
  %7749 = icmp eq i64 %7747, 0
  br i1 %7749, label %7750, label %7754

7750:                                             ; preds = %7748, %7744
  %7751 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %7752 unwind label %1024

7752:                                             ; preds = %7750
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7753 unwind label %1024

7753:                                             ; preds = %7752
  br label %9253

7754:                                             ; preds = %7748
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7755 unwind label %1024

7755:                                             ; preds = %7754
  %7756 = 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 %7757 unwind label %1024

7757:                                             ; preds = %7755
  store i8 1, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %478) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %478, i32 noundef 1)
          to label %7758 unwind label %7793

7758:                                             ; preds = %7757
  %7759 = 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) %478)
          to label %7760 unwind label %7797

7760:                                             ; preds = %7758
  %7761 = 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) %7759)
          to label %7762 unwind label %7797

7762:                                             ; preds = %7760
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %478) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %478) #5
  %7763 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %7764 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7763, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7765 unwind label %1024

7765:                                             ; preds = %7762
  %7766 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %7767 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7766, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7768 unwind label %1024

7768:                                             ; preds = %7765
  call void @llvm.lifetime.start.p0(i64 1, ptr %479) #5
  store i8 1, ptr %479, align 1, !tbaa !9
  %7769 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %7770 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7769, ptr noundef nonnull align 1 dereferenceable(1) %479)
          to label %7771 unwind label %7802

7771:                                             ; preds = %7768
  call void @llvm.lifetime.end.p0(i64 1, ptr %479) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %480) #5
  store i8 1, ptr %480, align 1, !tbaa !9
  %7772 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7773 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7772, ptr noundef nonnull align 1 dereferenceable(1) %480)
          to label %7774 unwind label %7806

7774:                                             ; preds = %7771
  call void @llvm.lifetime.end.p0(i64 1, ptr %480) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7775 unwind label %1024

7775:                                             ; preds = %7774
  br label %7776

7776:                                             ; preds = %7815, %7775
  br label %7777

7777:                                             ; preds = %7776
  %7778 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %7779 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %7778)
          to label %7780 unwind label %1024

7780:                                             ; preds = %7777
  %7781 = 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) %7779)
          to label %7782 unwind label %1024

7782:                                             ; preds = %7780
  call void @llvm.lifetime.start.p0(i64 1, ptr %481) #5
  store i8 0, ptr %481, align 1, !tbaa !9
  %7783 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7784 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7783, ptr noundef nonnull align 1 dereferenceable(1) %481)
          to label %7785 unwind label %7810

7785:                                             ; preds = %7782
  call void @llvm.lifetime.end.p0(i64 1, ptr %481) #5
  %7786 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %7787 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7786)
          to label %7788 unwind label %1024

7788:                                             ; preds = %7785
  %7789 = load i8, ptr %7787, align 1, !tbaa !9, !range !11, !noundef !12
  %7790 = trunc i8 %7789 to i1
  br i1 %7790, label %7791, label %7814

7791:                                             ; preds = %7788
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7792 unwind label %1024

7792:                                             ; preds = %7791
  br label %7816

7793:                                             ; preds = %7757
  %7794 = landingpad { ptr, i32 }
          cleanup
  %7795 = extractvalue { ptr, i32 } %7794, 0
  store ptr %7795, ptr %5, align 8
  %7796 = extractvalue { ptr, i32 } %7794, 1
  store i32 %7796, ptr %6, align 4
  br label %7801

7797:                                             ; preds = %7760, %7758
  %7798 = landingpad { ptr, i32 }
          cleanup
  %7799 = extractvalue { ptr, i32 } %7798, 0
  store ptr %7799, ptr %5, align 8
  %7800 = extractvalue { ptr, i32 } %7798, 1
  store i32 %7800, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %478) #5
  br label %7801

7801:                                             ; preds = %7797, %7793
  call void @llvm.lifetime.end.p0(i64 24, ptr %478) #5
  br label %11991

7802:                                             ; preds = %7768
  %7803 = landingpad { ptr, i32 }
          cleanup
  %7804 = extractvalue { ptr, i32 } %7803, 0
  store ptr %7804, ptr %5, align 8
  %7805 = extractvalue { ptr, i32 } %7803, 1
  store i32 %7805, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %479) #5
  br label %11991

7806:                                             ; preds = %7771
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %480) #5
  br label %11991

7810:                                             ; preds = %7782
  %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 @llvm.lifetime.end.p0(i64 1, ptr %481) #5
  br label %11991

7814:                                             ; preds = %7788
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7815 unwind label %1024

7815:                                             ; preds = %7814
  br label %7776, !llvm.loop !106

7816:                                             ; preds = %7792
  %7817 = 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 %7818 unwind label %1024

7818:                                             ; preds = %7816
  %7819 = 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) %7817)
          to label %7820 unwind label %1024

7820:                                             ; preds = %7818
  call void @llvm.lifetime.start.p0(i64 24, ptr %482) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %482, i32 noundef 10)
          to label %7821 unwind label %7856

7821:                                             ; preds = %7820
  %7822 = 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) %482)
          to label %7823 unwind label %7860

7823:                                             ; preds = %7821
  %7824 = 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) %7822)
          to label %7825 unwind label %7860

7825:                                             ; preds = %7823
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %482) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %482) #5
  %7826 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %7827 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7826, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7828 unwind label %1024

7828:                                             ; preds = %7825
  %7829 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %7830 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7829, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7831 unwind label %1024

7831:                                             ; preds = %7828
  call void @llvm.lifetime.start.p0(i64 1, ptr %483) #5
  store i8 1, ptr %483, align 1, !tbaa !9
  %7832 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %7833 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7832, ptr noundef nonnull align 1 dereferenceable(1) %483)
          to label %7834 unwind label %7865

7834:                                             ; preds = %7831
  call void @llvm.lifetime.end.p0(i64 1, ptr %483) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %484) #5
  store i8 1, ptr %484, align 1, !tbaa !9
  %7835 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7836 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7835, ptr noundef nonnull align 1 dereferenceable(1) %484)
          to label %7837 unwind label %7869

7837:                                             ; preds = %7834
  call void @llvm.lifetime.end.p0(i64 1, ptr %484) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7838 unwind label %1024

7838:                                             ; preds = %7837
  br label %7839

7839:                                             ; preds = %7878, %7838
  br label %7840

7840:                                             ; preds = %7839
  %7841 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %7842 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %7841)
          to label %7843 unwind label %1024

7843:                                             ; preds = %7840
  %7844 = 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) %7842)
          to label %7845 unwind label %1024

7845:                                             ; preds = %7843
  call void @llvm.lifetime.start.p0(i64 1, ptr %485) #5
  store i8 0, ptr %485, align 1, !tbaa !9
  %7846 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7847 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7846, ptr noundef nonnull align 1 dereferenceable(1) %485)
          to label %7848 unwind label %7873

7848:                                             ; preds = %7845
  call void @llvm.lifetime.end.p0(i64 1, ptr %485) #5
  %7849 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %7850 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7849)
          to label %7851 unwind label %1024

7851:                                             ; preds = %7848
  %7852 = load i8, ptr %7850, align 1, !tbaa !9, !range !11, !noundef !12
  %7853 = trunc i8 %7852 to i1
  br i1 %7853, label %7854, label %7877

7854:                                             ; preds = %7851
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7855 unwind label %1024

7855:                                             ; preds = %7854
  br label %7879

7856:                                             ; preds = %7820
  %7857 = landingpad { ptr, i32 }
          cleanup
  %7858 = extractvalue { ptr, i32 } %7857, 0
  store ptr %7858, ptr %5, align 8
  %7859 = extractvalue { ptr, i32 } %7857, 1
  store i32 %7859, ptr %6, align 4
  br label %7864

7860:                                             ; preds = %7823, %7821
  %7861 = landingpad { ptr, i32 }
          cleanup
  %7862 = extractvalue { ptr, i32 } %7861, 0
  store ptr %7862, ptr %5, align 8
  %7863 = extractvalue { ptr, i32 } %7861, 1
  store i32 %7863, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %482) #5
  br label %7864

7864:                                             ; preds = %7860, %7856
  call void @llvm.lifetime.end.p0(i64 24, ptr %482) #5
  br label %11991

7865:                                             ; preds = %7831
  %7866 = landingpad { ptr, i32 }
          cleanup
  %7867 = extractvalue { ptr, i32 } %7866, 0
  store ptr %7867, ptr %5, align 8
  %7868 = extractvalue { ptr, i32 } %7866, 1
  store i32 %7868, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %483) #5
  br label %11991

7869:                                             ; preds = %7834
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %484) #5
  br label %11991

7873:                                             ; preds = %7845
  %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 @llvm.lifetime.end.p0(i64 1, ptr %485) #5
  br label %11991

7877:                                             ; preds = %7851
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7878 unwind label %1024

7878:                                             ; preds = %7877
  br label %7839, !llvm.loop !107

7879:                                             ; preds = %7855
  %7880 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 11
  %7881 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %7880)
          to label %7882 unwind label %1024

7882:                                             ; preds = %7879
  %7883 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %7881, i32 noundef 3)
          to label %7884 unwind label %1024

7884:                                             ; preds = %7882
  %7885 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %7883)
          to label %7886 unwind label %1024

7886:                                             ; preds = %7884
  %7887 = icmp ne i64 %7885, 0
  br i1 %7887, label %7888, label %7891

7888:                                             ; preds = %7886
  %7889 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 4096)
          to label %7890 unwind label %1024

7890:                                             ; preds = %7888
  br label %7894

7891:                                             ; preds = %7886
  %7892 = 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 %7893 unwind label %1024

7893:                                             ; preds = %7891
  br label %7894

7894:                                             ; preds = %7893, %7890
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7895 unwind label %1024

7895:                                             ; preds = %7894
  %7896 = 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 %7897 unwind label %1024

7897:                                             ; preds = %7895
  %7898 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %38)
          to label %7899 unwind label %1024

7899:                                             ; preds = %7897
  %7900 = trunc i64 %7898 to i32
  switch i32 %7900, label %9248 [
    i32 4, label %7901
    i32 5, label %8122
    i32 6, label %8243
    i32 7, label %8364
    i32 8, label %8522
    i32 9, label %8620
    i32 -1, label %8720
  ]

7901:                                             ; preds = %7899
  %7902 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7903 unwind label %1024

7903:                                             ; preds = %7901
  %7904 = icmp ne i64 %7902, 6
  br i1 %7904, label %7905, label %7909

7905:                                             ; preds = %7903
  %7906 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 2)
          to label %7907 unwind label %1024

7907:                                             ; preds = %7905
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7908 unwind label %1024

7908:                                             ; preds = %7907
  br label %8121

7909:                                             ; preds = %7903
  call void @llvm.lifetime.start.p0(i64 24, ptr %486) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %486, i32 noundef 24)
          to label %7910 unwind label %7945

7910:                                             ; preds = %7909
  %7911 = 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) %486)
          to label %7912 unwind label %7949

7912:                                             ; preds = %7910
  %7913 = 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) %7911)
          to label %7914 unwind label %7949

7914:                                             ; preds = %7912
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %486) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %486) #5
  %7915 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %7916 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7915, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7917 unwind label %1024

7917:                                             ; preds = %7914
  %7918 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %7919 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7918, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7920 unwind label %1024

7920:                                             ; preds = %7917
  call void @llvm.lifetime.start.p0(i64 1, ptr %487) #5
  store i8 1, ptr %487, align 1, !tbaa !9
  %7921 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %7922 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7921, ptr noundef nonnull align 1 dereferenceable(1) %487)
          to label %7923 unwind label %7954

7923:                                             ; preds = %7920
  call void @llvm.lifetime.end.p0(i64 1, ptr %487) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %488) #5
  store i8 1, ptr %488, align 1, !tbaa !9
  %7924 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7925 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7924, ptr noundef nonnull align 1 dereferenceable(1) %488)
          to label %7926 unwind label %7958

7926:                                             ; preds = %7923
  call void @llvm.lifetime.end.p0(i64 1, ptr %488) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7927 unwind label %1024

7927:                                             ; preds = %7926
  br label %7928

7928:                                             ; preds = %7967, %7927
  br label %7929

7929:                                             ; preds = %7928
  %7930 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %7931 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %7930)
          to label %7932 unwind label %1024

7932:                                             ; preds = %7929
  %7933 = 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) %7931)
          to label %7934 unwind label %1024

7934:                                             ; preds = %7932
  call void @llvm.lifetime.start.p0(i64 1, ptr %489) #5
  store i8 0, ptr %489, align 1, !tbaa !9
  %7935 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %7936 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7935, ptr noundef nonnull align 1 dereferenceable(1) %489)
          to label %7937 unwind label %7962

7937:                                             ; preds = %7934
  call void @llvm.lifetime.end.p0(i64 1, ptr %489) #5
  %7938 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %7939 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7938)
          to label %7940 unwind label %1024

7940:                                             ; preds = %7937
  %7941 = load i8, ptr %7939, align 1, !tbaa !9, !range !11, !noundef !12
  %7942 = trunc i8 %7941 to i1
  br i1 %7942, label %7943, label %7966

7943:                                             ; preds = %7940
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7944 unwind label %1024

7944:                                             ; preds = %7943
  br label %7968

7945:                                             ; preds = %7909
  %7946 = landingpad { ptr, i32 }
          cleanup
  %7947 = extractvalue { ptr, i32 } %7946, 0
  store ptr %7947, ptr %5, align 8
  %7948 = extractvalue { ptr, i32 } %7946, 1
  store i32 %7948, ptr %6, align 4
  br label %7953

7949:                                             ; preds = %7912, %7910
  %7950 = landingpad { ptr, i32 }
          cleanup
  %7951 = extractvalue { ptr, i32 } %7950, 0
  store ptr %7951, ptr %5, align 8
  %7952 = extractvalue { ptr, i32 } %7950, 1
  store i32 %7952, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %486) #5
  br label %7953

7953:                                             ; preds = %7949, %7945
  call void @llvm.lifetime.end.p0(i64 24, ptr %486) #5
  br label %11991

7954:                                             ; preds = %7920
  %7955 = landingpad { ptr, i32 }
          cleanup
  %7956 = extractvalue { ptr, i32 } %7955, 0
  store ptr %7956, ptr %5, align 8
  %7957 = extractvalue { ptr, i32 } %7955, 1
  store i32 %7957, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %487) #5
  br label %11991

7958:                                             ; preds = %7923
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %488) #5
  br label %11991

7962:                                             ; preds = %7934
  %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 @llvm.lifetime.end.p0(i64 1, ptr %489) #5
  br label %11991

7966:                                             ; preds = %7940
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %7967 unwind label %1024

7967:                                             ; preds = %7966
  br label %7928, !llvm.loop !108

7968:                                             ; preds = %7944
  call void @llvm.lifetime.start.p0(i64 24, ptr %490) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %490, i32 noundef 1)
          to label %7969 unwind label %7986

7969:                                             ; preds = %7968
  %7970 = 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 %7971 unwind label %7990

7971:                                             ; preds = %7969
  %7972 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %490, ptr noundef nonnull align 8 dereferenceable(8) %7970)
          to label %7973 unwind label %7990

7973:                                             ; preds = %7971
  %7974 = 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) %7972)
          to label %7975 unwind label %7990

7975:                                             ; preds = %7973
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %490) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %490) #5
  %7976 = 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 %7977 unwind label %1024

7977:                                             ; preds = %7975
  %7978 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %7976)
          to label %7979 unwind label %1024

7979:                                             ; preds = %7977
  %7980 = icmp ne i64 %7978, 0
  br i1 %7980, label %7981, label %7995

7981:                                             ; preds = %7979
  %7982 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 8)
          to label %7983 unwind label %1024

7983:                                             ; preds = %7981
  %7984 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 9)
          to label %7985 unwind label %1024

7985:                                             ; preds = %7983
  br label %8000

7986:                                             ; preds = %7968
  %7987 = landingpad { ptr, i32 }
          cleanup
  %7988 = extractvalue { ptr, i32 } %7987, 0
  store ptr %7988, ptr %5, align 8
  %7989 = extractvalue { ptr, i32 } %7987, 1
  store i32 %7989, ptr %6, align 4
  br label %7994

7990:                                             ; preds = %7973, %7971, %7969
  %7991 = landingpad { ptr, i32 }
          cleanup
  %7992 = extractvalue { ptr, i32 } %7991, 0
  store ptr %7992, ptr %5, align 8
  %7993 = extractvalue { ptr, i32 } %7991, 1
  store i32 %7993, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %490) #5
  br label %7994

7994:                                             ; preds = %7990, %7986
  call void @llvm.lifetime.end.p0(i64 24, ptr %490) #5
  br label %11991

7995:                                             ; preds = %7979
  %7996 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 16)
          to label %7997 unwind label %1024

7997:                                             ; preds = %7995
  %7998 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 17)
          to label %7999 unwind label %1024

7999:                                             ; preds = %7997
  br label %8000

8000:                                             ; preds = %7999, %7985
  %8001 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %8002 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8001, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %8003 unwind label %1024

8003:                                             ; preds = %8000
  %8004 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %8005 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8004, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %8006 unwind label %1024

8006:                                             ; preds = %8003
  call void @llvm.lifetime.start.p0(i64 1, ptr %491) #5
  store i8 0, ptr %491, align 1, !tbaa !9
  %8007 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %8008 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8007, ptr noundef nonnull align 1 dereferenceable(1) %491)
          to label %8009 unwind label %8026

8009:                                             ; preds = %8006
  call void @llvm.lifetime.end.p0(i64 1, ptr %491) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %492) #5
  store i8 1, ptr %492, align 1, !tbaa !9
  %8010 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %8011 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8010, ptr noundef nonnull align 1 dereferenceable(1) %492)
          to label %8012 unwind label %8030

8012:                                             ; preds = %8009
  call void @llvm.lifetime.end.p0(i64 1, ptr %492) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8013 unwind label %1024

8013:                                             ; preds = %8012
  br label %8014

8014:                                             ; preds = %8039, %8013
  br label %8015

8015:                                             ; preds = %8014
  call void @llvm.lifetime.start.p0(i64 1, ptr %493) #5
  store i8 0, ptr %493, align 1, !tbaa !9
  %8016 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %8017 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8016, ptr noundef nonnull align 1 dereferenceable(1) %493)
          to label %8018 unwind label %8034

8018:                                             ; preds = %8015
  call void @llvm.lifetime.end.p0(i64 1, ptr %493) #5
  %8019 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %8020 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %8019)
          to label %8021 unwind label %1024

8021:                                             ; preds = %8018
  %8022 = load i8, ptr %8020, align 1, !tbaa !9, !range !11, !noundef !12
  %8023 = trunc i8 %8022 to i1
  br i1 %8023, label %8024, label %8038

8024:                                             ; preds = %8021
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8025 unwind label %1024

8025:                                             ; preds = %8024
  br label %8040

8026:                                             ; preds = %8006
  %8027 = landingpad { ptr, i32 }
          cleanup
  %8028 = extractvalue { ptr, i32 } %8027, 0
  store ptr %8028, ptr %5, align 8
  %8029 = extractvalue { ptr, i32 } %8027, 1
  store i32 %8029, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %491) #5
  br label %11991

8030:                                             ; preds = %8009
  %8031 = landingpad { ptr, i32 }
          cleanup
  %8032 = extractvalue { ptr, i32 } %8031, 0
  store ptr %8032, ptr %5, align 8
  %8033 = extractvalue { ptr, i32 } %8031, 1
  store i32 %8033, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %492) #5
  br label %11991

8034:                                             ; preds = %8015
  %8035 = landingpad { ptr, i32 }
          cleanup
  %8036 = extractvalue { ptr, i32 } %8035, 0
  store ptr %8036, ptr %5, align 8
  %8037 = extractvalue { ptr, i32 } %8035, 1
  store i32 %8037, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %493) #5
  br label %11991

8038:                                             ; preds = %8021
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8039 unwind label %1024

8039:                                             ; preds = %8038
  br label %8014, !llvm.loop !109

8040:                                             ; preds = %8025
  call void @llvm.lifetime.start.p0(i64 24, ptr %494) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %495) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %495, i32 noundef 25)
          to label %8041 unwind label %8075

8041:                                             ; preds = %8040
  %8042 = 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) %495)
          to label %8043 unwind label %8079

8043:                                             ; preds = %8041
  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) %8042)
          to label %8044 unwind label %8079

8044:                                             ; preds = %8043
  %8045 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %8046 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8045, ptr noundef nonnull align 8 dereferenceable(24) %494)
          to label %8047 unwind label %8083

8047:                                             ; preds = %8044
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %494) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %495) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %495) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %494) #5
  %8048 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %8049 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8048, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %8050 unwind label %1024

8050:                                             ; preds = %8047
  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 2)
          to label %8051 unwind label %8089

8051:                                             ; preds = %8050
  %8052 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %8053 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8052, ptr noundef nonnull align 8 dereferenceable(24) %496)
          to label %8054 unwind label %8093

8054:                                             ; preds = %8051
  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.start.p0(i64 24, ptr %497) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %497, i32 noundef 3)
          to label %8055 unwind label %8098

8055:                                             ; preds = %8054
  %8056 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %8057 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8056, ptr noundef nonnull align 8 dereferenceable(24) %497)
          to label %8058 unwind label %8102

8058:                                             ; preds = %8055
  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
  %8059 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %8060 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8059, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8061 unwind label %1024

8061:                                             ; preds = %8058
  call void @llvm.lifetime.start.p0(i64 1, ptr %498) #5
  store i8 1, ptr %498, align 1, !tbaa !9
  %8062 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %8063 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8062, ptr noundef nonnull align 1 dereferenceable(1) %498)
          to label %8064 unwind label %8107

8064:                                             ; preds = %8061
  call void @llvm.lifetime.end.p0(i64 1, ptr %498) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8065 unwind label %1024

8065:                                             ; preds = %8064
  br label %8066

8066:                                             ; preds = %8074, %8065
  %8067 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %8068 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8067)
          to label %8069 unwind label %1024

8069:                                             ; preds = %8066
  %8070 = load i8, ptr %8068, align 1, !tbaa !9, !range !11, !noundef !12
  %8071 = trunc i8 %8070 to i1
  %8072 = xor i1 %8071, true
  br i1 %8072, label %8073, label %8111

8073:                                             ; preds = %8069
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8074 unwind label %1024

8074:                                             ; preds = %8073
  br label %8066, !llvm.loop !110

8075:                                             ; preds = %8040
  %8076 = landingpad { ptr, i32 }
          cleanup
  %8077 = extractvalue { ptr, i32 } %8076, 0
  store ptr %8077, ptr %5, align 8
  %8078 = extractvalue { ptr, i32 } %8076, 1
  store i32 %8078, ptr %6, align 4
  br label %8088

8079:                                             ; preds = %8043, %8041
  %8080 = landingpad { ptr, i32 }
          cleanup
  %8081 = extractvalue { ptr, i32 } %8080, 0
  store ptr %8081, ptr %5, align 8
  %8082 = extractvalue { ptr, i32 } %8080, 1
  store i32 %8082, ptr %6, align 4
  br label %8087

8083:                                             ; preds = %8044
  %8084 = landingpad { ptr, i32 }
          cleanup
  %8085 = extractvalue { ptr, i32 } %8084, 0
  store ptr %8085, ptr %5, align 8
  %8086 = extractvalue { ptr, i32 } %8084, 1
  store i32 %8086, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %494) #5
  br label %8087

8087:                                             ; preds = %8083, %8079
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %495) #5
  br label %8088

8088:                                             ; preds = %8087, %8075
  call void @llvm.lifetime.end.p0(i64 24, ptr %495) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %494) #5
  br label %11991

8089:                                             ; preds = %8050
  %8090 = landingpad { ptr, i32 }
          cleanup
  %8091 = extractvalue { ptr, i32 } %8090, 0
  store ptr %8091, ptr %5, align 8
  %8092 = extractvalue { ptr, i32 } %8090, 1
  store i32 %8092, ptr %6, align 4
  br label %8097

8093:                                             ; preds = %8051
  %8094 = landingpad { ptr, i32 }
          cleanup
  %8095 = extractvalue { ptr, i32 } %8094, 0
  store ptr %8095, ptr %5, align 8
  %8096 = extractvalue { ptr, i32 } %8094, 1
  store i32 %8096, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %496) #5
  br label %8097

8097:                                             ; preds = %8093, %8089
  call void @llvm.lifetime.end.p0(i64 24, ptr %496) #5
  br label %11991

8098:                                             ; preds = %8054
  %8099 = landingpad { ptr, i32 }
          cleanup
  %8100 = extractvalue { ptr, i32 } %8099, 0
  store ptr %8100, ptr %5, align 8
  %8101 = extractvalue { ptr, i32 } %8099, 1
  store i32 %8101, ptr %6, align 4
  br label %8106

8102:                                             ; preds = %8055
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %497) #5
  br label %8106

8106:                                             ; preds = %8102, %8098
  call void @llvm.lifetime.end.p0(i64 24, ptr %497) #5
  br label %11991

8107:                                             ; preds = %8061
  %8108 = landingpad { ptr, i32 }
          cleanup
  %8109 = extractvalue { ptr, i32 } %8108, 0
  store ptr %8109, ptr %5, align 8
  %8110 = extractvalue { ptr, i32 } %8108, 1
  store i32 %8110, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %498) #5
  br label %11991

8111:                                             ; preds = %8069
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8112 unwind label %1024

8112:                                             ; preds = %8111
  call void @llvm.lifetime.start.p0(i64 1, ptr %499) #5
  store i8 0, ptr %499, align 1, !tbaa !9
  %8113 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %8114 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8113, ptr noundef nonnull align 1 dereferenceable(1) %499)
          to label %8115 unwind label %8117

8115:                                             ; preds = %8112
  call void @llvm.lifetime.end.p0(i64 1, ptr %499) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8116 unwind label %1024

8116:                                             ; preds = %8115
  br label %8121

8117:                                             ; preds = %8112
  %8118 = landingpad { ptr, i32 }
          cleanup
  %8119 = extractvalue { ptr, i32 } %8118, 0
  store ptr %8119, ptr %5, align 8
  %8120 = extractvalue { ptr, i32 } %8118, 1
  store i32 %8120, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %499) #5
  br label %11991

8121:                                             ; preds = %8116, %7908
  br label %9252

8122:                                             ; preds = %7899
  %8123 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8124 unwind label %1024

8124:                                             ; preds = %8122
  %8125 = icmp ne i64 %8123, 64
  br i1 %8125, label %8126, label %8130

8126:                                             ; preds = %8124
  %8127 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 2)
          to label %8128 unwind label %1024

8128:                                             ; preds = %8126
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8129 unwind label %1024

8129:                                             ; preds = %8128
  br label %8242

8130:                                             ; preds = %8124
  call void @llvm.lifetime.start.p0(i64 24, ptr %500) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %501) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %501, i32 noundef 24)
          to label %8131 unwind label %8152

8131:                                             ; preds = %8130
  %8132 = 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) %501)
          to label %8133 unwind label %8156

8133:                                             ; preds = %8131
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %500, ptr noundef nonnull align 1 dereferenceable(1) %8132)
          to label %8134 unwind label %8156

8134:                                             ; preds = %8133
  %8135 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %8136 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8135, ptr noundef nonnull align 8 dereferenceable(24) %500)
          to label %8137 unwind label %8160

8137:                                             ; preds = %8134
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %500) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %501) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %501) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %500) #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 32)
          to label %8138 unwind label %8166

8138:                                             ; preds = %8137
  %8139 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %8140 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8139, ptr noundef nonnull align 8 dereferenceable(24) %502)
          to label %8141 unwind label %8170

8141:                                             ; preds = %8138
  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
  %8142 = 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 %8143 unwind label %1024

8143:                                             ; preds = %8141
  %8144 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %8142)
          to label %8145 unwind label %1024

8145:                                             ; preds = %8143
  %8146 = icmp ne i64 %8144, 0
  br i1 %8146, label %8147, label %8184

8147:                                             ; preds = %8145
  call void @llvm.lifetime.start.p0(i64 24, ptr %503) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %503, i32 noundef 64)
          to label %8148 unwind label %8175

8148:                                             ; preds = %8147
  %8149 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %8150 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8149, ptr noundef nonnull align 8 dereferenceable(24) %503)
          to label %8151 unwind label %8179

8151:                                             ; preds = %8148
  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
  br label %8198

8152:                                             ; preds = %8130
  %8153 = landingpad { ptr, i32 }
          cleanup
  %8154 = extractvalue { ptr, i32 } %8153, 0
  store ptr %8154, ptr %5, align 8
  %8155 = extractvalue { ptr, i32 } %8153, 1
  store i32 %8155, ptr %6, align 4
  br label %8165

8156:                                             ; preds = %8133, %8131
  %8157 = landingpad { ptr, i32 }
          cleanup
  %8158 = extractvalue { ptr, i32 } %8157, 0
  store ptr %8158, ptr %5, align 8
  %8159 = extractvalue { ptr, i32 } %8157, 1
  store i32 %8159, ptr %6, align 4
  br label %8164

8160:                                             ; preds = %8134
  %8161 = landingpad { ptr, i32 }
          cleanup
  %8162 = extractvalue { ptr, i32 } %8161, 0
  store ptr %8162, ptr %5, align 8
  %8163 = extractvalue { ptr, i32 } %8161, 1
  store i32 %8163, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %500) #5
  br label %8164

8164:                                             ; preds = %8160, %8156
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %501) #5
  br label %8165

8165:                                             ; preds = %8164, %8152
  call void @llvm.lifetime.end.p0(i64 24, ptr %501) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %500) #5
  br label %11991

8166:                                             ; preds = %8137
  %8167 = landingpad { ptr, i32 }
          cleanup
  %8168 = extractvalue { ptr, i32 } %8167, 0
  store ptr %8168, ptr %5, align 8
  %8169 = extractvalue { ptr, i32 } %8167, 1
  store i32 %8169, ptr %6, align 4
  br label %8174

8170:                                             ; preds = %8138
  %8171 = landingpad { ptr, i32 }
          cleanup
  %8172 = extractvalue { ptr, i32 } %8171, 0
  store ptr %8172, ptr %5, align 8
  %8173 = extractvalue { ptr, i32 } %8171, 1
  store i32 %8173, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %502) #5
  br label %8174

8174:                                             ; preds = %8170, %8166
  call void @llvm.lifetime.end.p0(i64 24, ptr %502) #5
  br label %11991

8175:                                             ; preds = %8147
  %8176 = landingpad { ptr, i32 }
          cleanup
  %8177 = extractvalue { ptr, i32 } %8176, 0
  store ptr %8177, ptr %5, align 8
  %8178 = extractvalue { ptr, i32 } %8176, 1
  store i32 %8178, ptr %6, align 4
  br label %8183

8179:                                             ; preds = %8148
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %503) #5
  br label %8183

8183:                                             ; preds = %8179, %8175
  call void @llvm.lifetime.end.p0(i64 24, ptr %503) #5
  br label %11991

8184:                                             ; preds = %8145
  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 96)
          to label %8185 unwind label %8189

8185:                                             ; preds = %8184
  %8186 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %8187 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8186, ptr noundef nonnull align 8 dereferenceable(24) %504)
          to label %8188 unwind label %8193

8188:                                             ; preds = %8185
  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 %8198

8189:                                             ; preds = %8184
  %8190 = landingpad { ptr, i32 }
          cleanup
  %8191 = extractvalue { ptr, i32 } %8190, 0
  store ptr %8191, ptr %5, align 8
  %8192 = extractvalue { ptr, i32 } %8190, 1
  store i32 %8192, ptr %6, align 4
  br label %8197

8193:                                             ; preds = %8185
  %8194 = landingpad { ptr, i32 }
          cleanup
  %8195 = extractvalue { ptr, i32 } %8194, 0
  store ptr %8195, ptr %5, align 8
  %8196 = extractvalue { ptr, i32 } %8194, 1
  store i32 %8196, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %504) #5
  br label %8197

8197:                                             ; preds = %8193, %8189
  call void @llvm.lifetime.end.p0(i64 24, ptr %504) #5
  br label %11991

8198:                                             ; preds = %8188, %8151
  call void @llvm.lifetime.start.p0(i64 24, ptr %505) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %505, i32 noundef 3)
          to label %8199 unwind label %8219

8199:                                             ; preds = %8198
  %8200 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %8201 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8200, ptr noundef nonnull align 8 dereferenceable(24) %505)
          to label %8202 unwind label %8223

8202:                                             ; preds = %8199
  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
  %8203 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %8204 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8203, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8205 unwind label %1024

8205:                                             ; preds = %8202
  call void @llvm.lifetime.start.p0(i64 1, ptr %506) #5
  store i8 1, ptr %506, align 1, !tbaa !9
  %8206 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %8207 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8206, ptr noundef nonnull align 1 dereferenceable(1) %506)
          to label %8208 unwind label %8228

8208:                                             ; preds = %8205
  call void @llvm.lifetime.end.p0(i64 1, ptr %506) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8209 unwind label %1024

8209:                                             ; preds = %8208
  br label %8210

8210:                                             ; preds = %8218, %8209
  %8211 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %8212 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8211)
          to label %8213 unwind label %1024

8213:                                             ; preds = %8210
  %8214 = load i8, ptr %8212, align 1, !tbaa !9, !range !11, !noundef !12
  %8215 = trunc i8 %8214 to i1
  %8216 = xor i1 %8215, true
  br i1 %8216, label %8217, label %8232

8217:                                             ; preds = %8213
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8218 unwind label %1024

8218:                                             ; preds = %8217
  br label %8210, !llvm.loop !111

8219:                                             ; preds = %8198
  %8220 = landingpad { ptr, i32 }
          cleanup
  %8221 = extractvalue { ptr, i32 } %8220, 0
  store ptr %8221, ptr %5, align 8
  %8222 = extractvalue { ptr, i32 } %8220, 1
  store i32 %8222, ptr %6, align 4
  br label %8227

8223:                                             ; preds = %8199
  %8224 = landingpad { ptr, i32 }
          cleanup
  %8225 = extractvalue { ptr, i32 } %8224, 0
  store ptr %8225, ptr %5, align 8
  %8226 = extractvalue { ptr, i32 } %8224, 1
  store i32 %8226, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %505) #5
  br label %8227

8227:                                             ; preds = %8223, %8219
  call void @llvm.lifetime.end.p0(i64 24, ptr %505) #5
  br label %11991

8228:                                             ; preds = %8205
  %8229 = landingpad { ptr, i32 }
          cleanup
  %8230 = extractvalue { ptr, i32 } %8229, 0
  store ptr %8230, ptr %5, align 8
  %8231 = extractvalue { ptr, i32 } %8229, 1
  store i32 %8231, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %506) #5
  br label %11991

8232:                                             ; preds = %8213
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8233 unwind label %1024

8233:                                             ; preds = %8232
  call void @llvm.lifetime.start.p0(i64 1, ptr %507) #5
  store i8 0, ptr %507, align 1, !tbaa !9
  %8234 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %8235 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8234, ptr noundef nonnull align 1 dereferenceable(1) %507)
          to label %8236 unwind label %8238

8236:                                             ; preds = %8233
  call void @llvm.lifetime.end.p0(i64 1, ptr %507) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8237 unwind label %1024

8237:                                             ; preds = %8236
  br label %8242

8238:                                             ; preds = %8233
  %8239 = landingpad { ptr, i32 }
          cleanup
  %8240 = extractvalue { ptr, i32 } %8239, 0
  store ptr %8240, ptr %5, align 8
  %8241 = extractvalue { ptr, i32 } %8239, 1
  store i32 %8241, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %507) #5
  br label %11991

8242:                                             ; preds = %8237, %8129
  br label %9252

8243:                                             ; preds = %7899
  %8244 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8245 unwind label %1024

8245:                                             ; preds = %8243
  %8246 = icmp ne i64 %8244, 64
  br i1 %8246, label %8247, label %8251

8247:                                             ; preds = %8245
  %8248 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 2)
          to label %8249 unwind label %1024

8249:                                             ; preds = %8247
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8250 unwind label %1024

8250:                                             ; preds = %8249
  br label %8363

8251:                                             ; preds = %8245
  call void @llvm.lifetime.start.p0(i64 24, ptr %508) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %509) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %509, i32 noundef 24)
          to label %8252 unwind label %8273

8252:                                             ; preds = %8251
  %8253 = 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) %509)
          to label %8254 unwind label %8277

8254:                                             ; preds = %8252
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %508, ptr noundef nonnull align 1 dereferenceable(1) %8253)
          to label %8255 unwind label %8277

8255:                                             ; preds = %8254
  %8256 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %8257 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8256, ptr noundef nonnull align 8 dereferenceable(24) %508)
          to label %8258 unwind label %8281

8258:                                             ; preds = %8255
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %508) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %509) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %509) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %508) #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 32)
          to label %8259 unwind label %8287

8259:                                             ; preds = %8258
  %8260 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %8261 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8260, ptr noundef nonnull align 8 dereferenceable(24) %510)
          to label %8262 unwind label %8291

8262:                                             ; preds = %8259
  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
  %8263 = 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 %8264 unwind label %1024

8264:                                             ; preds = %8262
  %8265 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %8263)
          to label %8266 unwind label %1024

8266:                                             ; preds = %8264
  %8267 = icmp ne i64 %8265, 0
  br i1 %8267, label %8268, label %8305

8268:                                             ; preds = %8266
  call void @llvm.lifetime.start.p0(i64 24, ptr %511) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %511, i32 noundef 128)
          to label %8269 unwind label %8296

8269:                                             ; preds = %8268
  %8270 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %8271 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8270, ptr noundef nonnull align 8 dereferenceable(24) %511)
          to label %8272 unwind label %8300

8272:                                             ; preds = %8269
  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
  br label %8319

8273:                                             ; preds = %8251
  %8274 = landingpad { ptr, i32 }
          cleanup
  %8275 = extractvalue { ptr, i32 } %8274, 0
  store ptr %8275, ptr %5, align 8
  %8276 = extractvalue { ptr, i32 } %8274, 1
  store i32 %8276, ptr %6, align 4
  br label %8286

8277:                                             ; preds = %8254, %8252
  %8278 = landingpad { ptr, i32 }
          cleanup
  %8279 = extractvalue { ptr, i32 } %8278, 0
  store ptr %8279, ptr %5, align 8
  %8280 = extractvalue { ptr, i32 } %8278, 1
  store i32 %8280, ptr %6, align 4
  br label %8285

8281:                                             ; preds = %8255
  %8282 = landingpad { ptr, i32 }
          cleanup
  %8283 = extractvalue { ptr, i32 } %8282, 0
  store ptr %8283, ptr %5, align 8
  %8284 = extractvalue { ptr, i32 } %8282, 1
  store i32 %8284, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %508) #5
  br label %8285

8285:                                             ; preds = %8281, %8277
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %509) #5
  br label %8286

8286:                                             ; preds = %8285, %8273
  call void @llvm.lifetime.end.p0(i64 24, ptr %509) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %508) #5
  br label %11991

8287:                                             ; preds = %8258
  %8288 = landingpad { ptr, i32 }
          cleanup
  %8289 = extractvalue { ptr, i32 } %8288, 0
  store ptr %8289, ptr %5, align 8
  %8290 = extractvalue { ptr, i32 } %8288, 1
  store i32 %8290, ptr %6, align 4
  br label %8295

8291:                                             ; preds = %8259
  %8292 = landingpad { ptr, i32 }
          cleanup
  %8293 = extractvalue { ptr, i32 } %8292, 0
  store ptr %8293, ptr %5, align 8
  %8294 = extractvalue { ptr, i32 } %8292, 1
  store i32 %8294, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %510) #5
  br label %8295

8295:                                             ; preds = %8291, %8287
  call void @llvm.lifetime.end.p0(i64 24, ptr %510) #5
  br label %11991

8296:                                             ; preds = %8268
  %8297 = landingpad { ptr, i32 }
          cleanup
  %8298 = extractvalue { ptr, i32 } %8297, 0
  store ptr %8298, ptr %5, align 8
  %8299 = extractvalue { ptr, i32 } %8297, 1
  store i32 %8299, ptr %6, align 4
  br label %8304

8300:                                             ; preds = %8269
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %511) #5
  br label %8304

8304:                                             ; preds = %8300, %8296
  call void @llvm.lifetime.end.p0(i64 24, ptr %511) #5
  br label %11991

8305:                                             ; preds = %8266
  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 160)
          to label %8306 unwind label %8310

8306:                                             ; preds = %8305
  %8307 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %8308 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8307, ptr noundef nonnull align 8 dereferenceable(24) %512)
          to label %8309 unwind label %8314

8309:                                             ; preds = %8306
  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 %8319

8310:                                             ; preds = %8305
  %8311 = landingpad { ptr, i32 }
          cleanup
  %8312 = extractvalue { ptr, i32 } %8311, 0
  store ptr %8312, ptr %5, align 8
  %8313 = extractvalue { ptr, i32 } %8311, 1
  store i32 %8313, ptr %6, align 4
  br label %8318

8314:                                             ; preds = %8306
  %8315 = landingpad { ptr, i32 }
          cleanup
  %8316 = extractvalue { ptr, i32 } %8315, 0
  store ptr %8316, ptr %5, align 8
  %8317 = extractvalue { ptr, i32 } %8315, 1
  store i32 %8317, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %512) #5
  br label %8318

8318:                                             ; preds = %8314, %8310
  call void @llvm.lifetime.end.p0(i64 24, ptr %512) #5
  br label %11991

8319:                                             ; preds = %8309, %8272
  call void @llvm.lifetime.start.p0(i64 24, ptr %513) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %513, i32 noundef 3)
          to label %8320 unwind label %8340

8320:                                             ; preds = %8319
  %8321 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %8322 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8321, ptr noundef nonnull align 8 dereferenceable(24) %513)
          to label %8323 unwind label %8344

8323:                                             ; preds = %8320
  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
  %8324 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %8325 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8324, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8326 unwind label %1024

8326:                                             ; preds = %8323
  call void @llvm.lifetime.start.p0(i64 1, ptr %514) #5
  store i8 1, ptr %514, align 1, !tbaa !9
  %8327 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %8328 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8327, ptr noundef nonnull align 1 dereferenceable(1) %514)
          to label %8329 unwind label %8349

8329:                                             ; preds = %8326
  call void @llvm.lifetime.end.p0(i64 1, ptr %514) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8330 unwind label %1024

8330:                                             ; preds = %8329
  br label %8331

8331:                                             ; preds = %8339, %8330
  %8332 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %8333 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8332)
          to label %8334 unwind label %1024

8334:                                             ; preds = %8331
  %8335 = load i8, ptr %8333, align 1, !tbaa !9, !range !11, !noundef !12
  %8336 = trunc i8 %8335 to i1
  %8337 = xor i1 %8336, true
  br i1 %8337, label %8338, label %8353

8338:                                             ; preds = %8334
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8339 unwind label %1024

8339:                                             ; preds = %8338
  br label %8331, !llvm.loop !112

8340:                                             ; preds = %8319
  %8341 = landingpad { ptr, i32 }
          cleanup
  %8342 = extractvalue { ptr, i32 } %8341, 0
  store ptr %8342, ptr %5, align 8
  %8343 = extractvalue { ptr, i32 } %8341, 1
  store i32 %8343, ptr %6, align 4
  br label %8348

8344:                                             ; preds = %8320
  %8345 = landingpad { ptr, i32 }
          cleanup
  %8346 = extractvalue { ptr, i32 } %8345, 0
  store ptr %8346, ptr %5, align 8
  %8347 = extractvalue { ptr, i32 } %8345, 1
  store i32 %8347, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %513) #5
  br label %8348

8348:                                             ; preds = %8344, %8340
  call void @llvm.lifetime.end.p0(i64 24, ptr %513) #5
  br label %11991

8349:                                             ; preds = %8326
  %8350 = landingpad { ptr, i32 }
          cleanup
  %8351 = extractvalue { ptr, i32 } %8350, 0
  store ptr %8351, ptr %5, align 8
  %8352 = extractvalue { ptr, i32 } %8350, 1
  store i32 %8352, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %514) #5
  br label %11991

8353:                                             ; preds = %8334
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8354 unwind label %1024

8354:                                             ; preds = %8353
  call void @llvm.lifetime.start.p0(i64 1, ptr %515) #5
  store i8 0, ptr %515, align 1, !tbaa !9
  %8355 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %8356 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8355, ptr noundef nonnull align 1 dereferenceable(1) %515)
          to label %8357 unwind label %8359

8357:                                             ; preds = %8354
  call void @llvm.lifetime.end.p0(i64 1, ptr %515) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8358 unwind label %1024

8358:                                             ; preds = %8357
  br label %8363

8359:                                             ; preds = %8354
  %8360 = landingpad { ptr, i32 }
          cleanup
  %8361 = extractvalue { ptr, i32 } %8360, 0
  store ptr %8361, ptr %5, align 8
  %8362 = extractvalue { ptr, i32 } %8360, 1
  store i32 %8362, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %515) #5
  br label %11991

8363:                                             ; preds = %8358, %8250
  br label %9252

8364:                                             ; preds = %7899
  %8365 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 7
  %8366 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8365)
          to label %8367 unwind label %1024

8367:                                             ; preds = %8364
  %8368 = load i8, ptr %8366, align 1, !tbaa !9, !range !11, !noundef !12
  %8369 = trunc i8 %8368 to i1
  br i1 %8369, label %8374, label %8370

8370:                                             ; preds = %8367
  %8371 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8372 unwind label %1024

8372:                                             ; preds = %8370
  %8373 = icmp ne i64 %8371, 12
  br i1 %8373, label %8384, label %8374

8374:                                             ; preds = %8372, %8367
  %8375 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 7
  %8376 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8375)
          to label %8377 unwind label %1024

8377:                                             ; preds = %8374
  %8378 = load i8, ptr %8376, align 1, !tbaa !9, !range !11, !noundef !12
  %8379 = trunc i8 %8378 to i1
  br i1 %8379, label %8380, label %8388

8380:                                             ; preds = %8377
  %8381 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8382 unwind label %1024

8382:                                             ; preds = %8380
  %8383 = icmp ne i64 %8381, 8
  br i1 %8383, label %8384, label %8388

8384:                                             ; preds = %8382, %8372
  %8385 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 2)
          to label %8386 unwind label %1024

8386:                                             ; preds = %8384
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8387 unwind label %1024

8387:                                             ; preds = %8386
  br label %8521

8388:                                             ; preds = %8382, %8377
  call void @llvm.lifetime.start.p0(i64 24, ptr %516) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %517) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %517, i32 noundef 24)
          to label %8389 unwind label %8406

8389:                                             ; preds = %8388
  %8390 = 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) %517)
          to label %8391 unwind label %8410

8391:                                             ; preds = %8389
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %516, ptr noundef nonnull align 1 dereferenceable(1) %8390)
          to label %8392 unwind label %8410

8392:                                             ; preds = %8391
  %8393 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %8394 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8393, ptr noundef nonnull align 8 dereferenceable(24) %516)
          to label %8395 unwind label %8414

8395:                                             ; preds = %8392
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %516) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %517) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %517) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %516) #5
  %8396 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 7
  %8397 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8396)
          to label %8398 unwind label %1024

8398:                                             ; preds = %8395
  %8399 = load i8, ptr %8397, align 1, !tbaa !9, !range !11, !noundef !12
  %8400 = trunc i8 %8399 to i1
  br i1 %8400, label %8429, label %8401

8401:                                             ; preds = %8398
  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 6)
          to label %8402 unwind label %8420

8402:                                             ; preds = %8401
  %8403 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %8404 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8403, ptr noundef nonnull align 8 dereferenceable(24) %518)
          to label %8405 unwind label %8424

8405:                                             ; preds = %8402
  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
  br label %8443

8406:                                             ; preds = %8388
  %8407 = landingpad { ptr, i32 }
          cleanup
  %8408 = extractvalue { ptr, i32 } %8407, 0
  store ptr %8408, ptr %5, align 8
  %8409 = extractvalue { ptr, i32 } %8407, 1
  store i32 %8409, ptr %6, align 4
  br label %8419

8410:                                             ; preds = %8391, %8389
  %8411 = landingpad { ptr, i32 }
          cleanup
  %8412 = extractvalue { ptr, i32 } %8411, 0
  store ptr %8412, ptr %5, align 8
  %8413 = extractvalue { ptr, i32 } %8411, 1
  store i32 %8413, ptr %6, align 4
  br label %8418

8414:                                             ; preds = %8392
  %8415 = landingpad { ptr, i32 }
          cleanup
  %8416 = extractvalue { ptr, i32 } %8415, 0
  store ptr %8416, ptr %5, align 8
  %8417 = extractvalue { ptr, i32 } %8415, 1
  store i32 %8417, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %516) #5
  br label %8418

8418:                                             ; preds = %8414, %8410
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %517) #5
  br label %8419

8419:                                             ; preds = %8418, %8406
  call void @llvm.lifetime.end.p0(i64 24, ptr %517) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %516) #5
  br label %11991

8420:                                             ; preds = %8401
  %8421 = landingpad { ptr, i32 }
          cleanup
  %8422 = extractvalue { ptr, i32 } %8421, 0
  store ptr %8422, ptr %5, align 8
  %8423 = extractvalue { ptr, i32 } %8421, 1
  store i32 %8423, ptr %6, align 4
  br label %8428

8424:                                             ; preds = %8402
  %8425 = landingpad { ptr, i32 }
          cleanup
  %8426 = extractvalue { ptr, i32 } %8425, 0
  store ptr %8426, ptr %5, align 8
  %8427 = extractvalue { ptr, i32 } %8425, 1
  store i32 %8427, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %518) #5
  br label %8428

8428:                                             ; preds = %8424, %8420
  call void @llvm.lifetime.end.p0(i64 24, ptr %518) #5
  br label %11991

8429:                                             ; preds = %8398
  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 4)
          to label %8430 unwind label %8434

8430:                                             ; preds = %8429
  %8431 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %8432 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8431, ptr noundef nonnull align 8 dereferenceable(24) %519)
          to label %8433 unwind label %8438

8433:                                             ; preds = %8430
  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 %8443

8434:                                             ; preds = %8429
  %8435 = landingpad { ptr, i32 }
          cleanup
  %8436 = extractvalue { ptr, i32 } %8435, 0
  store ptr %8436, ptr %5, align 8
  %8437 = extractvalue { ptr, i32 } %8435, 1
  store i32 %8437, ptr %6, align 4
  br label %8442

8438:                                             ; preds = %8430
  %8439 = landingpad { ptr, i32 }
          cleanup
  %8440 = extractvalue { ptr, i32 } %8439, 0
  store ptr %8440, ptr %5, align 8
  %8441 = extractvalue { ptr, i32 } %8439, 1
  store i32 %8441, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %519) #5
  br label %8442

8442:                                             ; preds = %8438, %8434
  call void @llvm.lifetime.end.p0(i64 24, ptr %519) #5
  br label %11991

8443:                                             ; preds = %8433, %8405
  %8444 = 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 %8445 unwind label %1024

8445:                                             ; preds = %8443
  %8446 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %8444)
          to label %8447 unwind label %1024

8447:                                             ; preds = %8445
  %8448 = icmp ne i64 %8446, 0
  br i1 %8448, label %8449, label %8463

8449:                                             ; preds = %8447
  call void @llvm.lifetime.start.p0(i64 24, ptr %520) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %520, i32 noundef 32)
          to label %8450 unwind label %8454

8450:                                             ; preds = %8449
  %8451 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %8452 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8451, ptr noundef nonnull align 8 dereferenceable(24) %520)
          to label %8453 unwind label %8458

8453:                                             ; preds = %8450
  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 %8477

8454:                                             ; preds = %8449
  %8455 = landingpad { ptr, i32 }
          cleanup
  %8456 = extractvalue { ptr, i32 } %8455, 0
  store ptr %8456, ptr %5, align 8
  %8457 = extractvalue { ptr, i32 } %8455, 1
  store i32 %8457, ptr %6, align 4
  br label %8462

8458:                                             ; preds = %8450
  %8459 = landingpad { ptr, i32 }
          cleanup
  %8460 = extractvalue { ptr, i32 } %8459, 0
  store ptr %8460, ptr %5, align 8
  %8461 = extractvalue { ptr, i32 } %8459, 1
  store i32 %8461, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %520) #5
  br label %8462

8462:                                             ; preds = %8458, %8454
  call void @llvm.lifetime.end.p0(i64 24, ptr %520) #5
  br label %11991

8463:                                             ; preds = %8447
  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 48)
          to label %8464 unwind label %8468

8464:                                             ; preds = %8463
  %8465 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %8466 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8465, ptr noundef nonnull align 8 dereferenceable(24) %521)
          to label %8467 unwind label %8472

8467:                                             ; preds = %8464
  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 %8477

8468:                                             ; preds = %8463
  %8469 = landingpad { ptr, i32 }
          cleanup
  %8470 = extractvalue { ptr, i32 } %8469, 0
  store ptr %8470, ptr %5, align 8
  %8471 = extractvalue { ptr, i32 } %8469, 1
  store i32 %8471, ptr %6, align 4
  br label %8476

8472:                                             ; preds = %8464
  %8473 = landingpad { ptr, i32 }
          cleanup
  %8474 = extractvalue { ptr, i32 } %8473, 0
  store ptr %8474, ptr %5, align 8
  %8475 = extractvalue { ptr, i32 } %8473, 1
  store i32 %8475, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %521) #5
  br label %8476

8476:                                             ; preds = %8472, %8468
  call void @llvm.lifetime.end.p0(i64 24, ptr %521) #5
  br label %11991

8477:                                             ; preds = %8467, %8453
  call void @llvm.lifetime.start.p0(i64 24, ptr %522) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %522, i32 noundef 3)
          to label %8478 unwind label %8498

8478:                                             ; preds = %8477
  %8479 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %8480 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8479, ptr noundef nonnull align 8 dereferenceable(24) %522)
          to label %8481 unwind label %8502

8481:                                             ; preds = %8478
  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
  %8482 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %8483 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8482, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8484 unwind label %1024

8484:                                             ; preds = %8481
  call void @llvm.lifetime.start.p0(i64 1, ptr %523) #5
  store i8 1, ptr %523, align 1, !tbaa !9
  %8485 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %8486 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8485, ptr noundef nonnull align 1 dereferenceable(1) %523)
          to label %8487 unwind label %8507

8487:                                             ; preds = %8484
  call void @llvm.lifetime.end.p0(i64 1, ptr %523) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8488 unwind label %1024

8488:                                             ; preds = %8487
  br label %8489

8489:                                             ; preds = %8497, %8488
  %8490 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %8491 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8490)
          to label %8492 unwind label %1024

8492:                                             ; preds = %8489
  %8493 = load i8, ptr %8491, align 1, !tbaa !9, !range !11, !noundef !12
  %8494 = trunc i8 %8493 to i1
  %8495 = xor i1 %8494, true
  br i1 %8495, label %8496, label %8511

8496:                                             ; preds = %8492
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8497 unwind label %1024

8497:                                             ; preds = %8496
  br label %8489, !llvm.loop !113

8498:                                             ; preds = %8477
  %8499 = landingpad { ptr, i32 }
          cleanup
  %8500 = extractvalue { ptr, i32 } %8499, 0
  store ptr %8500, ptr %5, align 8
  %8501 = extractvalue { ptr, i32 } %8499, 1
  store i32 %8501, ptr %6, align 4
  br label %8506

8502:                                             ; preds = %8478
  %8503 = landingpad { ptr, i32 }
          cleanup
  %8504 = extractvalue { ptr, i32 } %8503, 0
  store ptr %8504, ptr %5, align 8
  %8505 = extractvalue { ptr, i32 } %8503, 1
  store i32 %8505, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %522) #5
  br label %8506

8506:                                             ; preds = %8502, %8498
  call void @llvm.lifetime.end.p0(i64 24, ptr %522) #5
  br label %11991

8507:                                             ; preds = %8484
  %8508 = landingpad { ptr, i32 }
          cleanup
  %8509 = extractvalue { ptr, i32 } %8508, 0
  store ptr %8509, ptr %5, align 8
  %8510 = extractvalue { ptr, i32 } %8508, 1
  store i32 %8510, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %523) #5
  br label %11991

8511:                                             ; preds = %8492
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8512 unwind label %1024

8512:                                             ; preds = %8511
  call void @llvm.lifetime.start.p0(i64 1, ptr %524) #5
  store i8 0, ptr %524, align 1, !tbaa !9
  %8513 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %8514 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8513, ptr noundef nonnull align 1 dereferenceable(1) %524)
          to label %8515 unwind label %8517

8515:                                             ; preds = %8512
  call void @llvm.lifetime.end.p0(i64 1, ptr %524) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8516 unwind label %1024

8516:                                             ; preds = %8515
  br label %8521

8517:                                             ; preds = %8512
  %8518 = landingpad { ptr, i32 }
          cleanup
  %8519 = extractvalue { ptr, i32 } %8518, 0
  store ptr %8519, ptr %5, align 8
  %8520 = extractvalue { ptr, i32 } %8518, 1
  store i32 %8520, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %524) #5
  br label %11991

8521:                                             ; preds = %8516, %8387
  br label %9252

8522:                                             ; preds = %7899
  %8523 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8524 unwind label %1024

8524:                                             ; preds = %8522
  %8525 = icmp ne i64 %8523, 2
  br i1 %8525, label %8526, label %8530

8526:                                             ; preds = %8524
  %8527 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 2)
          to label %8528 unwind label %1024

8528:                                             ; preds = %8526
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8529 unwind label %1024

8529:                                             ; preds = %8528
  br label %8619

8530:                                             ; preds = %8524
  call void @llvm.lifetime.start.p0(i64 24, ptr %525) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %525, i32 noundef 24)
          to label %8531 unwind label %8544

8531:                                             ; preds = %8530
  %8532 = 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) %525)
          to label %8533 unwind label %8548

8533:                                             ; preds = %8531
  %8534 = 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) %8532)
          to label %8535 unwind label %8548

8535:                                             ; preds = %8533
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %525) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %525) #5
  %8536 = 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 %8537 unwind label %1024

8537:                                             ; preds = %8535
  %8538 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %8536)
          to label %8539 unwind label %1024

8539:                                             ; preds = %8537
  %8540 = icmp ne i64 %8538, 0
  br i1 %8540, label %8541, label %8553

8541:                                             ; preds = %8539
  %8542 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 2)
          to label %8543 unwind label %1024

8543:                                             ; preds = %8541
  br label %8556

8544:                                             ; preds = %8530
  %8545 = landingpad { ptr, i32 }
          cleanup
  %8546 = extractvalue { ptr, i32 } %8545, 0
  store ptr %8546, ptr %5, align 8
  %8547 = extractvalue { ptr, i32 } %8545, 1
  store i32 %8547, ptr %6, align 4
  br label %8552

8548:                                             ; preds = %8533, %8531
  %8549 = landingpad { ptr, i32 }
          cleanup
  %8550 = extractvalue { ptr, i32 } %8549, 0
  store ptr %8550, ptr %5, align 8
  %8551 = extractvalue { ptr, i32 } %8549, 1
  store i32 %8551, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %525) #5
  br label %8552

8552:                                             ; preds = %8548, %8544
  call void @llvm.lifetime.end.p0(i64 24, ptr %525) #5
  br label %11991

8553:                                             ; preds = %8539
  %8554 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 4)
          to label %8555 unwind label %1024

8555:                                             ; preds = %8553
  br label %8556

8556:                                             ; preds = %8555, %8543
  %8557 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %8558 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8557, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %8559 unwind label %1024

8559:                                             ; preds = %8556
  %8560 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %8561 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8560, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %8562 unwind label %1024

8562:                                             ; preds = %8559
  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 1)
          to label %8563 unwind label %8587

8563:                                             ; preds = %8562
  %8564 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %8565 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8564, ptr noundef nonnull align 8 dereferenceable(24) %526)
          to label %8566 unwind label %8591

8566:                                             ; preds = %8563
  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
  call void @llvm.lifetime.start.p0(i64 24, ptr %527) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %527, i32 noundef 3)
          to label %8567 unwind label %8596

8567:                                             ; preds = %8566
  %8568 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %8569 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8568, ptr noundef nonnull align 8 dereferenceable(24) %527)
          to label %8570 unwind label %8600

8570:                                             ; preds = %8567
  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
  %8571 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %8572 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8571, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8573 unwind label %1024

8573:                                             ; preds = %8570
  call void @llvm.lifetime.start.p0(i64 1, ptr %528) #5
  store i8 1, ptr %528, align 1, !tbaa !9
  %8574 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %8575 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8574, ptr noundef nonnull align 1 dereferenceable(1) %528)
          to label %8576 unwind label %8605

8576:                                             ; preds = %8573
  call void @llvm.lifetime.end.p0(i64 1, ptr %528) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8577 unwind label %1024

8577:                                             ; preds = %8576
  br label %8578

8578:                                             ; preds = %8586, %8577
  %8579 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %8580 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8579)
          to label %8581 unwind label %1024

8581:                                             ; preds = %8578
  %8582 = load i8, ptr %8580, align 1, !tbaa !9, !range !11, !noundef !12
  %8583 = trunc i8 %8582 to i1
  %8584 = xor i1 %8583, true
  br i1 %8584, label %8585, label %8609

8585:                                             ; preds = %8581
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8586 unwind label %1024

8586:                                             ; preds = %8585
  br label %8578, !llvm.loop !114

8587:                                             ; preds = %8562
  %8588 = landingpad { ptr, i32 }
          cleanup
  %8589 = extractvalue { ptr, i32 } %8588, 0
  store ptr %8589, ptr %5, align 8
  %8590 = extractvalue { ptr, i32 } %8588, 1
  store i32 %8590, ptr %6, align 4
  br label %8595

8591:                                             ; preds = %8563
  %8592 = landingpad { ptr, i32 }
          cleanup
  %8593 = extractvalue { ptr, i32 } %8592, 0
  store ptr %8593, ptr %5, align 8
  %8594 = extractvalue { ptr, i32 } %8592, 1
  store i32 %8594, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %526) #5
  br label %8595

8595:                                             ; preds = %8591, %8587
  call void @llvm.lifetime.end.p0(i64 24, ptr %526) #5
  br label %11991

8596:                                             ; preds = %8566
  %8597 = landingpad { ptr, i32 }
          cleanup
  %8598 = extractvalue { ptr, i32 } %8597, 0
  store ptr %8598, ptr %5, align 8
  %8599 = extractvalue { ptr, i32 } %8597, 1
  store i32 %8599, ptr %6, align 4
  br label %8604

8600:                                             ; preds = %8567
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %527) #5
  br label %8604

8604:                                             ; preds = %8600, %8596
  call void @llvm.lifetime.end.p0(i64 24, ptr %527) #5
  br label %11991

8605:                                             ; preds = %8573
  %8606 = landingpad { ptr, i32 }
          cleanup
  %8607 = extractvalue { ptr, i32 } %8606, 0
  store ptr %8607, ptr %5, align 8
  %8608 = extractvalue { ptr, i32 } %8606, 1
  store i32 %8608, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %528) #5
  br label %11991

8609:                                             ; preds = %8581
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8610 unwind label %1024

8610:                                             ; preds = %8609
  call void @llvm.lifetime.start.p0(i64 1, ptr %529) #5
  store i8 0, ptr %529, align 1, !tbaa !9
  %8611 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %8612 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8611, ptr noundef nonnull align 1 dereferenceable(1) %529)
          to label %8613 unwind label %8615

8613:                                             ; preds = %8610
  call void @llvm.lifetime.end.p0(i64 1, ptr %529) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8614 unwind label %1024

8614:                                             ; preds = %8613
  br label %8619

8615:                                             ; preds = %8610
  %8616 = landingpad { ptr, i32 }
          cleanup
  %8617 = extractvalue { ptr, i32 } %8616, 0
  store ptr %8617, ptr %5, align 8
  %8618 = extractvalue { ptr, i32 } %8616, 1
  store i32 %8618, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %529) #5
  br label %11991

8619:                                             ; preds = %8614, %8529
  br label %9252

8620:                                             ; preds = %7899
  %8621 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8622 unwind label %1024

8622:                                             ; preds = %8620
  %8623 = icmp ne i64 %8621, 8
  br i1 %8623, label %8624, label %8628

8624:                                             ; preds = %8622
  %8625 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 2)
          to label %8626 unwind label %1024

8626:                                             ; preds = %8624
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8627 unwind label %1024

8627:                                             ; preds = %8626
  br label %8719

8628:                                             ; preds = %8622
  call void @llvm.lifetime.start.p0(i64 24, ptr %530) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %531) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %531, i32 noundef 24)
          to label %8629 unwind label %8664

8629:                                             ; preds = %8628
  %8630 = 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) %531)
          to label %8631 unwind label %8668

8631:                                             ; preds = %8629
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %530, ptr noundef nonnull align 1 dereferenceable(1) %8630)
          to label %8632 unwind label %8668

8632:                                             ; preds = %8631
  %8633 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %8634 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8633, ptr noundef nonnull align 8 dereferenceable(24) %530)
          to label %8635 unwind label %8672

8635:                                             ; preds = %8632
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %530) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %531) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %531) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %530) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %532) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %532, i32 noundef 20)
          to label %8636 unwind label %8678

8636:                                             ; preds = %8635
  %8637 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %8638 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8637, ptr noundef nonnull align 8 dereferenceable(24) %532)
          to label %8639 unwind label %8682

8639:                                             ; preds = %8636
  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.start.p0(i64 24, ptr %533) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %533, i32 noundef 4)
          to label %8640 unwind label %8687

8640:                                             ; preds = %8639
  %8641 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %8642 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8641, ptr noundef nonnull align 8 dereferenceable(24) %533)
          to label %8643 unwind label %8691

8643:                                             ; preds = %8640
  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_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %534, i32 noundef 3)
          to label %8644 unwind label %8696

8644:                                             ; preds = %8643
  %8645 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %8646 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8645, ptr noundef nonnull align 8 dereferenceable(24) %534)
          to label %8647 unwind label %8700

8647:                                             ; preds = %8644
  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
  %8648 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %8649 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8648, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8650 unwind label %1024

8650:                                             ; preds = %8647
  call void @llvm.lifetime.start.p0(i64 1, ptr %535) #5
  store i8 1, ptr %535, align 1, !tbaa !9
  %8651 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %8652 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8651, ptr noundef nonnull align 1 dereferenceable(1) %535)
          to label %8653 unwind label %8705

8653:                                             ; preds = %8650
  call void @llvm.lifetime.end.p0(i64 1, ptr %535) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8654 unwind label %1024

8654:                                             ; preds = %8653
  br label %8655

8655:                                             ; preds = %8663, %8654
  %8656 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %8657 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8656)
          to label %8658 unwind label %1024

8658:                                             ; preds = %8655
  %8659 = load i8, ptr %8657, align 1, !tbaa !9, !range !11, !noundef !12
  %8660 = trunc i8 %8659 to i1
  %8661 = xor i1 %8660, true
  br i1 %8661, label %8662, label %8709

8662:                                             ; preds = %8658
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8663 unwind label %1024

8663:                                             ; preds = %8662
  br label %8655, !llvm.loop !115

8664:                                             ; preds = %8628
  %8665 = landingpad { ptr, i32 }
          cleanup
  %8666 = extractvalue { ptr, i32 } %8665, 0
  store ptr %8666, ptr %5, align 8
  %8667 = extractvalue { ptr, i32 } %8665, 1
  store i32 %8667, ptr %6, align 4
  br label %8677

8668:                                             ; preds = %8631, %8629
  %8669 = landingpad { ptr, i32 }
          cleanup
  %8670 = extractvalue { ptr, i32 } %8669, 0
  store ptr %8670, ptr %5, align 8
  %8671 = extractvalue { ptr, i32 } %8669, 1
  store i32 %8671, ptr %6, align 4
  br label %8676

8672:                                             ; preds = %8632
  %8673 = landingpad { ptr, i32 }
          cleanup
  %8674 = extractvalue { ptr, i32 } %8673, 0
  store ptr %8674, ptr %5, align 8
  %8675 = extractvalue { ptr, i32 } %8673, 1
  store i32 %8675, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %530) #5
  br label %8676

8676:                                             ; preds = %8672, %8668
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %531) #5
  br label %8677

8677:                                             ; preds = %8676, %8664
  call void @llvm.lifetime.end.p0(i64 24, ptr %531) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %530) #5
  br label %11991

8678:                                             ; preds = %8635
  %8679 = landingpad { ptr, i32 }
          cleanup
  %8680 = extractvalue { ptr, i32 } %8679, 0
  store ptr %8680, ptr %5, align 8
  %8681 = extractvalue { ptr, i32 } %8679, 1
  store i32 %8681, ptr %6, align 4
  br label %8686

8682:                                             ; preds = %8636
  %8683 = landingpad { ptr, i32 }
          cleanup
  %8684 = extractvalue { ptr, i32 } %8683, 0
  store ptr %8684, ptr %5, align 8
  %8685 = extractvalue { ptr, i32 } %8683, 1
  store i32 %8685, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %532) #5
  br label %8686

8686:                                             ; preds = %8682, %8678
  call void @llvm.lifetime.end.p0(i64 24, ptr %532) #5
  br label %11991

8687:                                             ; preds = %8639
  %8688 = landingpad { ptr, i32 }
          cleanup
  %8689 = extractvalue { ptr, i32 } %8688, 0
  store ptr %8689, ptr %5, align 8
  %8690 = extractvalue { ptr, i32 } %8688, 1
  store i32 %8690, ptr %6, align 4
  br label %8695

8691:                                             ; preds = %8640
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %533) #5
  br label %8695

8695:                                             ; preds = %8691, %8687
  call void @llvm.lifetime.end.p0(i64 24, ptr %533) #5
  br label %11991

8696:                                             ; preds = %8643
  %8697 = landingpad { ptr, i32 }
          cleanup
  %8698 = extractvalue { ptr, i32 } %8697, 0
  store ptr %8698, ptr %5, align 8
  %8699 = extractvalue { ptr, i32 } %8697, 1
  store i32 %8699, ptr %6, align 4
  br label %8704

8700:                                             ; preds = %8644
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %534) #5
  br label %8704

8704:                                             ; preds = %8700, %8696
  call void @llvm.lifetime.end.p0(i64 24, ptr %534) #5
  br label %11991

8705:                                             ; preds = %8650
  %8706 = landingpad { ptr, i32 }
          cleanup
  %8707 = extractvalue { ptr, i32 } %8706, 0
  store ptr %8707, ptr %5, align 8
  %8708 = extractvalue { ptr, i32 } %8706, 1
  store i32 %8708, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %535) #5
  br label %11991

8709:                                             ; preds = %8658
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8710 unwind label %1024

8710:                                             ; preds = %8709
  call void @llvm.lifetime.start.p0(i64 1, ptr %536) #5
  store i8 0, ptr %536, align 1, !tbaa !9
  %8711 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %8712 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8711, ptr noundef nonnull align 1 dereferenceable(1) %536)
          to label %8713 unwind label %8715

8713:                                             ; preds = %8710
  call void @llvm.lifetime.end.p0(i64 1, ptr %536) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8714 unwind label %1024

8714:                                             ; preds = %8713
  br label %8719

8715:                                             ; preds = %8710
  %8716 = landingpad { ptr, i32 }
          cleanup
  %8717 = extractvalue { ptr, i32 } %8716, 0
  store ptr %8717, ptr %5, align 8
  %8718 = extractvalue { ptr, i32 } %8716, 1
  store i32 %8718, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %536) #5
  br label %11991

8719:                                             ; preds = %8714, %8627
  br label %9252

8720:                                             ; preds = %7899
  br label %8721

8721:                                             ; preds = %8720
  br label %8722

8722:                                             ; preds = %8721
  call void @llvm.lifetime.start.p0(i64 24, ptr %537) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %537, i32 noundef 11)
          to label %8723 unwind label %8758

8723:                                             ; preds = %8722
  %8724 = 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) %537)
          to label %8725 unwind label %8762

8725:                                             ; preds = %8723
  %8726 = 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) %8724)
          to label %8727 unwind label %8762

8727:                                             ; preds = %8725
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %537) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %537) #5
  %8728 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %8729 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8728, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %8730 unwind label %1024

8730:                                             ; preds = %8727
  %8731 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %8732 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8731, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8733 unwind label %1024

8733:                                             ; preds = %8730
  call void @llvm.lifetime.start.p0(i64 1, ptr %538) #5
  store i8 1, ptr %538, align 1, !tbaa !9
  %8734 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %8735 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8734, ptr noundef nonnull align 1 dereferenceable(1) %538)
          to label %8736 unwind label %8767

8736:                                             ; preds = %8733
  call void @llvm.lifetime.end.p0(i64 1, ptr %538) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %539) #5
  store i8 1, ptr %539, align 1, !tbaa !9
  %8737 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %8738 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8737, ptr noundef nonnull align 1 dereferenceable(1) %539)
          to label %8739 unwind label %8771

8739:                                             ; preds = %8736
  call void @llvm.lifetime.end.p0(i64 1, ptr %539) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8740 unwind label %1024

8740:                                             ; preds = %8739
  br label %8741

8741:                                             ; preds = %8780, %8740
  br label %8742

8742:                                             ; preds = %8741
  %8743 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %8744 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %8743)
          to label %8745 unwind label %1024

8745:                                             ; preds = %8742
  %8746 = 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) %8744)
          to label %8747 unwind label %1024

8747:                                             ; preds = %8745
  call void @llvm.lifetime.start.p0(i64 1, ptr %540) #5
  store i8 0, ptr %540, align 1, !tbaa !9
  %8748 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %8749 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8748, ptr noundef nonnull align 1 dereferenceable(1) %540)
          to label %8750 unwind label %8775

8750:                                             ; preds = %8747
  call void @llvm.lifetime.end.p0(i64 1, ptr %540) #5
  %8751 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %8752 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %8751)
          to label %8753 unwind label %1024

8753:                                             ; preds = %8750
  %8754 = load i8, ptr %8752, align 1, !tbaa !9, !range !11, !noundef !12
  %8755 = trunc i8 %8754 to i1
  br i1 %8755, label %8756, label %8779

8756:                                             ; preds = %8753
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8757 unwind label %1024

8757:                                             ; preds = %8756
  br label %8781

8758:                                             ; preds = %8722
  %8759 = landingpad { ptr, i32 }
          cleanup
  %8760 = extractvalue { ptr, i32 } %8759, 0
  store ptr %8760, ptr %5, align 8
  %8761 = extractvalue { ptr, i32 } %8759, 1
  store i32 %8761, ptr %6, align 4
  br label %8766

8762:                                             ; preds = %8725, %8723
  %8763 = landingpad { ptr, i32 }
          cleanup
  %8764 = extractvalue { ptr, i32 } %8763, 0
  store ptr %8764, ptr %5, align 8
  %8765 = extractvalue { ptr, i32 } %8763, 1
  store i32 %8765, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %537) #5
  br label %8766

8766:                                             ; preds = %8762, %8758
  call void @llvm.lifetime.end.p0(i64 24, ptr %537) #5
  br label %11991

8767:                                             ; preds = %8733
  %8768 = landingpad { ptr, i32 }
          cleanup
  %8769 = extractvalue { ptr, i32 } %8768, 0
  store ptr %8769, ptr %5, align 8
  %8770 = extractvalue { ptr, i32 } %8768, 1
  store i32 %8770, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %538) #5
  br label %11991

8771:                                             ; preds = %8736
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %539) #5
  br label %11991

8775:                                             ; preds = %8747
  %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 @llvm.lifetime.end.p0(i64 1, ptr %540) #5
  br label %11991

8779:                                             ; preds = %8753
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8780 unwind label %1024

8780:                                             ; preds = %8779
  br label %8741, !llvm.loop !116

8781:                                             ; preds = %8757
  %8782 = 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 %8783 unwind label %1024

8783:                                             ; preds = %8781
  %8784 = 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) %8782)
          to label %8785 unwind label %1024

8785:                                             ; preds = %8783
  call void @llvm.lifetime.start.p0(i64 24, ptr %541) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %541, i32 noundef 24)
          to label %8786 unwind label %8799

8786:                                             ; preds = %8785
  %8787 = 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) %541)
          to label %8788 unwind label %8803

8788:                                             ; preds = %8786
  %8789 = 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) %8787)
          to label %8790 unwind label %8803

8790:                                             ; preds = %8788
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %541) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %541) #5
  br label %8791

8791:                                             ; preds = %8790
  br label %8792

8792:                                             ; preds = %9087, %8921, %8791
  br label %8793

8793:                                             ; preds = %8792
  %8794 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8795 unwind label %1024

8795:                                             ; preds = %8793
  %8796 = icmp sle i64 %8794, 1
  br i1 %8796, label %8797, label %8808

8797:                                             ; preds = %8795
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8798 unwind label %1024

8798:                                             ; preds = %8797
  br label %9088

8799:                                             ; preds = %8785
  %8800 = landingpad { ptr, i32 }
          cleanup
  %8801 = extractvalue { ptr, i32 } %8800, 0
  store ptr %8801, ptr %5, align 8
  %8802 = extractvalue { ptr, i32 } %8800, 1
  store i32 %8802, ptr %6, align 4
  br label %8807

8803:                                             ; preds = %8788, %8786
  %8804 = landingpad { ptr, i32 }
          cleanup
  %8805 = extractvalue { ptr, i32 } %8804, 0
  store ptr %8805, ptr %5, align 8
  %8806 = extractvalue { ptr, i32 } %8804, 1
  store i32 %8806, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %541) #5
  br label %8807

8807:                                             ; preds = %8803, %8799
  call void @llvm.lifetime.end.p0(i64 24, ptr %541) #5
  br label %11991

8808:                                             ; preds = %8795
  %8809 = 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 %8810 unwind label %1024

8810:                                             ; preds = %8808
  %8811 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %8812 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8811, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %8813 unwind label %1024

8813:                                             ; preds = %8810
  %8814 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %8815 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8814, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8816 unwind label %1024

8816:                                             ; preds = %8813
  call void @llvm.lifetime.start.p0(i64 1, ptr %542) #5
  store i8 1, ptr %542, align 1, !tbaa !9
  %8817 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %8818 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8817, ptr noundef nonnull align 1 dereferenceable(1) %542)
          to label %8819 unwind label %8841

8819:                                             ; preds = %8816
  call void @llvm.lifetime.end.p0(i64 1, ptr %542) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %543) #5
  store i8 1, ptr %543, align 1, !tbaa !9
  %8820 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %8821 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8820, ptr noundef nonnull align 1 dereferenceable(1) %543)
          to label %8822 unwind label %8845

8822:                                             ; preds = %8819
  call void @llvm.lifetime.end.p0(i64 1, ptr %543) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8823 unwind label %1024

8823:                                             ; preds = %8822
  br label %8824

8824:                                             ; preds = %8854, %8823
  br label %8825

8825:                                             ; preds = %8824
  %8826 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %8827 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %8826)
          to label %8828 unwind label %1024

8828:                                             ; preds = %8825
  %8829 = 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) %8827)
          to label %8830 unwind label %1024

8830:                                             ; preds = %8828
  call void @llvm.lifetime.start.p0(i64 1, ptr %544) #5
  store i8 0, ptr %544, align 1, !tbaa !9
  %8831 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %8832 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8831, ptr noundef nonnull align 1 dereferenceable(1) %544)
          to label %8833 unwind label %8849

8833:                                             ; preds = %8830
  call void @llvm.lifetime.end.p0(i64 1, ptr %544) #5
  %8834 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %8835 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %8834)
          to label %8836 unwind label %1024

8836:                                             ; preds = %8833
  %8837 = load i8, ptr %8835, align 1, !tbaa !9, !range !11, !noundef !12
  %8838 = trunc i8 %8837 to i1
  br i1 %8838, label %8839, label %8853

8839:                                             ; preds = %8836
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8840 unwind label %1024

8840:                                             ; preds = %8839
  br label %8855

8841:                                             ; preds = %8816
  %8842 = landingpad { ptr, i32 }
          cleanup
  %8843 = extractvalue { ptr, i32 } %8842, 0
  store ptr %8843, ptr %5, align 8
  %8844 = extractvalue { ptr, i32 } %8842, 1
  store i32 %8844, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %542) #5
  br label %11991

8845:                                             ; preds = %8819
  %8846 = landingpad { ptr, i32 }
          cleanup
  %8847 = extractvalue { ptr, i32 } %8846, 0
  store ptr %8847, ptr %5, align 8
  %8848 = extractvalue { ptr, i32 } %8846, 1
  store i32 %8848, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %543) #5
  br label %11991

8849:                                             ; preds = %8830
  %8850 = landingpad { ptr, i32 }
          cleanup
  %8851 = extractvalue { ptr, i32 } %8850, 0
  store ptr %8851, ptr %5, align 8
  %8852 = extractvalue { ptr, i32 } %8850, 1
  store i32 %8852, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %544) #5
  br label %11991

8853:                                             ; preds = %8836
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8854 unwind label %1024

8854:                                             ; preds = %8853
  br label %8824, !llvm.loop !117

8855:                                             ; preds = %8840
  %8856 = 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 %8857 unwind label %1024

8857:                                             ; preds = %8855
  %8858 = 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 %8859 unwind label %1024

8859:                                             ; preds = %8857
  %8860 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %8861 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8860, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %8862 unwind label %1024

8862:                                             ; preds = %8859
  %8863 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %8864 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8863, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %8865 unwind label %1024

8865:                                             ; preds = %8862
  call void @llvm.lifetime.start.p0(i64 1, ptr %545) #5
  store i8 0, ptr %545, align 1, !tbaa !9
  %8866 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %8867 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8866, ptr noundef nonnull align 1 dereferenceable(1) %545)
          to label %8868 unwind label %8885

8868:                                             ; preds = %8865
  call void @llvm.lifetime.end.p0(i64 1, ptr %545) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %546) #5
  store i8 1, ptr %546, align 1, !tbaa !9
  %8869 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %8870 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8869, ptr noundef nonnull align 1 dereferenceable(1) %546)
          to label %8871 unwind label %8889

8871:                                             ; preds = %8868
  call void @llvm.lifetime.end.p0(i64 1, ptr %546) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8872 unwind label %1024

8872:                                             ; preds = %8871
  br label %8873

8873:                                             ; preds = %8898, %8872
  br label %8874

8874:                                             ; preds = %8873
  call void @llvm.lifetime.start.p0(i64 1, ptr %547) #5
  store i8 0, ptr %547, align 1, !tbaa !9
  %8875 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %8876 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8875, ptr noundef nonnull align 1 dereferenceable(1) %547)
          to label %8877 unwind label %8893

8877:                                             ; preds = %8874
  call void @llvm.lifetime.end.p0(i64 1, ptr %547) #5
  %8878 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %8879 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %8878)
          to label %8880 unwind label %1024

8880:                                             ; preds = %8877
  %8881 = load i8, ptr %8879, align 1, !tbaa !9, !range !11, !noundef !12
  %8882 = trunc i8 %8881 to i1
  br i1 %8882, label %8883, label %8897

8883:                                             ; preds = %8880
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8884 unwind label %1024

8884:                                             ; preds = %8883
  br label %8899

8885:                                             ; preds = %8865
  %8886 = landingpad { ptr, i32 }
          cleanup
  %8887 = extractvalue { ptr, i32 } %8886, 0
  store ptr %8887, ptr %5, align 8
  %8888 = extractvalue { ptr, i32 } %8886, 1
  store i32 %8888, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %545) #5
  br label %11991

8889:                                             ; preds = %8868
  %8890 = landingpad { ptr, i32 }
          cleanup
  %8891 = extractvalue { ptr, i32 } %8890, 0
  store ptr %8891, ptr %5, align 8
  %8892 = extractvalue { ptr, i32 } %8890, 1
  store i32 %8892, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %546) #5
  br label %11991

8893:                                             ; preds = %8874
  %8894 = landingpad { ptr, i32 }
          cleanup
  %8895 = extractvalue { ptr, i32 } %8894, 0
  store ptr %8895, ptr %5, align 8
  %8896 = extractvalue { ptr, i32 } %8894, 1
  store i32 %8896, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %547) #5
  br label %11991

8897:                                             ; preds = %8880
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8898 unwind label %1024

8898:                                             ; preds = %8897
  br label %8873, !llvm.loop !118

8899:                                             ; preds = %8884
  %8900 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %8901 unwind label %1024

8901:                                             ; preds = %8899
  %8902 = add nsw i64 %8900, 1
  %8903 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %9, i64 noundef %8902)
          to label %8904 unwind label %1024

8904:                                             ; preds = %8901
  %8905 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %8906 unwind label %1024

8906:                                             ; preds = %8904
  %8907 = add nsw i64 %8905, 1
  %8908 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %10, i64 noundef %8907)
          to label %8909 unwind label %1024

8909:                                             ; preds = %8906
  %8910 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8911 unwind label %1024

8911:                                             ; preds = %8909
  %8912 = sub nsw i64 %8910, 2
  %8913 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %26, i64 noundef %8912)
          to label %8914 unwind label %1024

8914:                                             ; preds = %8911
  call void @llvm.lifetime.start.p0(i64 24, ptr %548) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %548, i32 noundef -1)
          to label %8915 unwind label %8922

8915:                                             ; preds = %8914
  %8916 = 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) %548)
          to label %8917 unwind label %8926

8917:                                             ; preds = %8915
  %8918 = 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) %8916)
          to label %8919 unwind label %8926

8919:                                             ; preds = %8917
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %548) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %548) #5
  br i1 %8918, label %8920, label %8931

8920:                                             ; preds = %8919
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8921 unwind label %1024

8921:                                             ; preds = %8920
  br label %8792, !llvm.loop !119

8922:                                             ; preds = %8914
  %8923 = landingpad { ptr, i32 }
          cleanup
  %8924 = extractvalue { ptr, i32 } %8923, 0
  store ptr %8924, ptr %5, align 8
  %8925 = extractvalue { ptr, i32 } %8923, 1
  store i32 %8925, ptr %6, align 4
  br label %8930

8926:                                             ; preds = %8917, %8915
  %8927 = landingpad { ptr, i32 }
          cleanup
  %8928 = extractvalue { ptr, i32 } %8927, 0
  store ptr %8928, ptr %5, align 8
  %8929 = extractvalue { ptr, i32 } %8927, 1
  store i32 %8929, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %548) #5
  br label %8930

8930:                                             ; preds = %8926, %8922
  call void @llvm.lifetime.end.p0(i64 24, ptr %548) #5
  br label %11991

8931:                                             ; preds = %8919
  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 2)
          to label %8932 unwind label %8967

8932:                                             ; preds = %8931
  %8933 = 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 %8934 unwind label %8971

8934:                                             ; preds = %8932
  %8935 = 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) %8933)
          to label %8936 unwind label %8971

8936:                                             ; preds = %8934
  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
  %8937 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %8938 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8937, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %8939 unwind label %1024

8939:                                             ; preds = %8936
  %8940 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %8941 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8940, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8942 unwind label %1024

8942:                                             ; preds = %8939
  call void @llvm.lifetime.start.p0(i64 1, ptr %550) #5
  store i8 1, ptr %550, align 1, !tbaa !9
  %8943 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %8944 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8943, ptr noundef nonnull align 1 dereferenceable(1) %550)
          to label %8945 unwind label %8976

8945:                                             ; preds = %8942
  call void @llvm.lifetime.end.p0(i64 1, ptr %550) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %551) #5
  store i8 1, ptr %551, align 1, !tbaa !9
  %8946 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %8947 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8946, ptr noundef nonnull align 1 dereferenceable(1) %551)
          to label %8948 unwind label %8980

8948:                                             ; preds = %8945
  call void @llvm.lifetime.end.p0(i64 1, ptr %551) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8949 unwind label %1024

8949:                                             ; preds = %8948
  br label %8950

8950:                                             ; preds = %8989, %8949
  br label %8951

8951:                                             ; preds = %8950
  %8952 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %8953 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %8952)
          to label %8954 unwind label %1024

8954:                                             ; preds = %8951
  %8955 = 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) %8953)
          to label %8956 unwind label %1024

8956:                                             ; preds = %8954
  call void @llvm.lifetime.start.p0(i64 1, ptr %552) #5
  store i8 0, ptr %552, align 1, !tbaa !9
  %8957 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %8958 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8957, ptr noundef nonnull align 1 dereferenceable(1) %552)
          to label %8959 unwind label %8984

8959:                                             ; preds = %8956
  call void @llvm.lifetime.end.p0(i64 1, ptr %552) #5
  %8960 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %8961 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %8960)
          to label %8962 unwind label %1024

8962:                                             ; preds = %8959
  %8963 = load i8, ptr %8961, align 1, !tbaa !9, !range !11, !noundef !12
  %8964 = trunc i8 %8963 to i1
  br i1 %8964, label %8965, label %8988

8965:                                             ; preds = %8962
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8966 unwind label %1024

8966:                                             ; preds = %8965
  br label %8990

8967:                                             ; preds = %8931
  %8968 = landingpad { ptr, i32 }
          cleanup
  %8969 = extractvalue { ptr, i32 } %8968, 0
  store ptr %8969, ptr %5, align 8
  %8970 = extractvalue { ptr, i32 } %8968, 1
  store i32 %8970, ptr %6, align 4
  br label %8975

8971:                                             ; preds = %8934, %8932
  %8972 = landingpad { ptr, i32 }
          cleanup
  %8973 = extractvalue { ptr, i32 } %8972, 0
  store ptr %8973, ptr %5, align 8
  %8974 = extractvalue { ptr, i32 } %8972, 1
  store i32 %8974, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %549) #5
  br label %8975

8975:                                             ; preds = %8971, %8967
  call void @llvm.lifetime.end.p0(i64 24, ptr %549) #5
  br label %11991

8976:                                             ; preds = %8942
  %8977 = landingpad { ptr, i32 }
          cleanup
  %8978 = extractvalue { ptr, i32 } %8977, 0
  store ptr %8978, ptr %5, align 8
  %8979 = extractvalue { ptr, i32 } %8977, 1
  store i32 %8979, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %550) #5
  br label %11991

8980:                                             ; preds = %8945
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %551) #5
  br label %11991

8984:                                             ; preds = %8956
  %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 @llvm.lifetime.end.p0(i64 1, ptr %552) #5
  br label %11991

8988:                                             ; preds = %8962
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %8989 unwind label %1024

8989:                                             ; preds = %8988
  br label %8950, !llvm.loop !120

8990:                                             ; preds = %8966
  call void @llvm.lifetime.start.p0(i64 24, ptr %553) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %553, i32 noundef 0)
          to label %8991 unwind label %9025

8991:                                             ; preds = %8990
  %8992 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %553, ptr noundef nonnull align 8 dereferenceable(8) %27)
          to label %8993 unwind label %9029

8993:                                             ; preds = %8991
  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 %8994 unwind label %9033

8994:                                             ; preds = %8993
  %8995 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %8992, ptr noundef nonnull align 8 dereferenceable(8) %554)
          to label %8996 unwind label %9037

8996:                                             ; preds = %8994
  %8997 = 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) %8995)
          to label %8998 unwind label %9037

8998:                                             ; preds = %8996
  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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %553) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %553) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %555) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %555, i32 noundef -8192)
          to label %8999 unwind label %9044

8999:                                             ; preds = %8998
  %9000 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %9001 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9000, ptr noundef nonnull align 8 dereferenceable(24) %555)
          to label %9002 unwind label %9048

9002:                                             ; preds = %8999
  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
  %9003 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %9004 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9003, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %9005 unwind label %1024

9005:                                             ; preds = %9002
  call void @llvm.lifetime.start.p0(i64 1, ptr %556) #5
  store i8 0, ptr %556, align 1, !tbaa !9
  %9006 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %9007 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9006, ptr noundef nonnull align 1 dereferenceable(1) %556)
          to label %9008 unwind label %9053

9008:                                             ; preds = %9005
  call void @llvm.lifetime.end.p0(i64 1, ptr %556) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %557) #5
  store i8 1, ptr %557, align 1, !tbaa !9
  %9009 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %9010 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9009, ptr noundef nonnull align 1 dereferenceable(1) %557)
          to label %9011 unwind label %9057

9011:                                             ; preds = %9008
  call void @llvm.lifetime.end.p0(i64 1, ptr %557) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9012 unwind label %1024

9012:                                             ; preds = %9011
  br label %9013

9013:                                             ; preds = %9066, %9012
  br label %9014

9014:                                             ; preds = %9013
  call void @llvm.lifetime.start.p0(i64 1, ptr %558) #5
  store i8 0, ptr %558, align 1, !tbaa !9
  %9015 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %9016 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9015, ptr noundef nonnull align 1 dereferenceable(1) %558)
          to label %9017 unwind label %9061

9017:                                             ; preds = %9014
  call void @llvm.lifetime.end.p0(i64 1, ptr %558) #5
  %9018 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %9019 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %9018)
          to label %9020 unwind label %1024

9020:                                             ; preds = %9017
  %9021 = load i8, ptr %9019, align 1, !tbaa !9, !range !11, !noundef !12
  %9022 = trunc i8 %9021 to i1
  br i1 %9022, label %9023, label %9065

9023:                                             ; preds = %9020
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9024 unwind label %1024

9024:                                             ; preds = %9023
  br label %9067

9025:                                             ; preds = %8990
  %9026 = landingpad { ptr, i32 }
          cleanup
  %9027 = extractvalue { ptr, i32 } %9026, 0
  store ptr %9027, ptr %5, align 8
  %9028 = extractvalue { ptr, i32 } %9026, 1
  store i32 %9028, ptr %6, align 4
  br label %9043

9029:                                             ; preds = %8991
  %9030 = landingpad { ptr, i32 }
          cleanup
  %9031 = extractvalue { ptr, i32 } %9030, 0
  store ptr %9031, ptr %5, align 8
  %9032 = extractvalue { ptr, i32 } %9030, 1
  store i32 %9032, ptr %6, align 4
  br label %9042

9033:                                             ; preds = %8993
  %9034 = landingpad { ptr, i32 }
          cleanup
  %9035 = extractvalue { ptr, i32 } %9034, 0
  store ptr %9035, ptr %5, align 8
  %9036 = extractvalue { ptr, i32 } %9034, 1
  store i32 %9036, ptr %6, align 4
  br label %9041

9037:                                             ; preds = %8996, %8994
  %9038 = landingpad { ptr, i32 }
          cleanup
  %9039 = extractvalue { ptr, i32 } %9038, 0
  store ptr %9039, ptr %5, align 8
  %9040 = extractvalue { ptr, i32 } %9038, 1
  store i32 %9040, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %554) #5
  br label %9041

9041:                                             ; preds = %9037, %9033
  call void @llvm.lifetime.end.p0(i64 24, ptr %554) #5
  br label %9042

9042:                                             ; preds = %9041, %9029
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %553) #5
  br label %9043

9043:                                             ; preds = %9042, %9025
  call void @llvm.lifetime.end.p0(i64 24, ptr %553) #5
  br label %11991

9044:                                             ; preds = %8998
  %9045 = landingpad { ptr, i32 }
          cleanup
  %9046 = extractvalue { ptr, i32 } %9045, 0
  store ptr %9046, ptr %5, align 8
  %9047 = extractvalue { ptr, i32 } %9045, 1
  store i32 %9047, ptr %6, align 4
  br label %9052

9048:                                             ; preds = %8999
  %9049 = landingpad { ptr, i32 }
          cleanup
  %9050 = extractvalue { ptr, i32 } %9049, 0
  store ptr %9050, ptr %5, align 8
  %9051 = extractvalue { ptr, i32 } %9049, 1
  store i32 %9051, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %555) #5
  br label %9052

9052:                                             ; preds = %9048, %9044
  call void @llvm.lifetime.end.p0(i64 24, ptr %555) #5
  br label %11991

9053:                                             ; preds = %9005
  %9054 = landingpad { ptr, i32 }
          cleanup
  %9055 = extractvalue { ptr, i32 } %9054, 0
  store ptr %9055, ptr %5, align 8
  %9056 = extractvalue { ptr, i32 } %9054, 1
  store i32 %9056, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %556) #5
  br label %11991

9057:                                             ; preds = %9008
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %557) #5
  br label %11991

9061:                                             ; preds = %9014
  %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 @llvm.lifetime.end.p0(i64 1, ptr %558) #5
  br label %11991

9065:                                             ; preds = %9020
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9066 unwind label %1024

9066:                                             ; preds = %9065
  br label %9013, !llvm.loop !121

9067:                                             ; preds = %9024
  %9068 = 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 %9069 unwind label %1024

9069:                                             ; preds = %9067
  %9070 = 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) %9068)
          to label %9071 unwind label %1024

9071:                                             ; preds = %9069
  call void @llvm.lifetime.start.p0(i64 24, ptr %559) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %559, i32 noundef 8)
          to label %9072 unwind label %9077

9072:                                             ; preds = %9071
  %9073 = 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) %559)
          to label %9074 unwind label %9081

9074:                                             ; preds = %9072
  %9075 = 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) %9073)
          to label %9076 unwind label %9081

9076:                                             ; preds = %9074
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %559) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %559) #5
  br label %9086

9077:                                             ; preds = %9071
  %9078 = landingpad { ptr, i32 }
          cleanup
  %9079 = extractvalue { ptr, i32 } %9078, 0
  store ptr %9079, ptr %5, align 8
  %9080 = extractvalue { ptr, i32 } %9078, 1
  store i32 %9080, ptr %6, align 4
  br label %9085

9081:                                             ; preds = %9074, %9072
  %9082 = landingpad { ptr, i32 }
          cleanup
  %9083 = extractvalue { ptr, i32 } %9082, 0
  store ptr %9083, ptr %5, align 8
  %9084 = extractvalue { ptr, i32 } %9082, 1
  store i32 %9084, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %559) #5
  br label %9085

9085:                                             ; preds = %9081, %9077
  call void @llvm.lifetime.end.p0(i64 24, ptr %559) #5
  br label %11991

9086:                                             ; preds = %9076
  br label %9087

9087:                                             ; preds = %9086
  br label %8792, !llvm.loop !119

9088:                                             ; preds = %8798
  %9089 = 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 %9090 unwind label %1024

9090:                                             ; preds = %9088
  %9091 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %9089)
          to label %9092 unwind label %1024

9092:                                             ; preds = %9090
  br i1 %9091, label %9093, label %9095

9093:                                             ; preds = %9092
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9094 unwind label %1024

9094:                                             ; preds = %9093
  br label %9247

9095:                                             ; preds = %9092
  %9096 = 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 %9097 unwind label %1024

9097:                                             ; preds = %9095
  %9098 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %9099 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9098, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %9100 unwind label %1024

9100:                                             ; preds = %9097
  %9101 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %9102 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9101, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9103 unwind label %1024

9103:                                             ; preds = %9100
  call void @llvm.lifetime.start.p0(i64 1, ptr %560) #5
  store i8 1, ptr %560, align 1, !tbaa !9
  %9104 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %9105 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9104, ptr noundef nonnull align 1 dereferenceable(1) %560)
          to label %9106 unwind label %9128

9106:                                             ; preds = %9103
  call void @llvm.lifetime.end.p0(i64 1, ptr %560) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %561) #5
  store i8 1, ptr %561, align 1, !tbaa !9
  %9107 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %9108 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9107, ptr noundef nonnull align 1 dereferenceable(1) %561)
          to label %9109 unwind label %9132

9109:                                             ; preds = %9106
  call void @llvm.lifetime.end.p0(i64 1, ptr %561) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9110 unwind label %1024

9110:                                             ; preds = %9109
  br label %9111

9111:                                             ; preds = %9141, %9110
  br label %9112

9112:                                             ; preds = %9111
  %9113 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %9114 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %9113)
          to label %9115 unwind label %1024

9115:                                             ; preds = %9112
  %9116 = 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) %9114)
          to label %9117 unwind label %1024

9117:                                             ; preds = %9115
  call void @llvm.lifetime.start.p0(i64 1, ptr %562) #5
  store i8 0, ptr %562, align 1, !tbaa !9
  %9118 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %9119 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9118, ptr noundef nonnull align 1 dereferenceable(1) %562)
          to label %9120 unwind label %9136

9120:                                             ; preds = %9117
  call void @llvm.lifetime.end.p0(i64 1, ptr %562) #5
  %9121 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %9122 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %9121)
          to label %9123 unwind label %1024

9123:                                             ; preds = %9120
  %9124 = load i8, ptr %9122, align 1, !tbaa !9, !range !11, !noundef !12
  %9125 = trunc i8 %9124 to i1
  br i1 %9125, label %9126, label %9140

9126:                                             ; preds = %9123
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9127 unwind label %1024

9127:                                             ; preds = %9126
  br label %9142

9128:                                             ; preds = %9103
  %9129 = landingpad { ptr, i32 }
          cleanup
  %9130 = extractvalue { ptr, i32 } %9129, 0
  store ptr %9130, ptr %5, align 8
  %9131 = extractvalue { ptr, i32 } %9129, 1
  store i32 %9131, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %560) #5
  br label %11991

9132:                                             ; preds = %9106
  %9133 = landingpad { ptr, i32 }
          cleanup
  %9134 = extractvalue { ptr, i32 } %9133, 0
  store ptr %9134, ptr %5, align 8
  %9135 = extractvalue { ptr, i32 } %9133, 1
  store i32 %9135, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %561) #5
  br label %11991

9136:                                             ; preds = %9117
  %9137 = landingpad { ptr, i32 }
          cleanup
  %9138 = extractvalue { ptr, i32 } %9137, 0
  store ptr %9138, ptr %5, align 8
  %9139 = extractvalue { ptr, i32 } %9137, 1
  store i32 %9139, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %562) #5
  br label %11991

9140:                                             ; preds = %9123
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9141 unwind label %1024

9141:                                             ; preds = %9140
  br label %9111, !llvm.loop !122

9142:                                             ; preds = %9127
  %9143 = 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 %9144 unwind label %1024

9144:                                             ; preds = %9142
  %9145 = 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 %9146 unwind label %1024

9146:                                             ; preds = %9144
  %9147 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt13sc_int_subrefaSERKS0_(ptr noundef nonnull align 8 dereferenceable(28) %9145, ptr noundef nonnull align 8 dereferenceable(28) %9143)
          to label %9148 unwind label %1024

9148:                                             ; preds = %9146
  %9149 = 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 %9150 unwind label %1024

9150:                                             ; preds = %9148
  %9151 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %9152 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9151, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %9153 unwind label %1024

9153:                                             ; preds = %9150
  %9154 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %9155 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9154, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9156 unwind label %1024

9156:                                             ; preds = %9153
  call void @llvm.lifetime.start.p0(i64 1, ptr %563) #5
  store i8 1, ptr %563, align 1, !tbaa !9
  %9157 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %9158 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9157, ptr noundef nonnull align 1 dereferenceable(1) %563)
          to label %9159 unwind label %9181

9159:                                             ; preds = %9156
  call void @llvm.lifetime.end.p0(i64 1, ptr %563) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %564) #5
  store i8 1, ptr %564, align 1, !tbaa !9
  %9160 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %9161 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9160, ptr noundef nonnull align 1 dereferenceable(1) %564)
          to label %9162 unwind label %9185

9162:                                             ; preds = %9159
  call void @llvm.lifetime.end.p0(i64 1, ptr %564) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9163 unwind label %1024

9163:                                             ; preds = %9162
  br label %9164

9164:                                             ; preds = %9194, %9163
  br label %9165

9165:                                             ; preds = %9164
  %9166 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %9167 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %9166)
          to label %9168 unwind label %1024

9168:                                             ; preds = %9165
  %9169 = 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) %9167)
          to label %9170 unwind label %1024

9170:                                             ; preds = %9168
  call void @llvm.lifetime.start.p0(i64 1, ptr %565) #5
  store i8 0, ptr %565, align 1, !tbaa !9
  %9171 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %9172 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9171, ptr noundef nonnull align 1 dereferenceable(1) %565)
          to label %9173 unwind label %9189

9173:                                             ; preds = %9170
  call void @llvm.lifetime.end.p0(i64 1, ptr %565) #5
  %9174 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %9175 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %9174)
          to label %9176 unwind label %1024

9176:                                             ; preds = %9173
  %9177 = load i8, ptr %9175, align 1, !tbaa !9, !range !11, !noundef !12
  %9178 = trunc i8 %9177 to i1
  br i1 %9178, label %9179, label %9193

9179:                                             ; preds = %9176
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9180 unwind label %1024

9180:                                             ; preds = %9179
  br label %9195

9181:                                             ; preds = %9156
  %9182 = landingpad { ptr, i32 }
          cleanup
  %9183 = extractvalue { ptr, i32 } %9182, 0
  store ptr %9183, ptr %5, align 8
  %9184 = extractvalue { ptr, i32 } %9182, 1
  store i32 %9184, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %563) #5
  br label %11991

9185:                                             ; preds = %9159
  %9186 = landingpad { ptr, i32 }
          cleanup
  %9187 = extractvalue { ptr, i32 } %9186, 0
  store ptr %9187, ptr %5, align 8
  %9188 = extractvalue { ptr, i32 } %9186, 1
  store i32 %9188, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %564) #5
  br label %11991

9189:                                             ; preds = %9170
  %9190 = landingpad { ptr, i32 }
          cleanup
  %9191 = extractvalue { ptr, i32 } %9190, 0
  store ptr %9191, ptr %5, align 8
  %9192 = extractvalue { ptr, i32 } %9190, 1
  store i32 %9192, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %565) #5
  br label %11991

9193:                                             ; preds = %9176
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9194 unwind label %1024

9194:                                             ; preds = %9193
  br label %9164, !llvm.loop !123

9195:                                             ; preds = %9180
  %9196 = 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 %9197 unwind label %1024

9197:                                             ; preds = %9195
  %9198 = 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 %9199 unwind label %1024

9199:                                             ; preds = %9197
  %9200 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %9196, ptr noundef nonnull align 8 dereferenceable(8) %9198)
          to label %9201 unwind label %1024

9201:                                             ; preds = %9199
  %9202 = 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) %9200)
          to label %9203 unwind label %1024

9203:                                             ; preds = %9201
  %9204 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %9205 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9204, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %9206 unwind label %1024

9206:                                             ; preds = %9203
  %9207 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %9208 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9207, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %9209 unwind label %1024

9209:                                             ; preds = %9206
  call void @llvm.lifetime.start.p0(i64 1, ptr %566) #5
  store i8 0, ptr %566, align 1, !tbaa !9
  %9210 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %9211 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9210, ptr noundef nonnull align 1 dereferenceable(1) %566)
          to label %9212 unwind label %9229

9212:                                             ; preds = %9209
  call void @llvm.lifetime.end.p0(i64 1, ptr %566) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %567) #5
  store i8 1, ptr %567, align 1, !tbaa !9
  %9213 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %9214 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9213, ptr noundef nonnull align 1 dereferenceable(1) %567)
          to label %9215 unwind label %9233

9215:                                             ; preds = %9212
  call void @llvm.lifetime.end.p0(i64 1, ptr %567) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9216 unwind label %1024

9216:                                             ; preds = %9215
  br label %9217

9217:                                             ; preds = %9242, %9216
  br label %9218

9218:                                             ; preds = %9217
  call void @llvm.lifetime.start.p0(i64 1, ptr %568) #5
  store i8 0, ptr %568, align 1, !tbaa !9
  %9219 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %9220 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9219, ptr noundef nonnull align 1 dereferenceable(1) %568)
          to label %9221 unwind label %9237

9221:                                             ; preds = %9218
  call void @llvm.lifetime.end.p0(i64 1, ptr %568) #5
  %9222 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %9223 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %9222)
          to label %9224 unwind label %1024

9224:                                             ; preds = %9221
  %9225 = load i8, ptr %9223, align 1, !tbaa !9, !range !11, !noundef !12
  %9226 = trunc i8 %9225 to i1
  br i1 %9226, label %9227, label %9241

9227:                                             ; preds = %9224
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9228 unwind label %1024

9228:                                             ; preds = %9227
  br label %9243

9229:                                             ; preds = %9209
  %9230 = landingpad { ptr, i32 }
          cleanup
  %9231 = extractvalue { ptr, i32 } %9230, 0
  store ptr %9231, ptr %5, align 8
  %9232 = extractvalue { ptr, i32 } %9230, 1
  store i32 %9232, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %566) #5
  br label %11991

9233:                                             ; preds = %9212
  %9234 = landingpad { ptr, i32 }
          cleanup
  %9235 = extractvalue { ptr, i32 } %9234, 0
  store ptr %9235, ptr %5, align 8
  %9236 = extractvalue { ptr, i32 } %9234, 1
  store i32 %9236, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %567) #5
  br label %11991

9237:                                             ; preds = %9218
  %9238 = landingpad { ptr, i32 }
          cleanup
  %9239 = extractvalue { ptr, i32 } %9238, 0
  store ptr %9239, ptr %5, align 8
  %9240 = extractvalue { ptr, i32 } %9238, 1
  store i32 %9240, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %568) #5
  br label %11991

9241:                                             ; preds = %9224
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9242 unwind label %1024

9242:                                             ; preds = %9241
  br label %9217, !llvm.loop !124

9243:                                             ; preds = %9228
  br label %9244

9244:                                             ; preds = %9243
  br label %9245

9245:                                             ; preds = %9244
  br label %9246

9246:                                             ; preds = %9245
  br label %9247

9247:                                             ; preds = %9246, %9094
  br label %9252

9248:                                             ; preds = %7899
  %9249 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef -3)
          to label %9250 unwind label %1024

9250:                                             ; preds = %9248
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9251 unwind label %1024

9251:                                             ; preds = %9250
  br label %9252

9252:                                             ; preds = %9251, %9247, %8719, %8619, %8521, %8363, %8242, %8121
  br label %9253

9253:                                             ; preds = %9252, %7753
  br label %11889

9254:                                             ; preds = %2767
  %9255 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %9256 unwind label %1024

9256:                                             ; preds = %9254
  %9257 = icmp ne i64 %9255, 3
  br i1 %9257, label %9262, label %9258

9258:                                             ; preds = %9256
  %9259 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %9260 unwind label %1024

9260:                                             ; preds = %9258
  %9261 = icmp ne i64 %9259, 0
  br i1 %9261, label %9262, label %9266

9262:                                             ; preds = %9260, %9256
  %9263 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %9264 unwind label %1024

9264:                                             ; preds = %9262
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9265 unwind label %1024

9265:                                             ; preds = %9264
  br label %11067

9266:                                             ; preds = %9260
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9267 unwind label %1024

9267:                                             ; preds = %9266
  %9268 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %9269 = trunc i8 %9268 to i1
  %9270 = zext i1 %9269 to i8
  store i8 %9270, ptr %34, align 1, !tbaa !9
  %9271 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef 1)
          to label %9272 unwind label %1024

9272:                                             ; preds = %9267
  %9273 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 7
  %9274 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9273)
          to label %9275 unwind label %1024

9275:                                             ; preds = %9272
  %9276 = load i8, ptr %9274, align 1, !tbaa !9, !range !11, !noundef !12
  %9277 = trunc i8 %9276 to i1
  br i1 %9277, label %9281, label %9278

9278:                                             ; preds = %9275
  %9279 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 156)
          to label %9280 unwind label %1024

9280:                                             ; preds = %9278
  br label %9284

9281:                                             ; preds = %9275
  %9282 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 152)
          to label %9283 unwind label %1024

9283:                                             ; preds = %9281
  br label %9284

9284:                                             ; preds = %9283, %9280
  %9285 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %24, i32 noundef 10)
          to label %9286 unwind label %1024

9286:                                             ; preds = %9284
  call void @llvm.lifetime.start.p0(i64 24, ptr %569) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %570) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %570, i32 noundef 0)
          to label %9287 unwind label %9322

9287:                                             ; preds = %9286
  %9288 = 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) %570)
          to label %9289 unwind label %9326

9289:                                             ; preds = %9287
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %569, ptr noundef nonnull align 1 dereferenceable(1) %9288)
          to label %9290 unwind label %9326

9290:                                             ; preds = %9289
  %9291 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %9292 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9291, ptr noundef nonnull align 8 dereferenceable(24) %569)
          to label %9293 unwind label %9330

9293:                                             ; preds = %9290
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %569) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %570) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %570) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %569) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %571) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %572) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %572, i32 noundef 0)
          to label %9294 unwind label %9336

9294:                                             ; preds = %9293
  %9295 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %572, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %9296 unwind label %9340

9296:                                             ; preds = %9294
  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) %9295)
          to label %9297 unwind label %9340

9297:                                             ; preds = %9296
  %9298 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %9299 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9298, ptr noundef nonnull align 8 dereferenceable(24) %571)
          to label %9300 unwind label %9344

9300:                                             ; preds = %9297
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %571) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %572) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %572) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %571) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %573) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %573, i32 noundef 20)
          to label %9301 unwind label %9350

9301:                                             ; preds = %9300
  %9302 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %9303 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9302, ptr noundef nonnull align 8 dereferenceable(24) %573)
          to label %9304 unwind label %9354

9304:                                             ; preds = %9301
  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.start.p0(i64 24, ptr %574) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %574, i32 noundef -3)
          to label %9305 unwind label %9359

9305:                                             ; preds = %9304
  %9306 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %9307 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9306, ptr noundef nonnull align 8 dereferenceable(24) %574)
          to label %9308 unwind label %9363

9308:                                             ; preds = %9305
  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 1, ptr %575) #5
  store i8 1, ptr %575, align 1, !tbaa !9
  %9309 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %9310 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9309, ptr noundef nonnull align 1 dereferenceable(1) %575)
          to label %9311 unwind label %9368

9311:                                             ; preds = %9308
  call void @llvm.lifetime.end.p0(i64 1, ptr %575) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9312 unwind label %1024

9312:                                             ; preds = %9311
  br label %9313

9313:                                             ; preds = %9321, %9312
  %9314 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %9315 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9314)
          to label %9316 unwind label %1024

9316:                                             ; preds = %9313
  %9317 = load i8, ptr %9315, align 1, !tbaa !9, !range !11, !noundef !12
  %9318 = trunc i8 %9317 to i1
  %9319 = xor i1 %9318, true
  br i1 %9319, label %9320, label %9372

9320:                                             ; preds = %9316
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9321 unwind label %1024

9321:                                             ; preds = %9320
  br label %9313, !llvm.loop !125

9322:                                             ; preds = %9286
  %9323 = landingpad { ptr, i32 }
          cleanup
  %9324 = extractvalue { ptr, i32 } %9323, 0
  store ptr %9324, ptr %5, align 8
  %9325 = extractvalue { ptr, i32 } %9323, 1
  store i32 %9325, ptr %6, align 4
  br label %9335

9326:                                             ; preds = %9289, %9287
  %9327 = landingpad { ptr, i32 }
          cleanup
  %9328 = extractvalue { ptr, i32 } %9327, 0
  store ptr %9328, ptr %5, align 8
  %9329 = extractvalue { ptr, i32 } %9327, 1
  store i32 %9329, ptr %6, align 4
  br label %9334

9330:                                             ; preds = %9290
  %9331 = landingpad { ptr, i32 }
          cleanup
  %9332 = extractvalue { ptr, i32 } %9331, 0
  store ptr %9332, ptr %5, align 8
  %9333 = extractvalue { ptr, i32 } %9331, 1
  store i32 %9333, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %569) #5
  br label %9334

9334:                                             ; preds = %9330, %9326
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %570) #5
  br label %9335

9335:                                             ; preds = %9334, %9322
  call void @llvm.lifetime.end.p0(i64 24, ptr %570) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %569) #5
  br label %11991

9336:                                             ; preds = %9293
  %9337 = landingpad { ptr, i32 }
          cleanup
  %9338 = extractvalue { ptr, i32 } %9337, 0
  store ptr %9338, ptr %5, align 8
  %9339 = extractvalue { ptr, i32 } %9337, 1
  store i32 %9339, ptr %6, align 4
  br label %9349

9340:                                             ; preds = %9296, %9294
  %9341 = landingpad { ptr, i32 }
          cleanup
  %9342 = extractvalue { ptr, i32 } %9341, 0
  store ptr %9342, ptr %5, align 8
  %9343 = extractvalue { ptr, i32 } %9341, 1
  store i32 %9343, ptr %6, align 4
  br label %9348

9344:                                             ; preds = %9297
  %9345 = landingpad { ptr, i32 }
          cleanup
  %9346 = extractvalue { ptr, i32 } %9345, 0
  store ptr %9346, ptr %5, align 8
  %9347 = extractvalue { ptr, i32 } %9345, 1
  store i32 %9347, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %571) #5
  br label %9348

9348:                                             ; preds = %9344, %9340
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %572) #5
  br label %9349

9349:                                             ; preds = %9348, %9336
  call void @llvm.lifetime.end.p0(i64 24, ptr %572) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %571) #5
  br label %11991

9350:                                             ; preds = %9300
  %9351 = landingpad { ptr, i32 }
          cleanup
  %9352 = extractvalue { ptr, i32 } %9351, 0
  store ptr %9352, ptr %5, align 8
  %9353 = extractvalue { ptr, i32 } %9351, 1
  store i32 %9353, ptr %6, align 4
  br label %9358

9354:                                             ; preds = %9301
  %9355 = landingpad { ptr, i32 }
          cleanup
  %9356 = extractvalue { ptr, i32 } %9355, 0
  store ptr %9356, ptr %5, align 8
  %9357 = extractvalue { ptr, i32 } %9355, 1
  store i32 %9357, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %573) #5
  br label %9358

9358:                                             ; preds = %9354, %9350
  call void @llvm.lifetime.end.p0(i64 24, ptr %573) #5
  br label %11991

9359:                                             ; preds = %9304
  %9360 = landingpad { ptr, i32 }
          cleanup
  %9361 = extractvalue { ptr, i32 } %9360, 0
  store ptr %9361, ptr %5, align 8
  %9362 = extractvalue { ptr, i32 } %9360, 1
  store i32 %9362, ptr %6, align 4
  br label %9367

9363:                                             ; preds = %9305
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %574) #5
  br label %9367

9367:                                             ; preds = %9363, %9359
  call void @llvm.lifetime.end.p0(i64 24, ptr %574) #5
  br label %11991

9368:                                             ; preds = %9308
  %9369 = landingpad { ptr, i32 }
          cleanup
  %9370 = extractvalue { ptr, i32 } %9369, 0
  store ptr %9370, ptr %5, align 8
  %9371 = extractvalue { ptr, i32 } %9369, 1
  store i32 %9371, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %575) #5
  br label %11991

9372:                                             ; preds = %9316
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9373 unwind label %1024

9373:                                             ; preds = %9372
  call void @llvm.lifetime.start.p0(i64 1, ptr %576) #5
  store i8 0, ptr %576, align 1, !tbaa !9
  %9374 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %9375 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9374, ptr noundef nonnull align 1 dereferenceable(1) %576)
          to label %9376 unwind label %9412

9376:                                             ; preds = %9373
  call void @llvm.lifetime.end.p0(i64 1, ptr %576) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9377 unwind label %1024

9377:                                             ; preds = %9376
  call void @llvm.lifetime.start.p0(i64 24, ptr %577) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %578) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %578, i32 noundef 1)
          to label %9378 unwind label %9416

9378:                                             ; preds = %9377
  %9379 = 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) %578)
          to label %9380 unwind label %9420

9380:                                             ; preds = %9378
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %577, ptr noundef nonnull align 1 dereferenceable(1) %9379)
          to label %9381 unwind label %9420

9381:                                             ; preds = %9380
  %9382 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %9383 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9382, ptr noundef nonnull align 8 dereferenceable(24) %577)
          to label %9384 unwind label %9424

9384:                                             ; preds = %9381
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %577) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %578) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %578) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %577) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %579) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %580) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %580, i32 noundef 0)
          to label %9385 unwind label %9430

9385:                                             ; preds = %9384
  %9386 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %580, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %9387 unwind label %9434

9387:                                             ; preds = %9385
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %579, ptr noundef nonnull align 1 dereferenceable(1) %9386)
          to label %9388 unwind label %9434

9388:                                             ; preds = %9387
  %9389 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %9390 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9389, ptr noundef nonnull align 8 dereferenceable(24) %579)
          to label %9391 unwind label %9438

9391:                                             ; preds = %9388
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %579) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %580) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %580) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %579) #5
  %9392 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %9393 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9392, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %9394 unwind label %1024

9394:                                             ; preds = %9391
  call void @llvm.lifetime.start.p0(i64 24, ptr %581) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %581, i32 noundef -2)
          to label %9395 unwind label %9444

9395:                                             ; preds = %9394
  %9396 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %9397 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9396, ptr noundef nonnull align 8 dereferenceable(24) %581)
          to label %9398 unwind label %9448

9398:                                             ; preds = %9395
  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.start.p0(i64 1, ptr %582) #5
  store i8 1, ptr %582, align 1, !tbaa !9
  %9399 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %9400 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9399, ptr noundef nonnull align 1 dereferenceable(1) %582)
          to label %9401 unwind label %9453

9401:                                             ; preds = %9398
  call void @llvm.lifetime.end.p0(i64 1, ptr %582) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9402 unwind label %1024

9402:                                             ; preds = %9401
  br label %9403

9403:                                             ; preds = %9411, %9402
  %9404 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %9405 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9404)
          to label %9406 unwind label %1024

9406:                                             ; preds = %9403
  %9407 = load i8, ptr %9405, align 1, !tbaa !9, !range !11, !noundef !12
  %9408 = trunc i8 %9407 to i1
  %9409 = xor i1 %9408, true
  br i1 %9409, label %9410, label %9457

9410:                                             ; preds = %9406
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9411 unwind label %1024

9411:                                             ; preds = %9410
  br label %9403, !llvm.loop !126

9412:                                             ; preds = %9373
  %9413 = landingpad { ptr, i32 }
          cleanup
  %9414 = extractvalue { ptr, i32 } %9413, 0
  store ptr %9414, ptr %5, align 8
  %9415 = extractvalue { ptr, i32 } %9413, 1
  store i32 %9415, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %576) #5
  br label %11991

9416:                                             ; preds = %9377
  %9417 = landingpad { ptr, i32 }
          cleanup
  %9418 = extractvalue { ptr, i32 } %9417, 0
  store ptr %9418, ptr %5, align 8
  %9419 = extractvalue { ptr, i32 } %9417, 1
  store i32 %9419, ptr %6, align 4
  br label %9429

9420:                                             ; preds = %9380, %9378
  %9421 = landingpad { ptr, i32 }
          cleanup
  %9422 = extractvalue { ptr, i32 } %9421, 0
  store ptr %9422, ptr %5, align 8
  %9423 = extractvalue { ptr, i32 } %9421, 1
  store i32 %9423, ptr %6, align 4
  br label %9428

9424:                                             ; preds = %9381
  %9425 = landingpad { ptr, i32 }
          cleanup
  %9426 = extractvalue { ptr, i32 } %9425, 0
  store ptr %9426, ptr %5, align 8
  %9427 = extractvalue { ptr, i32 } %9425, 1
  store i32 %9427, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %577) #5
  br label %9428

9428:                                             ; preds = %9424, %9420
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %578) #5
  br label %9429

9429:                                             ; preds = %9428, %9416
  call void @llvm.lifetime.end.p0(i64 24, ptr %578) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %577) #5
  br label %11991

9430:                                             ; preds = %9384
  %9431 = landingpad { ptr, i32 }
          cleanup
  %9432 = extractvalue { ptr, i32 } %9431, 0
  store ptr %9432, ptr %5, align 8
  %9433 = extractvalue { ptr, i32 } %9431, 1
  store i32 %9433, ptr %6, align 4
  br label %9443

9434:                                             ; preds = %9387, %9385
  %9435 = landingpad { ptr, i32 }
          cleanup
  %9436 = extractvalue { ptr, i32 } %9435, 0
  store ptr %9436, ptr %5, align 8
  %9437 = extractvalue { ptr, i32 } %9435, 1
  store i32 %9437, ptr %6, align 4
  br label %9442

9438:                                             ; preds = %9388
  %9439 = landingpad { ptr, i32 }
          cleanup
  %9440 = extractvalue { ptr, i32 } %9439, 0
  store ptr %9440, ptr %5, align 8
  %9441 = extractvalue { ptr, i32 } %9439, 1
  store i32 %9441, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %579) #5
  br label %9442

9442:                                             ; preds = %9438, %9434
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %580) #5
  br label %9443

9443:                                             ; preds = %9442, %9430
  call void @llvm.lifetime.end.p0(i64 24, ptr %580) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %579) #5
  br label %11991

9444:                                             ; preds = %9394
  %9445 = landingpad { ptr, i32 }
          cleanup
  %9446 = extractvalue { ptr, i32 } %9445, 0
  store ptr %9446, ptr %5, align 8
  %9447 = extractvalue { ptr, i32 } %9445, 1
  store i32 %9447, ptr %6, align 4
  br label %9452

9448:                                             ; preds = %9395
  %9449 = landingpad { ptr, i32 }
          cleanup
  %9450 = extractvalue { ptr, i32 } %9449, 0
  store ptr %9450, ptr %5, align 8
  %9451 = extractvalue { ptr, i32 } %9449, 1
  store i32 %9451, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %581) #5
  br label %9452

9452:                                             ; preds = %9448, %9444
  call void @llvm.lifetime.end.p0(i64 24, ptr %581) #5
  br label %11991

9453:                                             ; preds = %9398
  %9454 = landingpad { ptr, i32 }
          cleanup
  %9455 = extractvalue { ptr, i32 } %9454, 0
  store ptr %9455, ptr %5, align 8
  %9456 = extractvalue { ptr, i32 } %9454, 1
  store i32 %9456, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %582) #5
  br label %11991

9457:                                             ; preds = %9406
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9458 unwind label %1024

9458:                                             ; preds = %9457
  call void @llvm.lifetime.start.p0(i64 1, ptr %583) #5
  store i8 0, ptr %583, align 1, !tbaa !9
  %9459 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %9460 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9459, ptr noundef nonnull align 1 dereferenceable(1) %583)
          to label %9461 unwind label %9495

9461:                                             ; preds = %9458
  call void @llvm.lifetime.end.p0(i64 1, ptr %583) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9462 unwind label %1024

9462:                                             ; preds = %9461
  call void @llvm.lifetime.start.p0(i64 24, ptr %584) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %584, i32 noundef 10)
          to label %9463 unwind label %9499

9463:                                             ; preds = %9462
  %9464 = 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) %584)
          to label %9465 unwind label %9503

9465:                                             ; preds = %9463
  %9466 = 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) %9464)
          to label %9467 unwind label %9503

9467:                                             ; preds = %9465
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %584) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %584) #5
  %9468 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %9469 unwind label %1024

9469:                                             ; preds = %9467
  %9470 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %9471 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9470, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %9472 unwind label %1024

9472:                                             ; preds = %9469
  %9473 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %9474 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9473, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %9475 unwind label %1024

9475:                                             ; preds = %9472
  call void @llvm.lifetime.start.p0(i64 1, ptr %585) #5
  store i8 0, ptr %585, align 1, !tbaa !9
  %9476 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %9477 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9476, ptr noundef nonnull align 1 dereferenceable(1) %585)
          to label %9478 unwind label %9508

9478:                                             ; preds = %9475
  call void @llvm.lifetime.end.p0(i64 1, ptr %585) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %586) #5
  store i8 1, ptr %586, align 1, !tbaa !9
  %9479 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %9480 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9479, ptr noundef nonnull align 1 dereferenceable(1) %586)
          to label %9481 unwind label %9512

9481:                                             ; preds = %9478
  call void @llvm.lifetime.end.p0(i64 1, ptr %586) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9482 unwind label %1024

9482:                                             ; preds = %9481
  br label %9483

9483:                                             ; preds = %9521, %9482
  br label %9484

9484:                                             ; preds = %9483
  call void @llvm.lifetime.start.p0(i64 1, ptr %587) #5
  store i8 0, ptr %587, align 1, !tbaa !9
  %9485 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %9486 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9485, ptr noundef nonnull align 1 dereferenceable(1) %587)
          to label %9487 unwind label %9516

9487:                                             ; preds = %9484
  call void @llvm.lifetime.end.p0(i64 1, ptr %587) #5
  %9488 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %9489 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %9488)
          to label %9490 unwind label %1024

9490:                                             ; preds = %9487
  %9491 = load i8, ptr %9489, align 1, !tbaa !9, !range !11, !noundef !12
  %9492 = trunc i8 %9491 to i1
  br i1 %9492, label %9493, label %9520

9493:                                             ; preds = %9490
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9494 unwind label %1024

9494:                                             ; preds = %9493
  br label %9522

9495:                                             ; preds = %9458
  %9496 = landingpad { ptr, i32 }
          cleanup
  %9497 = extractvalue { ptr, i32 } %9496, 0
  store ptr %9497, ptr %5, align 8
  %9498 = extractvalue { ptr, i32 } %9496, 1
  store i32 %9498, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %583) #5
  br label %11991

9499:                                             ; preds = %9462
  %9500 = landingpad { ptr, i32 }
          cleanup
  %9501 = extractvalue { ptr, i32 } %9500, 0
  store ptr %9501, ptr %5, align 8
  %9502 = extractvalue { ptr, i32 } %9500, 1
  store i32 %9502, ptr %6, align 4
  br label %9507

9503:                                             ; preds = %9465, %9463
  %9504 = landingpad { ptr, i32 }
          cleanup
  %9505 = extractvalue { ptr, i32 } %9504, 0
  store ptr %9505, ptr %5, align 8
  %9506 = extractvalue { ptr, i32 } %9504, 1
  store i32 %9506, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %584) #5
  br label %9507

9507:                                             ; preds = %9503, %9499
  call void @llvm.lifetime.end.p0(i64 24, ptr %584) #5
  br label %11991

9508:                                             ; preds = %9475
  %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 %585) #5
  br label %11991

9512:                                             ; preds = %9478
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %586) #5
  br label %11991

9516:                                             ; preds = %9484
  %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 @llvm.lifetime.end.p0(i64 1, ptr %587) #5
  br label %11991

9520:                                             ; preds = %9490
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9521 unwind label %1024

9521:                                             ; preds = %9520
  br label %9483, !llvm.loop !127

9522:                                             ; preds = %9494
  call void @llvm.lifetime.start.p0(i64 24, ptr %588) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %588, i32 noundef 8)
          to label %9523 unwind label %9558

9523:                                             ; preds = %9522
  %9524 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %9525 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9524, ptr noundef nonnull align 8 dereferenceable(24) %588)
          to label %9526 unwind label %9562

9526:                                             ; preds = %9523
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %588) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %588) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %589) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %590) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %590, i32 noundef 24)
          to label %9527 unwind label %9567

9527:                                             ; preds = %9526
  %9528 = 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) %590)
          to label %9529 unwind label %9571

9529:                                             ; preds = %9527
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %589, ptr noundef nonnull align 1 dereferenceable(1) %9528)
          to label %9530 unwind label %9571

9530:                                             ; preds = %9529
  %9531 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %9532 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9531, ptr noundef nonnull align 8 dereferenceable(24) %589)
          to label %9533 unwind label %9575

9533:                                             ; preds = %9530
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %589) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %590) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %590) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %589) #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 3)
          to label %9534 unwind label %9581

9534:                                             ; preds = %9533
  %9535 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %9536 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9535, ptr noundef nonnull align 8 dereferenceable(24) %591)
          to label %9537 unwind label %9585

9537:                                             ; preds = %9534
  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.start.p0(i64 24, ptr %592) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %592, i32 noundef 3)
          to label %9538 unwind label %9590

9538:                                             ; preds = %9537
  %9539 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %9540 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9539, ptr noundef nonnull align 8 dereferenceable(24) %592)
          to label %9541 unwind label %9594

9541:                                             ; preds = %9538
  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
  %9542 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %9543 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9542, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9544 unwind label %1024

9544:                                             ; preds = %9541
  call void @llvm.lifetime.start.p0(i64 1, ptr %593) #5
  store i8 1, ptr %593, align 1, !tbaa !9
  %9545 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %9546 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9545, ptr noundef nonnull align 1 dereferenceable(1) %593)
          to label %9547 unwind label %9599

9547:                                             ; preds = %9544
  call void @llvm.lifetime.end.p0(i64 1, ptr %593) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9548 unwind label %1024

9548:                                             ; preds = %9547
  br label %9549

9549:                                             ; preds = %9557, %9548
  %9550 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %9551 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9550)
          to label %9552 unwind label %1024

9552:                                             ; preds = %9549
  %9553 = load i8, ptr %9551, align 1, !tbaa !9, !range !11, !noundef !12
  %9554 = trunc i8 %9553 to i1
  %9555 = xor i1 %9554, true
  br i1 %9555, label %9556, label %9603

9556:                                             ; preds = %9552
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9557 unwind label %1024

9557:                                             ; preds = %9556
  br label %9549, !llvm.loop !128

9558:                                             ; preds = %9522
  %9559 = landingpad { ptr, i32 }
          cleanup
  %9560 = extractvalue { ptr, i32 } %9559, 0
  store ptr %9560, ptr %5, align 8
  %9561 = extractvalue { ptr, i32 } %9559, 1
  store i32 %9561, ptr %6, align 4
  br label %9566

9562:                                             ; preds = %9523
  %9563 = landingpad { ptr, i32 }
          cleanup
  %9564 = extractvalue { ptr, i32 } %9563, 0
  store ptr %9564, ptr %5, align 8
  %9565 = extractvalue { ptr, i32 } %9563, 1
  store i32 %9565, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %588) #5
  br label %9566

9566:                                             ; preds = %9562, %9558
  call void @llvm.lifetime.end.p0(i64 24, ptr %588) #5
  br label %11991

9567:                                             ; preds = %9526
  %9568 = landingpad { ptr, i32 }
          cleanup
  %9569 = extractvalue { ptr, i32 } %9568, 0
  store ptr %9569, ptr %5, align 8
  %9570 = extractvalue { ptr, i32 } %9568, 1
  store i32 %9570, ptr %6, align 4
  br label %9580

9571:                                             ; preds = %9529, %9527
  %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 = %9530
  %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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %590) #5
  br label %9580

9580:                                             ; preds = %9579, %9567
  call void @llvm.lifetime.end.p0(i64 24, ptr %590) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %589) #5
  br label %11991

9581:                                             ; preds = %9533
  %9582 = landingpad { ptr, i32 }
          cleanup
  %9583 = extractvalue { ptr, i32 } %9582, 0
  store ptr %9583, ptr %5, align 8
  %9584 = extractvalue { ptr, i32 } %9582, 1
  store i32 %9584, ptr %6, align 4
  br label %9589

9585:                                             ; preds = %9534
  %9586 = landingpad { ptr, i32 }
          cleanup
  %9587 = extractvalue { ptr, i32 } %9586, 0
  store ptr %9587, ptr %5, align 8
  %9588 = extractvalue { ptr, i32 } %9586, 1
  store i32 %9588, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %591) #5
  br label %9589

9589:                                             ; preds = %9585, %9581
  call void @llvm.lifetime.end.p0(i64 24, ptr %591) #5
  br label %11991

9590:                                             ; preds = %9537
  %9591 = landingpad { ptr, i32 }
          cleanup
  %9592 = extractvalue { ptr, i32 } %9591, 0
  store ptr %9592, ptr %5, align 8
  %9593 = extractvalue { ptr, i32 } %9591, 1
  store i32 %9593, ptr %6, align 4
  br label %9598

9594:                                             ; preds = %9538
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %592) #5
  br label %9598

9598:                                             ; preds = %9594, %9590
  call void @llvm.lifetime.end.p0(i64 24, ptr %592) #5
  br label %11991

9599:                                             ; preds = %9544
  %9600 = landingpad { ptr, i32 }
          cleanup
  %9601 = extractvalue { ptr, i32 } %9600, 0
  store ptr %9601, ptr %5, align 8
  %9602 = extractvalue { ptr, i32 } %9600, 1
  store i32 %9602, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %593) #5
  br label %11991

9603:                                             ; preds = %9552
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9604 unwind label %1024

9604:                                             ; preds = %9603
  call void @llvm.lifetime.start.p0(i64 1, ptr %594) #5
  store i8 0, ptr %594, align 1, !tbaa !9
  %9605 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %9606 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9605, ptr noundef nonnull align 1 dereferenceable(1) %594)
          to label %9607 unwind label %9644

9607:                                             ; preds = %9604
  call void @llvm.lifetime.end.p0(i64 1, ptr %594) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9608 unwind label %1024

9608:                                             ; preds = %9607
  call void @llvm.lifetime.start.p0(i64 24, ptr %595) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %595, i32 noundef 64)
          to label %9609 unwind label %9648

9609:                                             ; preds = %9608
  %9610 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %9611 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9610, ptr noundef nonnull align 8 dereferenceable(24) %595)
          to label %9612 unwind label %9652

9612:                                             ; preds = %9609
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %595) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %595) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %596) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %597) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %597, i32 noundef 27)
          to label %9613 unwind label %9657

9613:                                             ; preds = %9612
  %9614 = 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) %597)
          to label %9615 unwind label %9661

9615:                                             ; preds = %9613
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %596, ptr noundef nonnull align 1 dereferenceable(1) %9614)
          to label %9616 unwind label %9661

9616:                                             ; preds = %9615
  %9617 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %9618 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9617, ptr noundef nonnull align 8 dereferenceable(24) %596)
          to label %9619 unwind label %9665

9619:                                             ; preds = %9616
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %596) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %597) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %597) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %596) #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 32)
          to label %9620 unwind label %9671

9620:                                             ; preds = %9619
  %9621 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %9622 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9621, ptr noundef nonnull align 8 dereferenceable(24) %598)
          to label %9623 unwind label %9675

9623:                                             ; preds = %9620
  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.start.p0(i64 24, ptr %599) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %599, i32 noundef 3)
          to label %9624 unwind label %9680

9624:                                             ; preds = %9623
  %9625 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %9626 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9625, ptr noundef nonnull align 8 dereferenceable(24) %599)
          to label %9627 unwind label %9684

9627:                                             ; preds = %9624
  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
  %9628 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %9629 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9628, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9630 unwind label %1024

9630:                                             ; preds = %9627
  call void @llvm.lifetime.start.p0(i64 1, ptr %600) #5
  store i8 1, ptr %600, align 1, !tbaa !9
  %9631 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %9632 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9631, ptr noundef nonnull align 1 dereferenceable(1) %600)
          to label %9633 unwind label %9689

9633:                                             ; preds = %9630
  call void @llvm.lifetime.end.p0(i64 1, ptr %600) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9634 unwind label %1024

9634:                                             ; preds = %9633
  br label %9635

9635:                                             ; preds = %9643, %9634
  %9636 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %9637 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9636)
          to label %9638 unwind label %1024

9638:                                             ; preds = %9635
  %9639 = load i8, ptr %9637, align 1, !tbaa !9, !range !11, !noundef !12
  %9640 = trunc i8 %9639 to i1
  %9641 = xor i1 %9640, true
  br i1 %9641, label %9642, label %9693

9642:                                             ; preds = %9638
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9643 unwind label %1024

9643:                                             ; preds = %9642
  br label %9635, !llvm.loop !129

9644:                                             ; preds = %9604
  %9645 = landingpad { ptr, i32 }
          cleanup
  %9646 = extractvalue { ptr, i32 } %9645, 0
  store ptr %9646, ptr %5, align 8
  %9647 = extractvalue { ptr, i32 } %9645, 1
  store i32 %9647, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %594) #5
  br label %11991

9648:                                             ; preds = %9608
  %9649 = landingpad { ptr, i32 }
          cleanup
  %9650 = extractvalue { ptr, i32 } %9649, 0
  store ptr %9650, ptr %5, align 8
  %9651 = extractvalue { ptr, i32 } %9649, 1
  store i32 %9651, ptr %6, align 4
  br label %9656

9652:                                             ; preds = %9609
  %9653 = landingpad { ptr, i32 }
          cleanup
  %9654 = extractvalue { ptr, i32 } %9653, 0
  store ptr %9654, ptr %5, align 8
  %9655 = extractvalue { ptr, i32 } %9653, 1
  store i32 %9655, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %595) #5
  br label %9656

9656:                                             ; preds = %9652, %9648
  call void @llvm.lifetime.end.p0(i64 24, ptr %595) #5
  br label %11991

9657:                                             ; preds = %9612
  %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
  br label %9670

9661:                                             ; preds = %9615, %9613
  %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 = %9616
  %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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %597) #5
  br label %9670

9670:                                             ; preds = %9669, %9657
  call void @llvm.lifetime.end.p0(i64 24, ptr %597) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %596) #5
  br label %11991

9671:                                             ; preds = %9619
  %9672 = landingpad { ptr, i32 }
          cleanup
  %9673 = extractvalue { ptr, i32 } %9672, 0
  store ptr %9673, ptr %5, align 8
  %9674 = extractvalue { ptr, i32 } %9672, 1
  store i32 %9674, ptr %6, align 4
  br label %9679

9675:                                             ; preds = %9620
  %9676 = landingpad { ptr, i32 }
          cleanup
  %9677 = extractvalue { ptr, i32 } %9676, 0
  store ptr %9677, ptr %5, align 8
  %9678 = extractvalue { ptr, i32 } %9676, 1
  store i32 %9678, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %598) #5
  br label %9679

9679:                                             ; preds = %9675, %9671
  call void @llvm.lifetime.end.p0(i64 24, ptr %598) #5
  br label %11991

9680:                                             ; preds = %9623
  %9681 = landingpad { ptr, i32 }
          cleanup
  %9682 = extractvalue { ptr, i32 } %9681, 0
  store ptr %9682, ptr %5, align 8
  %9683 = extractvalue { ptr, i32 } %9681, 1
  store i32 %9683, ptr %6, align 4
  br label %9688

9684:                                             ; preds = %9624
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %599) #5
  br label %9688

9688:                                             ; preds = %9684, %9680
  call void @llvm.lifetime.end.p0(i64 24, ptr %599) #5
  br label %11991

9689:                                             ; preds = %9630
  %9690 = landingpad { ptr, i32 }
          cleanup
  %9691 = extractvalue { ptr, i32 } %9690, 0
  store ptr %9691, ptr %5, align 8
  %9692 = extractvalue { ptr, i32 } %9690, 1
  store i32 %9692, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %600) #5
  br label %11991

9693:                                             ; preds = %9638
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9694 unwind label %1024

9694:                                             ; preds = %9693
  call void @llvm.lifetime.start.p0(i64 1, ptr %601) #5
  store i8 0, ptr %601, align 1, !tbaa !9
  %9695 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %9696 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9695, ptr noundef nonnull align 1 dereferenceable(1) %601)
          to label %9697 unwind label %9730

9697:                                             ; preds = %9694
  call void @llvm.lifetime.end.p0(i64 1, ptr %601) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9698 unwind label %1024

9698:                                             ; preds = %9697
  call void @llvm.lifetime.start.p0(i64 24, ptr %602) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %602, i32 noundef 128)
          to label %9699 unwind label %9734

9699:                                             ; preds = %9698
  %9700 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %9701 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9700, ptr noundef nonnull align 8 dereferenceable(24) %602)
          to label %9702 unwind label %9738

9702:                                             ; preds = %9699
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %602) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %602) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %603) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %604) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %604, i32 noundef 59)
          to label %9703 unwind label %9743

9703:                                             ; preds = %9702
  %9704 = 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) %604)
          to label %9705 unwind label %9747

9705:                                             ; preds = %9703
  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) %9704)
          to label %9706 unwind label %9747

9706:                                             ; preds = %9705
  %9707 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %9708 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9707, ptr noundef nonnull align 8 dereferenceable(24) %603)
          to label %9709 unwind label %9751

9709:                                             ; preds = %9706
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %603) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %604) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %604) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %603) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %605) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %605, i32 noundef 3)
          to label %9710 unwind label %9757

9710:                                             ; preds = %9709
  %9711 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %9712 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9711, ptr noundef nonnull align 8 dereferenceable(24) %605)
          to label %9713 unwind label %9761

9713:                                             ; preds = %9710
  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
  %9714 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %9715 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9714, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9716 unwind label %1024

9716:                                             ; preds = %9713
  call void @llvm.lifetime.start.p0(i64 1, ptr %606) #5
  store i8 1, ptr %606, align 1, !tbaa !9
  %9717 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %9718 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9717, ptr noundef nonnull align 1 dereferenceable(1) %606)
          to label %9719 unwind label %9766

9719:                                             ; preds = %9716
  call void @llvm.lifetime.end.p0(i64 1, ptr %606) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9720 unwind label %1024

9720:                                             ; preds = %9719
  br label %9721

9721:                                             ; preds = %9729, %9720
  %9722 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %9723 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9722)
          to label %9724 unwind label %1024

9724:                                             ; preds = %9721
  %9725 = load i8, ptr %9723, align 1, !tbaa !9, !range !11, !noundef !12
  %9726 = trunc i8 %9725 to i1
  %9727 = xor i1 %9726, true
  br i1 %9727, label %9728, label %9770

9728:                                             ; preds = %9724
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9729 unwind label %1024

9729:                                             ; preds = %9728
  br label %9721, !llvm.loop !130

9730:                                             ; preds = %9694
  %9731 = landingpad { ptr, i32 }
          cleanup
  %9732 = extractvalue { ptr, i32 } %9731, 0
  store ptr %9732, ptr %5, align 8
  %9733 = extractvalue { ptr, i32 } %9731, 1
  store i32 %9733, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %601) #5
  br label %11991

9734:                                             ; preds = %9698
  %9735 = landingpad { ptr, i32 }
          cleanup
  %9736 = extractvalue { ptr, i32 } %9735, 0
  store ptr %9736, ptr %5, align 8
  %9737 = extractvalue { ptr, i32 } %9735, 1
  store i32 %9737, ptr %6, align 4
  br label %9742

9738:                                             ; preds = %9699
  %9739 = landingpad { ptr, i32 }
          cleanup
  %9740 = extractvalue { ptr, i32 } %9739, 0
  store ptr %9740, ptr %5, align 8
  %9741 = extractvalue { ptr, i32 } %9739, 1
  store i32 %9741, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %602) #5
  br label %9742

9742:                                             ; preds = %9738, %9734
  call void @llvm.lifetime.end.p0(i64 24, ptr %602) #5
  br label %11991

9743:                                             ; preds = %9702
  %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
  br label %9756

9747:                                             ; preds = %9705, %9703
  %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 = %9706
  %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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %604) #5
  br label %9756

9756:                                             ; preds = %9755, %9743
  call void @llvm.lifetime.end.p0(i64 24, ptr %604) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %603) #5
  br label %11991

9757:                                             ; preds = %9709
  %9758 = landingpad { ptr, i32 }
          cleanup
  %9759 = extractvalue { ptr, i32 } %9758, 0
  store ptr %9759, ptr %5, align 8
  %9760 = extractvalue { ptr, i32 } %9758, 1
  store i32 %9760, ptr %6, align 4
  br label %9765

9761:                                             ; preds = %9710
  %9762 = landingpad { ptr, i32 }
          cleanup
  %9763 = extractvalue { ptr, i32 } %9762, 0
  store ptr %9763, ptr %5, align 8
  %9764 = extractvalue { ptr, i32 } %9762, 1
  store i32 %9764, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %605) #5
  br label %9765

9765:                                             ; preds = %9761, %9757
  call void @llvm.lifetime.end.p0(i64 24, ptr %605) #5
  br label %11991

9766:                                             ; preds = %9716
  %9767 = landingpad { ptr, i32 }
          cleanup
  %9768 = extractvalue { ptr, i32 } %9767, 0
  store ptr %9768, ptr %5, align 8
  %9769 = extractvalue { ptr, i32 } %9767, 1
  store i32 %9769, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %606) #5
  br label %11991

9770:                                             ; preds = %9724
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9771 unwind label %1024

9771:                                             ; preds = %9770
  call void @llvm.lifetime.start.p0(i64 1, ptr %607) #5
  store i8 0, ptr %607, align 1, !tbaa !9
  %9772 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %9773 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9772, ptr noundef nonnull align 1 dereferenceable(1) %607)
          to label %9774 unwind label %9809

9774:                                             ; preds = %9771
  call void @llvm.lifetime.end.p0(i64 1, ptr %607) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9775 unwind label %1024

9775:                                             ; preds = %9774
  call void @llvm.lifetime.start.p0(i64 24, ptr %608) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %608, i32 noundef 32)
          to label %9776 unwind label %9813

9776:                                             ; preds = %9775
  %9777 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %9778 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9777, ptr noundef nonnull align 8 dereferenceable(24) %608)
          to label %9779 unwind label %9817

9779:                                             ; preds = %9776
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %608) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %608) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %609) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %610) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %610, i32 noundef -37)
          to label %9780 unwind label %9822

9780:                                             ; preds = %9779
  %9781 = 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) %610)
          to label %9782 unwind label %9826

9782:                                             ; preds = %9780
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %609, ptr noundef nonnull align 1 dereferenceable(1) %9781)
          to label %9783 unwind label %9826

9783:                                             ; preds = %9782
  %9784 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %9785 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9784, ptr noundef nonnull align 8 dereferenceable(24) %609)
          to label %9786 unwind label %9830

9786:                                             ; preds = %9783
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %609) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %610) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %610) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %609) #5
  %9787 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 7
  %9788 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9787)
          to label %9789 unwind label %1024

9789:                                             ; preds = %9786
  %9790 = load i8, ptr %9788, align 1, !tbaa !9, !range !11, !noundef !12
  %9791 = trunc i8 %9790 to i1
  br i1 %9791, label %9863, label %9792

9792:                                             ; preds = %9789
  call void @llvm.lifetime.start.p0(i64 24, ptr %611) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %611, i32 noundef -31)
          to label %9793 unwind label %9836

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 %9840

9795:                                             ; preds = %9793
  %9796 = 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) %9794)
          to label %9797 unwind label %9840

9797:                                             ; preds = %9795
  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.start.p0(i64 24, ptr %612) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %612, i32 noundef -30)
          to label %9798 unwind label %9845

9798:                                             ; preds = %9797
  %9799 = 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 %9800 unwind label %9849

9800:                                             ; preds = %9798
  %9801 = 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) %9799)
          to label %9802 unwind label %9849

9802:                                             ; preds = %9800
  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
  %9803 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 6)
          to label %9804 unwind label %1024

9804:                                             ; preds = %9802
  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 6)
          to label %9805 unwind label %9854

9805:                                             ; preds = %9804
  %9806 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %9807 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9806, ptr noundef nonnull align 8 dereferenceable(24) %613)
          to label %9808 unwind label %9858

9808:                                             ; preds = %9805
  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
  br label %9907

9809:                                             ; preds = %9771
  %9810 = landingpad { ptr, i32 }
          cleanup
  %9811 = extractvalue { ptr, i32 } %9810, 0
  store ptr %9811, ptr %5, align 8
  %9812 = extractvalue { ptr, i32 } %9810, 1
  store i32 %9812, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %607) #5
  br label %11991

9813:                                             ; preds = %9775
  %9814 = landingpad { ptr, i32 }
          cleanup
  %9815 = extractvalue { ptr, i32 } %9814, 0
  store ptr %9815, ptr %5, align 8
  %9816 = extractvalue { ptr, i32 } %9814, 1
  store i32 %9816, ptr %6, align 4
  br label %9821

9817:                                             ; preds = %9776
  %9818 = landingpad { ptr, i32 }
          cleanup
  %9819 = extractvalue { ptr, i32 } %9818, 0
  store ptr %9819, ptr %5, align 8
  %9820 = extractvalue { ptr, i32 } %9818, 1
  store i32 %9820, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %608) #5
  br label %9821

9821:                                             ; preds = %9817, %9813
  call void @llvm.lifetime.end.p0(i64 24, ptr %608) #5
  br label %11991

9822:                                             ; preds = %9779
  %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
  br label %9835

9826:                                             ; preds = %9782, %9780
  %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 = %9783
  %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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %610) #5
  br label %9835

9835:                                             ; preds = %9834, %9822
  call void @llvm.lifetime.end.p0(i64 24, ptr %610) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %609) #5
  br label %11991

9836:                                             ; preds = %9792
  %9837 = landingpad { ptr, i32 }
          cleanup
  %9838 = extractvalue { ptr, i32 } %9837, 0
  store ptr %9838, ptr %5, align 8
  %9839 = extractvalue { ptr, i32 } %9837, 1
  store i32 %9839, ptr %6, align 4
  br label %9844

9840:                                             ; preds = %9795, %9793
  %9841 = landingpad { ptr, i32 }
          cleanup
  %9842 = extractvalue { ptr, i32 } %9841, 0
  store ptr %9842, ptr %5, align 8
  %9843 = extractvalue { ptr, i32 } %9841, 1
  store i32 %9843, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %611) #5
  br label %9844

9844:                                             ; preds = %9840, %9836
  call void @llvm.lifetime.end.p0(i64 24, ptr %611) #5
  br label %11991

9845:                                             ; preds = %9797
  %9846 = landingpad { ptr, i32 }
          cleanup
  %9847 = extractvalue { ptr, i32 } %9846, 0
  store ptr %9847, ptr %5, align 8
  %9848 = extractvalue { ptr, i32 } %9846, 1
  store i32 %9848, ptr %6, align 4
  br label %9853

9849:                                             ; preds = %9800, %9798
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %612) #5
  br label %9853

9853:                                             ; preds = %9849, %9845
  call void @llvm.lifetime.end.p0(i64 24, ptr %612) #5
  br label %11991

9854:                                             ; preds = %9804
  %9855 = landingpad { ptr, i32 }
          cleanup
  %9856 = extractvalue { ptr, i32 } %9855, 0
  store ptr %9856, ptr %5, align 8
  %9857 = extractvalue { ptr, i32 } %9855, 1
  store i32 %9857, ptr %6, align 4
  br label %9862

9858:                                             ; preds = %9805
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %613) #5
  br label %9862

9862:                                             ; preds = %9858, %9854
  call void @llvm.lifetime.end.p0(i64 24, ptr %613) #5
  br label %11991

9863:                                             ; preds = %9789
  call void @llvm.lifetime.start.p0(i64 24, ptr %614) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %614, i32 noundef -33)
          to label %9864 unwind label %9880

9864:                                             ; preds = %9863
  %9865 = 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) %614)
          to label %9866 unwind label %9884

9866:                                             ; preds = %9864
  %9867 = 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) %9865)
          to label %9868 unwind label %9884

9868:                                             ; preds = %9866
  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
  call void @llvm.lifetime.start.p0(i64 24, ptr %615) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %615, i32 noundef -32)
          to label %9869 unwind label %9889

9869:                                             ; preds = %9868
  %9870 = 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 %9871 unwind label %9893

9871:                                             ; preds = %9869
  %9872 = 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) %9870)
          to label %9873 unwind label %9893

9873:                                             ; preds = %9871
  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
  %9874 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 4)
          to label %9875 unwind label %1024

9875:                                             ; preds = %9873
  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 4)
          to label %9876 unwind label %9898

9876:                                             ; preds = %9875
  %9877 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %9878 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9877, ptr noundef nonnull align 8 dereferenceable(24) %616)
          to label %9879 unwind label %9902

9879:                                             ; preds = %9876
  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
  br label %9907

9880:                                             ; preds = %9863
  %9881 = landingpad { ptr, i32 }
          cleanup
  %9882 = extractvalue { ptr, i32 } %9881, 0
  store ptr %9882, ptr %5, align 8
  %9883 = extractvalue { ptr, i32 } %9881, 1
  store i32 %9883, ptr %6, align 4
  br label %9888

9884:                                             ; preds = %9866, %9864
  %9885 = landingpad { ptr, i32 }
          cleanup
  %9886 = extractvalue { ptr, i32 } %9885, 0
  store ptr %9886, ptr %5, align 8
  %9887 = extractvalue { ptr, i32 } %9885, 1
  store i32 %9887, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %614) #5
  br label %9888

9888:                                             ; preds = %9884, %9880
  call void @llvm.lifetime.end.p0(i64 24, ptr %614) #5
  br label %11991

9889:                                             ; preds = %9868
  %9890 = landingpad { ptr, i32 }
          cleanup
  %9891 = extractvalue { ptr, i32 } %9890, 0
  store ptr %9891, ptr %5, align 8
  %9892 = extractvalue { ptr, i32 } %9890, 1
  store i32 %9892, ptr %6, align 4
  br label %9897

9893:                                             ; preds = %9871, %9869
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %615) #5
  br label %9897

9897:                                             ; preds = %9893, %9889
  call void @llvm.lifetime.end.p0(i64 24, ptr %615) #5
  br label %11991

9898:                                             ; preds = %9875
  %9899 = landingpad { ptr, i32 }
          cleanup
  %9900 = extractvalue { ptr, i32 } %9899, 0
  store ptr %9900, ptr %5, align 8
  %9901 = extractvalue { ptr, i32 } %9899, 1
  store i32 %9901, ptr %6, align 4
  br label %9906

9902:                                             ; preds = %9876
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %616) #5
  br label %9906

9906:                                             ; preds = %9902, %9898
  call void @llvm.lifetime.end.p0(i64 24, ptr %616) #5
  br label %11991

9907:                                             ; preds = %9879, %9808
  call void @llvm.lifetime.start.p0(i64 24, ptr %617) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %617, i32 noundef 3)
          to label %9908 unwind label %9928

9908:                                             ; preds = %9907
  %9909 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %9910 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9909, ptr noundef nonnull align 8 dereferenceable(24) %617)
          to label %9911 unwind label %9932

9911:                                             ; preds = %9908
  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
  %9912 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %9913 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9912, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9914 unwind label %1024

9914:                                             ; preds = %9911
  call void @llvm.lifetime.start.p0(i64 1, ptr %618) #5
  store i8 1, ptr %618, align 1, !tbaa !9
  %9915 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %9916 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9915, ptr noundef nonnull align 1 dereferenceable(1) %618)
          to label %9917 unwind label %9937

9917:                                             ; preds = %9914
  call void @llvm.lifetime.end.p0(i64 1, ptr %618) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9918 unwind label %1024

9918:                                             ; preds = %9917
  br label %9919

9919:                                             ; preds = %9927, %9918
  %9920 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %9921 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9920)
          to label %9922 unwind label %1024

9922:                                             ; preds = %9919
  %9923 = load i8, ptr %9921, align 1, !tbaa !9, !range !11, !noundef !12
  %9924 = trunc i8 %9923 to i1
  %9925 = xor i1 %9924, true
  br i1 %9925, label %9926, label %9941

9926:                                             ; preds = %9922
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9927 unwind label %1024

9927:                                             ; preds = %9926
  br label %9919, !llvm.loop !131

9928:                                             ; preds = %9907
  %9929 = landingpad { ptr, i32 }
          cleanup
  %9930 = extractvalue { ptr, i32 } %9929, 0
  store ptr %9930, ptr %5, align 8
  %9931 = extractvalue { ptr, i32 } %9929, 1
  store i32 %9931, ptr %6, align 4
  br label %9936

9932:                                             ; preds = %9908
  %9933 = landingpad { ptr, i32 }
          cleanup
  %9934 = extractvalue { ptr, i32 } %9933, 0
  store ptr %9934, ptr %5, align 8
  %9935 = extractvalue { ptr, i32 } %9933, 1
  store i32 %9935, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %617) #5
  br label %9936

9936:                                             ; preds = %9932, %9928
  call void @llvm.lifetime.end.p0(i64 24, ptr %617) #5
  br label %11991

9937:                                             ; preds = %9914
  %9938 = landingpad { ptr, i32 }
          cleanup
  %9939 = extractvalue { ptr, i32 } %9938, 0
  store ptr %9939, ptr %5, align 8
  %9940 = extractvalue { ptr, i32 } %9938, 1
  store i32 %9940, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %618) #5
  br label %11991

9941:                                             ; preds = %9922
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9942 unwind label %1024

9942:                                             ; preds = %9941
  call void @llvm.lifetime.start.p0(i64 1, ptr %619) #5
  store i8 0, ptr %619, align 1, !tbaa !9
  %9943 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %9944 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9943, ptr noundef nonnull align 1 dereferenceable(1) %619)
          to label %9945 unwind label %9978

9945:                                             ; preds = %9942
  call void @llvm.lifetime.end.p0(i64 1, ptr %619) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9946 unwind label %1024

9946:                                             ; preds = %9945
  call void @llvm.lifetime.start.p0(i64 24, ptr %620) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %620, i32 noundef 2)
          to label %9947 unwind label %9982

9947:                                             ; preds = %9946
  %9948 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %9949 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9948, ptr noundef nonnull align 8 dereferenceable(24) %620)
          to label %9950 unwind label %9986

9950:                                             ; preds = %9947
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %620) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %620) #5
  %9951 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %9952 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9951, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %9953 unwind label %1024

9953:                                             ; preds = %9950
  call void @llvm.lifetime.start.p0(i64 24, ptr %621) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %621, i32 noundef 1)
          to label %9954 unwind label %9991

9954:                                             ; preds = %9953
  %9955 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %9956 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9955, ptr noundef nonnull align 8 dereferenceable(24) %621)
          to label %9957 unwind label %9995

9957:                                             ; preds = %9954
  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
  call void @llvm.lifetime.start.p0(i64 24, ptr %622) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %622, i32 noundef 3)
          to label %9958 unwind label %10000

9958:                                             ; preds = %9957
  %9959 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %9960 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9959, ptr noundef nonnull align 8 dereferenceable(24) %622)
          to label %9961 unwind label %10004

9961:                                             ; preds = %9958
  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
  %9962 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %9963 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9962, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9964 unwind label %1024

9964:                                             ; preds = %9961
  call void @llvm.lifetime.start.p0(i64 1, ptr %623) #5
  store i8 1, ptr %623, align 1, !tbaa !9
  %9965 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %9966 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9965, ptr noundef nonnull align 1 dereferenceable(1) %623)
          to label %9967 unwind label %10009

9967:                                             ; preds = %9964
  call void @llvm.lifetime.end.p0(i64 1, ptr %623) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9968 unwind label %1024

9968:                                             ; preds = %9967
  br label %9969

9969:                                             ; preds = %9977, %9968
  %9970 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %9971 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9970)
          to label %9972 unwind label %1024

9972:                                             ; preds = %9969
  %9973 = load i8, ptr %9971, align 1, !tbaa !9, !range !11, !noundef !12
  %9974 = trunc i8 %9973 to i1
  %9975 = xor i1 %9974, true
  br i1 %9975, label %9976, label %10013

9976:                                             ; preds = %9972
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %9977 unwind label %1024

9977:                                             ; preds = %9976
  br label %9969, !llvm.loop !132

9978:                                             ; preds = %9942
  %9979 = landingpad { ptr, i32 }
          cleanup
  %9980 = extractvalue { ptr, i32 } %9979, 0
  store ptr %9980, ptr %5, align 8
  %9981 = extractvalue { ptr, i32 } %9979, 1
  store i32 %9981, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %619) #5
  br label %11991

9982:                                             ; preds = %9946
  %9983 = landingpad { ptr, i32 }
          cleanup
  %9984 = extractvalue { ptr, i32 } %9983, 0
  store ptr %9984, ptr %5, align 8
  %9985 = extractvalue { ptr, i32 } %9983, 1
  store i32 %9985, ptr %6, align 4
  br label %9990

9986:                                             ; preds = %9947
  %9987 = landingpad { ptr, i32 }
          cleanup
  %9988 = extractvalue { ptr, i32 } %9987, 0
  store ptr %9988, ptr %5, align 8
  %9989 = extractvalue { ptr, i32 } %9987, 1
  store i32 %9989, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %620) #5
  br label %9990

9990:                                             ; preds = %9986, %9982
  call void @llvm.lifetime.end.p0(i64 24, ptr %620) #5
  br label %11991

9991:                                             ; preds = %9953
  %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
  br label %9999

9995:                                             ; preds = %9954
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %621) #5
  br label %9999

9999:                                             ; preds = %9995, %9991
  call void @llvm.lifetime.end.p0(i64 24, ptr %621) #5
  br label %11991

10000:                                            ; preds = %9957
  %10001 = landingpad { ptr, i32 }
          cleanup
  %10002 = extractvalue { ptr, i32 } %10001, 0
  store ptr %10002, ptr %5, align 8
  %10003 = extractvalue { ptr, i32 } %10001, 1
  store i32 %10003, ptr %6, align 4
  br label %10008

10004:                                            ; preds = %9958
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %622) #5
  br label %10008

10008:                                            ; preds = %10004, %10000
  call void @llvm.lifetime.end.p0(i64 24, ptr %622) #5
  br label %11991

10009:                                            ; preds = %9964
  %10010 = landingpad { ptr, i32 }
          cleanup
  %10011 = extractvalue { ptr, i32 } %10010, 0
  store ptr %10011, ptr %5, align 8
  %10012 = extractvalue { ptr, i32 } %10010, 1
  store i32 %10012, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %623) #5
  br label %11991

10013:                                            ; preds = %9972
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10014 unwind label %1024

10014:                                            ; preds = %10013
  call void @llvm.lifetime.start.p0(i64 1, ptr %624) #5
  store i8 0, ptr %624, align 1, !tbaa !9
  %10015 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10016 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10015, ptr noundef nonnull align 1 dereferenceable(1) %624)
          to label %10017 unwind label %10050

10017:                                            ; preds = %10014
  call void @llvm.lifetime.end.p0(i64 1, ptr %624) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10018 unwind label %1024

10018:                                            ; preds = %10017
  call void @llvm.lifetime.start.p0(i64 24, ptr %625) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %625, i32 noundef 20)
          to label %10019 unwind label %10054

10019:                                            ; preds = %10018
  %10020 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %10021 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10020, ptr noundef nonnull align 8 dereferenceable(24) %625)
          to label %10022 unwind label %10058

10022:                                            ; preds = %10019
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %625) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %625) #5
  %10023 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %10024 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10023, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %10025 unwind label %1024

10025:                                            ; preds = %10022
  call void @llvm.lifetime.start.p0(i64 24, ptr %626) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %626, i32 noundef 4)
          to label %10026 unwind label %10063

10026:                                            ; preds = %10025
  %10027 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %10028 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10027, ptr noundef nonnull align 8 dereferenceable(24) %626)
          to label %10029 unwind label %10067

10029:                                            ; preds = %10026
  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
  call void @llvm.lifetime.start.p0(i64 24, ptr %627) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %627, i32 noundef 3)
          to label %10030 unwind label %10072

10030:                                            ; preds = %10029
  %10031 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %10032 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10031, ptr noundef nonnull align 8 dereferenceable(24) %627)
          to label %10033 unwind label %10076

10033:                                            ; preds = %10030
  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
  %10034 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %10035 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10034, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10036 unwind label %1024

10036:                                            ; preds = %10033
  call void @llvm.lifetime.start.p0(i64 1, ptr %628) #5
  store i8 1, ptr %628, align 1, !tbaa !9
  %10037 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10038 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10037, ptr noundef nonnull align 1 dereferenceable(1) %628)
          to label %10039 unwind label %10081

10039:                                            ; preds = %10036
  call void @llvm.lifetime.end.p0(i64 1, ptr %628) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10040 unwind label %1024

10040:                                            ; preds = %10039
  br label %10041

10041:                                            ; preds = %10049, %10040
  %10042 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %10043 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10042)
          to label %10044 unwind label %1024

10044:                                            ; preds = %10041
  %10045 = load i8, ptr %10043, align 1, !tbaa !9, !range !11, !noundef !12
  %10046 = trunc i8 %10045 to i1
  %10047 = xor i1 %10046, true
  br i1 %10047, label %10048, label %10085

10048:                                            ; preds = %10044
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10049 unwind label %1024

10049:                                            ; preds = %10048
  br label %10041, !llvm.loop !133

10050:                                            ; preds = %10014
  %10051 = landingpad { ptr, i32 }
          cleanup
  %10052 = extractvalue { ptr, i32 } %10051, 0
  store ptr %10052, ptr %5, align 8
  %10053 = extractvalue { ptr, i32 } %10051, 1
  store i32 %10053, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %624) #5
  br label %11991

10054:                                            ; preds = %10018
  %10055 = landingpad { ptr, i32 }
          cleanup
  %10056 = extractvalue { ptr, i32 } %10055, 0
  store ptr %10056, ptr %5, align 8
  %10057 = extractvalue { ptr, i32 } %10055, 1
  store i32 %10057, ptr %6, align 4
  br label %10062

10058:                                            ; preds = %10019
  %10059 = landingpad { ptr, i32 }
          cleanup
  %10060 = extractvalue { ptr, i32 } %10059, 0
  store ptr %10060, ptr %5, align 8
  %10061 = extractvalue { ptr, i32 } %10059, 1
  store i32 %10061, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %625) #5
  br label %10062

10062:                                            ; preds = %10058, %10054
  call void @llvm.lifetime.end.p0(i64 24, ptr %625) #5
  br label %11991

10063:                                            ; preds = %10025
  %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
  br label %10071

10067:                                            ; preds = %10026
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %626) #5
  br label %10071

10071:                                            ; preds = %10067, %10063
  call void @llvm.lifetime.end.p0(i64 24, ptr %626) #5
  br label %11991

10072:                                            ; preds = %10029
  %10073 = landingpad { ptr, i32 }
          cleanup
  %10074 = extractvalue { ptr, i32 } %10073, 0
  store ptr %10074, ptr %5, align 8
  %10075 = extractvalue { ptr, i32 } %10073, 1
  store i32 %10075, ptr %6, align 4
  br label %10080

10076:                                            ; preds = %10030
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %627) #5
  br label %10080

10080:                                            ; preds = %10076, %10072
  call void @llvm.lifetime.end.p0(i64 24, ptr %627) #5
  br label %11991

10081:                                            ; preds = %10036
  %10082 = landingpad { ptr, i32 }
          cleanup
  %10083 = extractvalue { ptr, i32 } %10082, 0
  store ptr %10083, ptr %5, align 8
  %10084 = extractvalue { ptr, i32 } %10082, 1
  store i32 %10084, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %628) #5
  br label %11991

10085:                                            ; preds = %10044
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10086 unwind label %1024

10086:                                            ; preds = %10085
  call void @llvm.lifetime.start.p0(i64 1, ptr %629) #5
  store i8 0, ptr %629, align 1, !tbaa !9
  %10087 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10088 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10087, ptr noundef nonnull align 1 dereferenceable(1) %629)
          to label %10089 unwind label %10122

10089:                                            ; preds = %10086
  call void @llvm.lifetime.end.p0(i64 1, ptr %629) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10090 unwind label %1024

10090:                                            ; preds = %10089
  call void @llvm.lifetime.start.p0(i64 24, ptr %630) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %630, i32 noundef 272)
          to label %10091 unwind label %10126

10091:                                            ; preds = %10090
  %10092 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %10093 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10092, ptr noundef nonnull align 8 dereferenceable(24) %630)
          to label %10094 unwind label %10130

10094:                                            ; preds = %10091
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %630) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %630) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %631) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %632) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %632, i32 noundef 0)
          to label %10095 unwind label %10135

10095:                                            ; preds = %10094
  %10096 = 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) %632)
          to label %10097 unwind label %10139

10097:                                            ; preds = %10095
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %631, ptr noundef nonnull align 1 dereferenceable(1) %10096)
          to label %10098 unwind label %10139

10098:                                            ; preds = %10097
  %10099 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %10100 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10099, ptr noundef nonnull align 8 dereferenceable(24) %631)
          to label %10101 unwind label %10143

10101:                                            ; preds = %10098
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %631) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %632) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %632) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %631) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %633) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %633, i32 noundef 1)
          to label %10102 unwind label %10149

10102:                                            ; preds = %10101
  %10103 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %10104 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10103, ptr noundef nonnull align 8 dereferenceable(24) %633)
          to label %10105 unwind label %10153

10105:                                            ; preds = %10102
  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
  %10106 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %10107 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10106, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10108 unwind label %1024

10108:                                            ; preds = %10105
  call void @llvm.lifetime.start.p0(i64 1, ptr %634) #5
  store i8 1, ptr %634, align 1, !tbaa !9
  %10109 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10110 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10109, ptr noundef nonnull align 1 dereferenceable(1) %634)
          to label %10111 unwind label %10158

10111:                                            ; preds = %10108
  call void @llvm.lifetime.end.p0(i64 1, ptr %634) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10112 unwind label %1024

10112:                                            ; preds = %10111
  br label %10113

10113:                                            ; preds = %10121, %10112
  %10114 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %10115 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10114)
          to label %10116 unwind label %1024

10116:                                            ; preds = %10113
  %10117 = load i8, ptr %10115, align 1, !tbaa !9, !range !11, !noundef !12
  %10118 = trunc i8 %10117 to i1
  %10119 = xor i1 %10118, true
  br i1 %10119, label %10120, label %10162

10120:                                            ; preds = %10116
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10121 unwind label %1024

10121:                                            ; preds = %10120
  br label %10113, !llvm.loop !134

10122:                                            ; preds = %10086
  %10123 = landingpad { ptr, i32 }
          cleanup
  %10124 = extractvalue { ptr, i32 } %10123, 0
  store ptr %10124, ptr %5, align 8
  %10125 = extractvalue { ptr, i32 } %10123, 1
  store i32 %10125, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %629) #5
  br label %11991

10126:                                            ; preds = %10090
  %10127 = landingpad { ptr, i32 }
          cleanup
  %10128 = extractvalue { ptr, i32 } %10127, 0
  store ptr %10128, ptr %5, align 8
  %10129 = extractvalue { ptr, i32 } %10127, 1
  store i32 %10129, ptr %6, align 4
  br label %10134

10130:                                            ; preds = %10091
  %10131 = landingpad { ptr, i32 }
          cleanup
  %10132 = extractvalue { ptr, i32 } %10131, 0
  store ptr %10132, ptr %5, align 8
  %10133 = extractvalue { ptr, i32 } %10131, 1
  store i32 %10133, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %630) #5
  br label %10134

10134:                                            ; preds = %10130, %10126
  call void @llvm.lifetime.end.p0(i64 24, ptr %630) #5
  br label %11991

10135:                                            ; preds = %10094
  %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
  br label %10148

10139:                                            ; preds = %10097, %10095
  %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 = %10098
  %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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %632) #5
  br label %10148

10148:                                            ; preds = %10147, %10135
  call void @llvm.lifetime.end.p0(i64 24, ptr %632) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %631) #5
  br label %11991

10149:                                            ; preds = %10101
  %10150 = landingpad { ptr, i32 }
          cleanup
  %10151 = extractvalue { ptr, i32 } %10150, 0
  store ptr %10151, ptr %5, align 8
  %10152 = extractvalue { ptr, i32 } %10150, 1
  store i32 %10152, ptr %6, align 4
  br label %10157

10153:                                            ; preds = %10102
  %10154 = landingpad { ptr, i32 }
          cleanup
  %10155 = extractvalue { ptr, i32 } %10154, 0
  store ptr %10155, ptr %5, align 8
  %10156 = extractvalue { ptr, i32 } %10154, 1
  store i32 %10156, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %633) #5
  br label %10157

10157:                                            ; preds = %10153, %10149
  call void @llvm.lifetime.end.p0(i64 24, ptr %633) #5
  br label %11991

10158:                                            ; preds = %10108
  %10159 = landingpad { ptr, i32 }
          cleanup
  %10160 = extractvalue { ptr, i32 } %10159, 0
  store ptr %10160, ptr %5, align 8
  %10161 = extractvalue { ptr, i32 } %10159, 1
  store i32 %10161, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %634) #5
  br label %11991

10162:                                            ; preds = %10116
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10163 unwind label %1024

10163:                                            ; preds = %10162
  call void @llvm.lifetime.start.p0(i64 1, ptr %635) #5
  store i8 0, ptr %635, align 1, !tbaa !9
  %10164 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10165 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10164, ptr noundef nonnull align 1 dereferenceable(1) %635)
          to label %10166 unwind label %10201

10166:                                            ; preds = %10163
  call void @llvm.lifetime.end.p0(i64 1, ptr %635) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10167 unwind label %1024

10167:                                            ; preds = %10166
  %10168 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef -2)
          to label %10169 unwind label %1024

10169:                                            ; preds = %10167
  call void @llvm.lifetime.start.p0(i64 24, ptr %636) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %636, i32 noundef -8192)
          to label %10170 unwind label %10205

10170:                                            ; preds = %10169
  %10171 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %10172 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10171, ptr noundef nonnull align 8 dereferenceable(24) %636)
          to label %10173 unwind label %10209

10173:                                            ; preds = %10170
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %636) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %636) #5
  %10174 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %10175 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10174, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10176 unwind label %1024

10176:                                            ; preds = %10173
  call void @llvm.lifetime.start.p0(i64 1, ptr %637) #5
  store i8 1, ptr %637, align 1, !tbaa !9
  %10177 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %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) %637)
          to label %10179 unwind label %10214

10179:                                            ; preds = %10176
  call void @llvm.lifetime.end.p0(i64 1, ptr %637) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %638) #5
  store i8 1, ptr %638, align 1, !tbaa !9
  %10180 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %10181 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10180, ptr noundef nonnull align 1 dereferenceable(1) %638)
          to label %10182 unwind label %10218

10182:                                            ; preds = %10179
  call void @llvm.lifetime.end.p0(i64 1, ptr %638) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10183 unwind label %1024

10183:                                            ; preds = %10182
  br label %10184

10184:                                            ; preds = %10227, %10183
  br label %10185

10185:                                            ; preds = %10184
  %10186 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 4
  %10187 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %10186)
          to label %10188 unwind label %1024

10188:                                            ; preds = %10185
  %10189 = 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) %10187)
          to label %10190 unwind label %1024

10190:                                            ; preds = %10188
  call void @llvm.lifetime.start.p0(i64 1, ptr %639) #5
  store i8 0, ptr %639, align 1, !tbaa !9
  %10191 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %10192 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10191, ptr noundef nonnull align 1 dereferenceable(1) %639)
          to label %10193 unwind label %10222

10193:                                            ; preds = %10190
  call void @llvm.lifetime.end.p0(i64 1, ptr %639) #5
  %10194 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %10195 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %10194)
          to label %10196 unwind label %1024

10196:                                            ; preds = %10193
  %10197 = load i8, ptr %10195, align 1, !tbaa !9, !range !11, !noundef !12
  %10198 = trunc i8 %10197 to i1
  br i1 %10198, label %10199, label %10226

10199:                                            ; preds = %10196
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10200 unwind label %1024

10200:                                            ; preds = %10199
  br label %10228

10201:                                            ; preds = %10163
  %10202 = landingpad { ptr, i32 }
          cleanup
  %10203 = extractvalue { ptr, i32 } %10202, 0
  store ptr %10203, ptr %5, align 8
  %10204 = extractvalue { ptr, i32 } %10202, 1
  store i32 %10204, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %635) #5
  br label %11991

10205:                                            ; preds = %10169
  %10206 = landingpad { ptr, i32 }
          cleanup
  %10207 = extractvalue { ptr, i32 } %10206, 0
  store ptr %10207, ptr %5, align 8
  %10208 = extractvalue { ptr, i32 } %10206, 1
  store i32 %10208, ptr %6, align 4
  br label %10213

10209:                                            ; preds = %10170
  %10210 = landingpad { ptr, i32 }
          cleanup
  %10211 = extractvalue { ptr, i32 } %10210, 0
  store ptr %10211, ptr %5, align 8
  %10212 = extractvalue { ptr, i32 } %10210, 1
  store i32 %10212, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %636) #5
  br label %10213

10213:                                            ; preds = %10209, %10205
  call void @llvm.lifetime.end.p0(i64 24, ptr %636) #5
  br label %11991

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 %637) #5
  br label %11991

10218:                                            ; preds = %10179
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %638) #5
  br label %11991

10222:                                            ; preds = %10190
  %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 @llvm.lifetime.end.p0(i64 1, ptr %639) #5
  br label %11991

10226:                                            ; preds = %10196
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10227 unwind label %1024

10227:                                            ; preds = %10226
  br label %10184, !llvm.loop !135

10228:                                            ; preds = %10200
  %10229 = 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 %10230 unwind label %1024

10230:                                            ; preds = %10228
  %10231 = 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) %10229)
          to label %10232 unwind label %1024

10232:                                            ; preds = %10230
  call void @llvm.lifetime.start.p0(i64 24, ptr %640) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %641) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %641, i32 noundef 0)
          to label %10233 unwind label %10268

10233:                                            ; preds = %10232
  %10234 = 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) %641)
          to label %10235 unwind label %10272

10235:                                            ; preds = %10233
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %640, ptr noundef nonnull align 1 dereferenceable(1) %10234)
          to label %10236 unwind label %10272

10236:                                            ; preds = %10235
  %10237 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %10238 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10237, ptr noundef nonnull align 8 dereferenceable(24) %640)
          to label %10239 unwind label %10276

10239:                                            ; preds = %10236
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %640) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %641) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %641) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %640) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %642) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %643) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %643, i32 noundef 0)
          to label %10240 unwind label %10282

10240:                                            ; preds = %10239
  %10241 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %643, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %10242 unwind label %10286

10242:                                            ; preds = %10240
  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) %10241)
          to label %10243 unwind label %10286

10243:                                            ; preds = %10242
  %10244 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %10245 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10244, ptr noundef nonnull align 8 dereferenceable(24) %642)
          to label %10246 unwind label %10290

10246:                                            ; preds = %10243
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %642) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %643) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %643) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %642) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %644) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %644, i32 noundef 22)
          to label %10247 unwind label %10296

10247:                                            ; preds = %10246
  %10248 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %10249 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10248, ptr noundef nonnull align 8 dereferenceable(24) %644)
          to label %10250 unwind label %10300

10250:                                            ; preds = %10247
  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.start.p0(i64 24, ptr %645) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %645, i32 noundef -3)
          to label %10251 unwind label %10305

10251:                                            ; preds = %10250
  %10252 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %10253 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10252, ptr noundef nonnull align 8 dereferenceable(24) %645)
          to label %10254 unwind label %10309

10254:                                            ; preds = %10251
  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 1, ptr %646) #5
  store i8 1, ptr %646, align 1, !tbaa !9
  %10255 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10256 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10255, ptr noundef nonnull align 1 dereferenceable(1) %646)
          to label %10257 unwind label %10314

10257:                                            ; preds = %10254
  call void @llvm.lifetime.end.p0(i64 1, ptr %646) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10258 unwind label %1024

10258:                                            ; preds = %10257
  br label %10259

10259:                                            ; preds = %10267, %10258
  %10260 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %10261 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10260)
          to label %10262 unwind label %1024

10262:                                            ; preds = %10259
  %10263 = load i8, ptr %10261, align 1, !tbaa !9, !range !11, !noundef !12
  %10264 = trunc i8 %10263 to i1
  %10265 = xor i1 %10264, true
  br i1 %10265, label %10266, label %10318

10266:                                            ; preds = %10262
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10267 unwind label %1024

10267:                                            ; preds = %10266
  br label %10259, !llvm.loop !136

10268:                                            ; preds = %10232
  %10269 = landingpad { ptr, i32 }
          cleanup
  %10270 = extractvalue { ptr, i32 } %10269, 0
  store ptr %10270, ptr %5, align 8
  %10271 = extractvalue { ptr, i32 } %10269, 1
  store i32 %10271, ptr %6, align 4
  br label %10281

10272:                                            ; preds = %10235, %10233
  %10273 = landingpad { ptr, i32 }
          cleanup
  %10274 = extractvalue { ptr, i32 } %10273, 0
  store ptr %10274, ptr %5, align 8
  %10275 = extractvalue { ptr, i32 } %10273, 1
  store i32 %10275, ptr %6, align 4
  br label %10280

10276:                                            ; preds = %10236
  %10277 = landingpad { ptr, i32 }
          cleanup
  %10278 = extractvalue { ptr, i32 } %10277, 0
  store ptr %10278, ptr %5, align 8
  %10279 = extractvalue { ptr, i32 } %10277, 1
  store i32 %10279, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %640) #5
  br label %10280

10280:                                            ; preds = %10276, %10272
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %641) #5
  br label %10281

10281:                                            ; preds = %10280, %10268
  call void @llvm.lifetime.end.p0(i64 24, ptr %641) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %640) #5
  br label %11991

10282:                                            ; preds = %10239
  %10283 = landingpad { ptr, i32 }
          cleanup
  %10284 = extractvalue { ptr, i32 } %10283, 0
  store ptr %10284, ptr %5, align 8
  %10285 = extractvalue { ptr, i32 } %10283, 1
  store i32 %10285, ptr %6, align 4
  br label %10295

10286:                                            ; preds = %10242, %10240
  %10287 = landingpad { ptr, i32 }
          cleanup
  %10288 = extractvalue { ptr, i32 } %10287, 0
  store ptr %10288, ptr %5, align 8
  %10289 = extractvalue { ptr, i32 } %10287, 1
  store i32 %10289, ptr %6, align 4
  br label %10294

10290:                                            ; preds = %10243
  %10291 = landingpad { ptr, i32 }
          cleanup
  %10292 = extractvalue { ptr, i32 } %10291, 0
  store ptr %10292, ptr %5, align 8
  %10293 = extractvalue { ptr, i32 } %10291, 1
  store i32 %10293, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %642) #5
  br label %10294

10294:                                            ; preds = %10290, %10286
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %643) #5
  br label %10295

10295:                                            ; preds = %10294, %10282
  call void @llvm.lifetime.end.p0(i64 24, ptr %643) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %642) #5
  br label %11991

10296:                                            ; preds = %10246
  %10297 = landingpad { ptr, i32 }
          cleanup
  %10298 = extractvalue { ptr, i32 } %10297, 0
  store ptr %10298, ptr %5, align 8
  %10299 = extractvalue { ptr, i32 } %10297, 1
  store i32 %10299, ptr %6, align 4
  br label %10304

10300:                                            ; preds = %10247
  %10301 = landingpad { ptr, i32 }
          cleanup
  %10302 = extractvalue { ptr, i32 } %10301, 0
  store ptr %10302, ptr %5, align 8
  %10303 = extractvalue { ptr, i32 } %10301, 1
  store i32 %10303, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %644) #5
  br label %10304

10304:                                            ; preds = %10300, %10296
  call void @llvm.lifetime.end.p0(i64 24, ptr %644) #5
  br label %11991

10305:                                            ; preds = %10250
  %10306 = landingpad { ptr, i32 }
          cleanup
  %10307 = extractvalue { ptr, i32 } %10306, 0
  store ptr %10307, ptr %5, align 8
  %10308 = extractvalue { ptr, i32 } %10306, 1
  store i32 %10308, ptr %6, align 4
  br label %10313

10309:                                            ; preds = %10251
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %645) #5
  br label %10313

10313:                                            ; preds = %10309, %10305
  call void @llvm.lifetime.end.p0(i64 24, ptr %645) #5
  br label %11991

10314:                                            ; preds = %10254
  %10315 = landingpad { ptr, i32 }
          cleanup
  %10316 = extractvalue { ptr, i32 } %10315, 0
  store ptr %10316, ptr %5, align 8
  %10317 = extractvalue { ptr, i32 } %10315, 1
  store i32 %10317, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %646) #5
  br label %11991

10318:                                            ; preds = %10262
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10319 unwind label %1024

10319:                                            ; preds = %10318
  call void @llvm.lifetime.start.p0(i64 1, ptr %647) #5
  store i8 0, ptr %647, align 1, !tbaa !9
  %10320 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10321 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10320, ptr noundef nonnull align 1 dereferenceable(1) %647)
          to label %10322 unwind label %10358

10322:                                            ; preds = %10319
  call void @llvm.lifetime.end.p0(i64 1, ptr %647) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10323 unwind label %1024

10323:                                            ; preds = %10322
  call void @llvm.lifetime.start.p0(i64 24, ptr %648) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %649) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %649, i32 noundef 1)
          to label %10324 unwind label %10362

10324:                                            ; preds = %10323
  %10325 = 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) %649)
          to label %10326 unwind label %10366

10326:                                            ; preds = %10324
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %648, ptr noundef nonnull align 1 dereferenceable(1) %10325)
          to label %10327 unwind label %10366

10327:                                            ; preds = %10326
  %10328 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %10329 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10328, ptr noundef nonnull align 8 dereferenceable(24) %648)
          to label %10330 unwind label %10370

10330:                                            ; preds = %10327
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %648) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %649) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %649) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %648) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %650) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %651) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %651, i32 noundef 0)
          to label %10331 unwind label %10376

10331:                                            ; preds = %10330
  %10332 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %651, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %10333 unwind label %10380

10333:                                            ; preds = %10331
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %650, ptr noundef nonnull align 1 dereferenceable(1) %10332)
          to label %10334 unwind label %10380

10334:                                            ; preds = %10333
  %10335 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %10336 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10335, ptr noundef nonnull align 8 dereferenceable(24) %650)
          to label %10337 unwind label %10384

10337:                                            ; preds = %10334
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %650) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %651) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %651) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %650) #5
  %10338 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %10339 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10338, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %10340 unwind label %1024

10340:                                            ; preds = %10337
  call void @llvm.lifetime.start.p0(i64 24, ptr %652) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %652, i32 noundef -2)
          to label %10341 unwind label %10390

10341:                                            ; preds = %10340
  %10342 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %10343 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10342, ptr noundef nonnull align 8 dereferenceable(24) %652)
          to label %10344 unwind label %10394

10344:                                            ; preds = %10341
  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.start.p0(i64 1, ptr %653) #5
  store i8 1, ptr %653, align 1, !tbaa !9
  %10345 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10346 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10345, ptr noundef nonnull align 1 dereferenceable(1) %653)
          to label %10347 unwind label %10399

10347:                                            ; preds = %10344
  call void @llvm.lifetime.end.p0(i64 1, ptr %653) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10348 unwind label %1024

10348:                                            ; preds = %10347
  br label %10349

10349:                                            ; preds = %10357, %10348
  %10350 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %10351 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10350)
          to label %10352 unwind label %1024

10352:                                            ; preds = %10349
  %10353 = load i8, ptr %10351, align 1, !tbaa !9, !range !11, !noundef !12
  %10354 = trunc i8 %10353 to i1
  %10355 = xor i1 %10354, true
  br i1 %10355, label %10356, label %10403

10356:                                            ; preds = %10352
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10357 unwind label %1024

10357:                                            ; preds = %10356
  br label %10349, !llvm.loop !137

10358:                                            ; preds = %10319
  %10359 = landingpad { ptr, i32 }
          cleanup
  %10360 = extractvalue { ptr, i32 } %10359, 0
  store ptr %10360, ptr %5, align 8
  %10361 = extractvalue { ptr, i32 } %10359, 1
  store i32 %10361, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %647) #5
  br label %11991

10362:                                            ; preds = %10323
  %10363 = landingpad { ptr, i32 }
          cleanup
  %10364 = extractvalue { ptr, i32 } %10363, 0
  store ptr %10364, ptr %5, align 8
  %10365 = extractvalue { ptr, i32 } %10363, 1
  store i32 %10365, ptr %6, align 4
  br label %10375

10366:                                            ; preds = %10326, %10324
  %10367 = landingpad { ptr, i32 }
          cleanup
  %10368 = extractvalue { ptr, i32 } %10367, 0
  store ptr %10368, ptr %5, align 8
  %10369 = extractvalue { ptr, i32 } %10367, 1
  store i32 %10369, ptr %6, align 4
  br label %10374

10370:                                            ; preds = %10327
  %10371 = landingpad { ptr, i32 }
          cleanup
  %10372 = extractvalue { ptr, i32 } %10371, 0
  store ptr %10372, ptr %5, align 8
  %10373 = extractvalue { ptr, i32 } %10371, 1
  store i32 %10373, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %648) #5
  br label %10374

10374:                                            ; preds = %10370, %10366
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %649) #5
  br label %10375

10375:                                            ; preds = %10374, %10362
  call void @llvm.lifetime.end.p0(i64 24, ptr %649) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %648) #5
  br label %11991

10376:                                            ; preds = %10330
  %10377 = landingpad { ptr, i32 }
          cleanup
  %10378 = extractvalue { ptr, i32 } %10377, 0
  store ptr %10378, ptr %5, align 8
  %10379 = extractvalue { ptr, i32 } %10377, 1
  store i32 %10379, ptr %6, align 4
  br label %10389

10380:                                            ; preds = %10333, %10331
  %10381 = landingpad { ptr, i32 }
          cleanup
  %10382 = extractvalue { ptr, i32 } %10381, 0
  store ptr %10382, ptr %5, align 8
  %10383 = extractvalue { ptr, i32 } %10381, 1
  store i32 %10383, ptr %6, align 4
  br label %10388

10384:                                            ; preds = %10334
  %10385 = landingpad { ptr, i32 }
          cleanup
  %10386 = extractvalue { ptr, i32 } %10385, 0
  store ptr %10386, ptr %5, align 8
  %10387 = extractvalue { ptr, i32 } %10385, 1
  store i32 %10387, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %650) #5
  br label %10388

10388:                                            ; preds = %10384, %10380
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %651) #5
  br label %10389

10389:                                            ; preds = %10388, %10376
  call void @llvm.lifetime.end.p0(i64 24, ptr %651) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %650) #5
  br label %11991

10390:                                            ; preds = %10340
  %10391 = landingpad { ptr, i32 }
          cleanup
  %10392 = extractvalue { ptr, i32 } %10391, 0
  store ptr %10392, ptr %5, align 8
  %10393 = extractvalue { ptr, i32 } %10391, 1
  store i32 %10393, ptr %6, align 4
  br label %10398

10394:                                            ; preds = %10341
  %10395 = landingpad { ptr, i32 }
          cleanup
  %10396 = extractvalue { ptr, i32 } %10395, 0
  store ptr %10396, ptr %5, align 8
  %10397 = extractvalue { ptr, i32 } %10395, 1
  store i32 %10397, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %652) #5
  br label %10398

10398:                                            ; preds = %10394, %10390
  call void @llvm.lifetime.end.p0(i64 24, ptr %652) #5
  br label %11991

10399:                                            ; preds = %10344
  %10400 = landingpad { ptr, i32 }
          cleanup
  %10401 = extractvalue { ptr, i32 } %10400, 0
  store ptr %10401, ptr %5, align 8
  %10402 = extractvalue { ptr, i32 } %10400, 1
  store i32 %10402, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %653) #5
  br label %11991

10403:                                            ; preds = %10352
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10404 unwind label %1024

10404:                                            ; preds = %10403
  call void @llvm.lifetime.start.p0(i64 1, ptr %654) #5
  store i8 0, ptr %654, align 1, !tbaa !9
  %10405 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10406 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10405, ptr noundef nonnull align 1 dereferenceable(1) %654)
          to label %10407 unwind label %10441

10407:                                            ; preds = %10404
  call void @llvm.lifetime.end.p0(i64 1, ptr %654) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10408 unwind label %1024

10408:                                            ; preds = %10407
  call void @llvm.lifetime.start.p0(i64 24, ptr %655) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %655, i32 noundef 10)
          to label %10409 unwind label %10445

10409:                                            ; preds = %10408
  %10410 = 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) %655)
          to label %10411 unwind label %10449

10411:                                            ; preds = %10409
  %10412 = 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) %10410)
          to label %10413 unwind label %10449

10413:                                            ; preds = %10411
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %655) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %655) #5
  %10414 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %10415 unwind label %1024

10415:                                            ; preds = %10413
  %10416 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %10417 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10416, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %10418 unwind label %1024

10418:                                            ; preds = %10415
  %10419 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %10420 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10419, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %10421 unwind label %1024

10421:                                            ; preds = %10418
  call void @llvm.lifetime.start.p0(i64 1, ptr %656) #5
  store i8 0, ptr %656, align 1, !tbaa !9
  %10422 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %10423 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10422, ptr noundef nonnull align 1 dereferenceable(1) %656)
          to label %10424 unwind label %10454

10424:                                            ; preds = %10421
  call void @llvm.lifetime.end.p0(i64 1, ptr %656) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %657) #5
  store i8 1, ptr %657, align 1, !tbaa !9
  %10425 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %10426 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10425, ptr noundef nonnull align 1 dereferenceable(1) %657)
          to label %10427 unwind label %10458

10427:                                            ; preds = %10424
  call void @llvm.lifetime.end.p0(i64 1, ptr %657) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10428 unwind label %1024

10428:                                            ; preds = %10427
  br label %10429

10429:                                            ; preds = %10467, %10428
  br label %10430

10430:                                            ; preds = %10429
  call void @llvm.lifetime.start.p0(i64 1, ptr %658) #5
  store i8 0, ptr %658, align 1, !tbaa !9
  %10431 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %10432 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10431, ptr noundef nonnull align 1 dereferenceable(1) %658)
          to label %10433 unwind label %10462

10433:                                            ; preds = %10430
  call void @llvm.lifetime.end.p0(i64 1, ptr %658) #5
  %10434 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %10435 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %10434)
          to label %10436 unwind label %1024

10436:                                            ; preds = %10433
  %10437 = load i8, ptr %10435, align 1, !tbaa !9, !range !11, !noundef !12
  %10438 = trunc i8 %10437 to i1
  br i1 %10438, label %10439, label %10466

10439:                                            ; preds = %10436
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10440 unwind label %1024

10440:                                            ; preds = %10439
  br label %10468

10441:                                            ; preds = %10404
  %10442 = landingpad { ptr, i32 }
          cleanup
  %10443 = extractvalue { ptr, i32 } %10442, 0
  store ptr %10443, ptr %5, align 8
  %10444 = extractvalue { ptr, i32 } %10442, 1
  store i32 %10444, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %654) #5
  br label %11991

10445:                                            ; preds = %10408
  %10446 = landingpad { ptr, i32 }
          cleanup
  %10447 = extractvalue { ptr, i32 } %10446, 0
  store ptr %10447, ptr %5, align 8
  %10448 = extractvalue { ptr, i32 } %10446, 1
  store i32 %10448, ptr %6, align 4
  br label %10453

10449:                                            ; preds = %10411, %10409
  %10450 = landingpad { ptr, i32 }
          cleanup
  %10451 = extractvalue { ptr, i32 } %10450, 0
  store ptr %10451, ptr %5, align 8
  %10452 = extractvalue { ptr, i32 } %10450, 1
  store i32 %10452, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %655) #5
  br label %10453

10453:                                            ; preds = %10449, %10445
  call void @llvm.lifetime.end.p0(i64 24, ptr %655) #5
  br label %11991

10454:                                            ; preds = %10421
  %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 %656) #5
  br label %11991

10458:                                            ; preds = %10424
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %657) #5
  br label %11991

10462:                                            ; preds = %10430
  %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 @llvm.lifetime.end.p0(i64 1, ptr %658) #5
  br label %11991

10466:                                            ; preds = %10436
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10467 unwind label %1024

10467:                                            ; preds = %10466
  br label %10429, !llvm.loop !138

10468:                                            ; preds = %10440
  call void @llvm.lifetime.start.p0(i64 24, ptr %659) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %659, i32 noundef 16)
          to label %10469 unwind label %10504

10469:                                            ; preds = %10468
  %10470 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %10471 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10470, ptr noundef nonnull align 8 dereferenceable(24) %659)
          to label %10472 unwind label %10508

10472:                                            ; preds = %10469
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %659) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %659) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %660) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %661) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %661, i32 noundef 24)
          to label %10473 unwind label %10513

10473:                                            ; preds = %10472
  %10474 = 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) %661)
          to label %10475 unwind label %10517

10475:                                            ; preds = %10473
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %660, ptr noundef nonnull align 1 dereferenceable(1) %10474)
          to label %10476 unwind label %10517

10476:                                            ; preds = %10475
  %10477 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %10478 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10477, ptr noundef nonnull align 8 dereferenceable(24) %660)
          to label %10479 unwind label %10521

10479:                                            ; preds = %10476
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %660) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %661) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %661) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %660) #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 3)
          to label %10480 unwind label %10527

10480:                                            ; preds = %10479
  %10481 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %10482 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10481, ptr noundef nonnull align 8 dereferenceable(24) %662)
          to label %10483 unwind label %10531

10483:                                            ; preds = %10480
  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.start.p0(i64 24, ptr %663) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %663, i32 noundef 3)
          to label %10484 unwind label %10536

10484:                                            ; preds = %10483
  %10485 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %10486 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10485, ptr noundef nonnull align 8 dereferenceable(24) %663)
          to label %10487 unwind label %10540

10487:                                            ; preds = %10484
  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
  %10488 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %10489 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10488, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10490 unwind label %1024

10490:                                            ; preds = %10487
  call void @llvm.lifetime.start.p0(i64 1, ptr %664) #5
  store i8 1, ptr %664, align 1, !tbaa !9
  %10491 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10492 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10491, ptr noundef nonnull align 1 dereferenceable(1) %664)
          to label %10493 unwind label %10545

10493:                                            ; preds = %10490
  call void @llvm.lifetime.end.p0(i64 1, ptr %664) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10494 unwind label %1024

10494:                                            ; preds = %10493
  br label %10495

10495:                                            ; preds = %10503, %10494
  %10496 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %10497 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10496)
          to label %10498 unwind label %1024

10498:                                            ; preds = %10495
  %10499 = load i8, ptr %10497, align 1, !tbaa !9, !range !11, !noundef !12
  %10500 = trunc i8 %10499 to i1
  %10501 = xor i1 %10500, true
  br i1 %10501, label %10502, label %10549

10502:                                            ; preds = %10498
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10503 unwind label %1024

10503:                                            ; preds = %10502
  br label %10495, !llvm.loop !139

10504:                                            ; preds = %10468
  %10505 = landingpad { ptr, i32 }
          cleanup
  %10506 = extractvalue { ptr, i32 } %10505, 0
  store ptr %10506, ptr %5, align 8
  %10507 = extractvalue { ptr, i32 } %10505, 1
  store i32 %10507, ptr %6, align 4
  br label %10512

10508:                                            ; preds = %10469
  %10509 = landingpad { ptr, i32 }
          cleanup
  %10510 = extractvalue { ptr, i32 } %10509, 0
  store ptr %10510, ptr %5, align 8
  %10511 = extractvalue { ptr, i32 } %10509, 1
  store i32 %10511, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %659) #5
  br label %10512

10512:                                            ; preds = %10508, %10504
  call void @llvm.lifetime.end.p0(i64 24, ptr %659) #5
  br label %11991

10513:                                            ; preds = %10472
  %10514 = landingpad { ptr, i32 }
          cleanup
  %10515 = extractvalue { ptr, i32 } %10514, 0
  store ptr %10515, ptr %5, align 8
  %10516 = extractvalue { ptr, i32 } %10514, 1
  store i32 %10516, ptr %6, align 4
  br label %10526

10517:                                            ; preds = %10475, %10473
  %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 = %10476
  %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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %661) #5
  br label %10526

10526:                                            ; preds = %10525, %10513
  call void @llvm.lifetime.end.p0(i64 24, ptr %661) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %660) #5
  br label %11991

10527:                                            ; preds = %10479
  %10528 = landingpad { ptr, i32 }
          cleanup
  %10529 = extractvalue { ptr, i32 } %10528, 0
  store ptr %10529, ptr %5, align 8
  %10530 = extractvalue { ptr, i32 } %10528, 1
  store i32 %10530, ptr %6, align 4
  br label %10535

10531:                                            ; preds = %10480
  %10532 = landingpad { ptr, i32 }
          cleanup
  %10533 = extractvalue { ptr, i32 } %10532, 0
  store ptr %10533, ptr %5, align 8
  %10534 = extractvalue { ptr, i32 } %10532, 1
  store i32 %10534, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %662) #5
  br label %10535

10535:                                            ; preds = %10531, %10527
  call void @llvm.lifetime.end.p0(i64 24, ptr %662) #5
  br label %11991

10536:                                            ; preds = %10483
  %10537 = landingpad { ptr, i32 }
          cleanup
  %10538 = extractvalue { ptr, i32 } %10537, 0
  store ptr %10538, ptr %5, align 8
  %10539 = extractvalue { ptr, i32 } %10537, 1
  store i32 %10539, ptr %6, align 4
  br label %10544

10540:                                            ; preds = %10484
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %663) #5
  br label %10544

10544:                                            ; preds = %10540, %10536
  call void @llvm.lifetime.end.p0(i64 24, ptr %663) #5
  br label %11991

10545:                                            ; preds = %10490
  %10546 = landingpad { ptr, i32 }
          cleanup
  %10547 = extractvalue { ptr, i32 } %10546, 0
  store ptr %10547, ptr %5, align 8
  %10548 = extractvalue { ptr, i32 } %10546, 1
  store i32 %10548, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %664) #5
  br label %11991

10549:                                            ; preds = %10498
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10550 unwind label %1024

10550:                                            ; preds = %10549
  call void @llvm.lifetime.start.p0(i64 1, ptr %665) #5
  store i8 0, ptr %665, align 1, !tbaa !9
  %10551 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10552 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10551, ptr noundef nonnull align 1 dereferenceable(1) %665)
          to label %10553 unwind label %10590

10553:                                            ; preds = %10550
  call void @llvm.lifetime.end.p0(i64 1, ptr %665) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10554 unwind label %1024

10554:                                            ; preds = %10553
  call void @llvm.lifetime.start.p0(i64 24, ptr %666) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %666, i32 noundef 96)
          to label %10555 unwind label %10594

10555:                                            ; preds = %10554
  %10556 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %10557 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10556, ptr noundef nonnull align 8 dereferenceable(24) %666)
          to label %10558 unwind label %10598

10558:                                            ; preds = %10555
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %666) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %666) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %667) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %668) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %668, i32 noundef 27)
          to label %10559 unwind label %10603

10559:                                            ; preds = %10558
  %10560 = 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) %668)
          to label %10561 unwind label %10607

10561:                                            ; preds = %10559
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %667, ptr noundef nonnull align 1 dereferenceable(1) %10560)
          to label %10562 unwind label %10607

10562:                                            ; preds = %10561
  %10563 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %10564 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10563, ptr noundef nonnull align 8 dereferenceable(24) %667)
          to label %10565 unwind label %10611

10565:                                            ; preds = %10562
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %667) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %668) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %668) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %667) #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 32)
          to label %10566 unwind label %10617

10566:                                            ; preds = %10565
  %10567 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %10568 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10567, ptr noundef nonnull align 8 dereferenceable(24) %669)
          to label %10569 unwind label %10621

10569:                                            ; preds = %10566
  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.start.p0(i64 24, ptr %670) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %670, i32 noundef 3)
          to label %10570 unwind label %10626

10570:                                            ; preds = %10569
  %10571 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %10572 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10571, ptr noundef nonnull align 8 dereferenceable(24) %670)
          to label %10573 unwind label %10630

10573:                                            ; preds = %10570
  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
  %10574 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %10575 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10574, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10576 unwind label %1024

10576:                                            ; preds = %10573
  call void @llvm.lifetime.start.p0(i64 1, ptr %671) #5
  store i8 1, ptr %671, align 1, !tbaa !9
  %10577 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10578 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10577, ptr noundef nonnull align 1 dereferenceable(1) %671)
          to label %10579 unwind label %10635

10579:                                            ; preds = %10576
  call void @llvm.lifetime.end.p0(i64 1, ptr %671) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10580 unwind label %1024

10580:                                            ; preds = %10579
  br label %10581

10581:                                            ; preds = %10589, %10580
  %10582 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %10583 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10582)
          to label %10584 unwind label %1024

10584:                                            ; preds = %10581
  %10585 = load i8, ptr %10583, align 1, !tbaa !9, !range !11, !noundef !12
  %10586 = trunc i8 %10585 to i1
  %10587 = xor i1 %10586, true
  br i1 %10587, label %10588, label %10639

10588:                                            ; preds = %10584
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10589 unwind label %1024

10589:                                            ; preds = %10588
  br label %10581, !llvm.loop !140

10590:                                            ; preds = %10550
  %10591 = landingpad { ptr, i32 }
          cleanup
  %10592 = extractvalue { ptr, i32 } %10591, 0
  store ptr %10592, ptr %5, align 8
  %10593 = extractvalue { ptr, i32 } %10591, 1
  store i32 %10593, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %665) #5
  br label %11991

10594:                                            ; preds = %10554
  %10595 = landingpad { ptr, i32 }
          cleanup
  %10596 = extractvalue { ptr, i32 } %10595, 0
  store ptr %10596, ptr %5, align 8
  %10597 = extractvalue { ptr, i32 } %10595, 1
  store i32 %10597, ptr %6, align 4
  br label %10602

10598:                                            ; preds = %10555
  %10599 = landingpad { ptr, i32 }
          cleanup
  %10600 = extractvalue { ptr, i32 } %10599, 0
  store ptr %10600, ptr %5, align 8
  %10601 = extractvalue { ptr, i32 } %10599, 1
  store i32 %10601, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %666) #5
  br label %10602

10602:                                            ; preds = %10598, %10594
  call void @llvm.lifetime.end.p0(i64 24, ptr %666) #5
  br label %11991

10603:                                            ; preds = %10558
  %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
  br label %10616

10607:                                            ; preds = %10561, %10559
  %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 = %10562
  %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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %668) #5
  br label %10616

10616:                                            ; preds = %10615, %10603
  call void @llvm.lifetime.end.p0(i64 24, ptr %668) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %667) #5
  br label %11991

10617:                                            ; preds = %10565
  %10618 = landingpad { ptr, i32 }
          cleanup
  %10619 = extractvalue { ptr, i32 } %10618, 0
  store ptr %10619, ptr %5, align 8
  %10620 = extractvalue { ptr, i32 } %10618, 1
  store i32 %10620, ptr %6, align 4
  br label %10625

10621:                                            ; preds = %10566
  %10622 = landingpad { ptr, i32 }
          cleanup
  %10623 = extractvalue { ptr, i32 } %10622, 0
  store ptr %10623, ptr %5, align 8
  %10624 = extractvalue { ptr, i32 } %10622, 1
  store i32 %10624, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %669) #5
  br label %10625

10625:                                            ; preds = %10621, %10617
  call void @llvm.lifetime.end.p0(i64 24, ptr %669) #5
  br label %11991

10626:                                            ; preds = %10569
  %10627 = landingpad { ptr, i32 }
          cleanup
  %10628 = extractvalue { ptr, i32 } %10627, 0
  store ptr %10628, ptr %5, align 8
  %10629 = extractvalue { ptr, i32 } %10627, 1
  store i32 %10629, ptr %6, align 4
  br label %10634

10630:                                            ; preds = %10570
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %670) #5
  br label %10634

10634:                                            ; preds = %10630, %10626
  call void @llvm.lifetime.end.p0(i64 24, ptr %670) #5
  br label %11991

10635:                                            ; preds = %10576
  %10636 = landingpad { ptr, i32 }
          cleanup
  %10637 = extractvalue { ptr, i32 } %10636, 0
  store ptr %10637, ptr %5, align 8
  %10638 = extractvalue { ptr, i32 } %10636, 1
  store i32 %10638, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %671) #5
  br label %11991

10639:                                            ; preds = %10584
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10640 unwind label %1024

10640:                                            ; preds = %10639
  call void @llvm.lifetime.start.p0(i64 1, ptr %672) #5
  store i8 0, ptr %672, align 1, !tbaa !9
  %10641 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10642 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10641, ptr noundef nonnull align 1 dereferenceable(1) %672)
          to label %10643 unwind label %10676

10643:                                            ; preds = %10640
  call void @llvm.lifetime.end.p0(i64 1, ptr %672) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10644 unwind label %1024

10644:                                            ; preds = %10643
  call void @llvm.lifetime.start.p0(i64 24, ptr %673) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %673, i32 noundef 160)
          to label %10645 unwind label %10680

10645:                                            ; preds = %10644
  %10646 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %10647 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10646, ptr noundef nonnull align 8 dereferenceable(24) %673)
          to label %10648 unwind label %10684

10648:                                            ; preds = %10645
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %673) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %673) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %674) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %675) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %675, i32 noundef 59)
          to label %10649 unwind label %10689

10649:                                            ; preds = %10648
  %10650 = 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) %675)
          to label %10651 unwind label %10693

10651:                                            ; preds = %10649
  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) %10650)
          to label %10652 unwind label %10693

10652:                                            ; preds = %10651
  %10653 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %10654 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10653, ptr noundef nonnull align 8 dereferenceable(24) %674)
          to label %10655 unwind label %10697

10655:                                            ; preds = %10652
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %674) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %675) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %675) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %674) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %676) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %676, i32 noundef 3)
          to label %10656 unwind label %10703

10656:                                            ; preds = %10655
  %10657 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %10658 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10657, ptr noundef nonnull align 8 dereferenceable(24) %676)
          to label %10659 unwind label %10707

10659:                                            ; preds = %10656
  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
  %10660 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %10661 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10660, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10662 unwind label %1024

10662:                                            ; preds = %10659
  call void @llvm.lifetime.start.p0(i64 1, ptr %677) #5
  store i8 1, ptr %677, align 1, !tbaa !9
  %10663 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10664 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10663, ptr noundef nonnull align 1 dereferenceable(1) %677)
          to label %10665 unwind label %10712

10665:                                            ; preds = %10662
  call void @llvm.lifetime.end.p0(i64 1, ptr %677) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10666 unwind label %1024

10666:                                            ; preds = %10665
  br label %10667

10667:                                            ; preds = %10675, %10666
  %10668 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %10669 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10668)
          to label %10670 unwind label %1024

10670:                                            ; preds = %10667
  %10671 = load i8, ptr %10669, align 1, !tbaa !9, !range !11, !noundef !12
  %10672 = trunc i8 %10671 to i1
  %10673 = xor i1 %10672, true
  br i1 %10673, label %10674, label %10716

10674:                                            ; preds = %10670
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10675 unwind label %1024

10675:                                            ; preds = %10674
  br label %10667, !llvm.loop !141

10676:                                            ; preds = %10640
  %10677 = landingpad { ptr, i32 }
          cleanup
  %10678 = extractvalue { ptr, i32 } %10677, 0
  store ptr %10678, ptr %5, align 8
  %10679 = extractvalue { ptr, i32 } %10677, 1
  store i32 %10679, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %672) #5
  br label %11991

10680:                                            ; preds = %10644
  %10681 = landingpad { ptr, i32 }
          cleanup
  %10682 = extractvalue { ptr, i32 } %10681, 0
  store ptr %10682, ptr %5, align 8
  %10683 = extractvalue { ptr, i32 } %10681, 1
  store i32 %10683, ptr %6, align 4
  br label %10688

10684:                                            ; preds = %10645
  %10685 = landingpad { ptr, i32 }
          cleanup
  %10686 = extractvalue { ptr, i32 } %10685, 0
  store ptr %10686, ptr %5, align 8
  %10687 = extractvalue { ptr, i32 } %10685, 1
  store i32 %10687, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %673) #5
  br label %10688

10688:                                            ; preds = %10684, %10680
  call void @llvm.lifetime.end.p0(i64 24, ptr %673) #5
  br label %11991

10689:                                            ; preds = %10648
  %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
  br label %10702

10693:                                            ; preds = %10651, %10649
  %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 = %10652
  %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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %675) #5
  br label %10702

10702:                                            ; preds = %10701, %10689
  call void @llvm.lifetime.end.p0(i64 24, ptr %675) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %674) #5
  br label %11991

10703:                                            ; preds = %10655
  %10704 = landingpad { ptr, i32 }
          cleanup
  %10705 = extractvalue { ptr, i32 } %10704, 0
  store ptr %10705, ptr %5, align 8
  %10706 = extractvalue { ptr, i32 } %10704, 1
  store i32 %10706, ptr %6, align 4
  br label %10711

10707:                                            ; preds = %10656
  %10708 = landingpad { ptr, i32 }
          cleanup
  %10709 = extractvalue { ptr, i32 } %10708, 0
  store ptr %10709, ptr %5, align 8
  %10710 = extractvalue { ptr, i32 } %10708, 1
  store i32 %10710, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %676) #5
  br label %10711

10711:                                            ; preds = %10707, %10703
  call void @llvm.lifetime.end.p0(i64 24, ptr %676) #5
  br label %11991

10712:                                            ; preds = %10662
  %10713 = landingpad { ptr, i32 }
          cleanup
  %10714 = extractvalue { ptr, i32 } %10713, 0
  store ptr %10714, ptr %5, align 8
  %10715 = extractvalue { ptr, i32 } %10713, 1
  store i32 %10715, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %677) #5
  br label %11991

10716:                                            ; preds = %10670
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10717 unwind label %1024

10717:                                            ; preds = %10716
  call void @llvm.lifetime.start.p0(i64 1, ptr %678) #5
  store i8 0, ptr %678, align 1, !tbaa !9
  %10718 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10719 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10718, ptr noundef nonnull align 1 dereferenceable(1) %678)
          to label %10720 unwind label %10759

10720:                                            ; preds = %10717
  call void @llvm.lifetime.end.p0(i64 1, ptr %678) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10721 unwind label %1024

10721:                                            ; preds = %10720
  call void @llvm.lifetime.start.p0(i64 24, ptr %679) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %679, i32 noundef 48)
          to label %10722 unwind label %10763

10722:                                            ; preds = %10721
  %10723 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %10724 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10723, ptr noundef nonnull align 8 dereferenceable(24) %679)
          to label %10725 unwind label %10767

10725:                                            ; preds = %10722
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %679) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %679) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %680) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %681) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %681, i32 noundef -37)
          to label %10726 unwind label %10772

10726:                                            ; preds = %10725
  %10727 = 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) %681)
          to label %10728 unwind label %10776

10728:                                            ; preds = %10726
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %680, ptr noundef nonnull align 1 dereferenceable(1) %10727)
          to label %10729 unwind label %10776

10729:                                            ; preds = %10728
  %10730 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %10731 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10730, ptr noundef nonnull align 8 dereferenceable(24) %680)
          to label %10732 unwind label %10780

10732:                                            ; preds = %10729
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %680) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %681) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %681) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %680) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %682) #5
  %10733 = 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 %10734 unwind label %10786

10734:                                            ; preds = %10732
  invoke void @_ZN5sc_dt6sc_intILi7EEC2ERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %682, ptr noundef nonnull align 8 dereferenceable(28) %10733)
          to label %10735 unwind label %10786

10735:                                            ; preds = %10734
  %10736 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %10737 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10736, ptr noundef nonnull align 8 dereferenceable(24) %682)
          to label %10738 unwind label %10790

10738:                                            ; preds = %10735
  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.start.p0(i64 24, ptr %683) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %683, i32 noundef 3)
          to label %10739 unwind label %10795

10739:                                            ; preds = %10738
  %10740 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %10741 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10740, ptr noundef nonnull align 8 dereferenceable(24) %683)
          to label %10742 unwind label %10799

10742:                                            ; preds = %10739
  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
  %10743 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %10744 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10743, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10745 unwind label %1024

10745:                                            ; preds = %10742
  call void @llvm.lifetime.start.p0(i64 1, ptr %684) #5
  store i8 1, ptr %684, align 1, !tbaa !9
  %10746 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10747 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10746, ptr noundef nonnull align 1 dereferenceable(1) %684)
          to label %10748 unwind label %10804

10748:                                            ; preds = %10745
  call void @llvm.lifetime.end.p0(i64 1, ptr %684) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10749 unwind label %1024

10749:                                            ; preds = %10748
  br label %10750

10750:                                            ; preds = %10758, %10749
  %10751 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %10752 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10751)
          to label %10753 unwind label %1024

10753:                                            ; preds = %10750
  %10754 = load i8, ptr %10752, align 1, !tbaa !9, !range !11, !noundef !12
  %10755 = trunc i8 %10754 to i1
  %10756 = xor i1 %10755, true
  br i1 %10756, label %10757, label %10808

10757:                                            ; preds = %10753
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10758 unwind label %1024

10758:                                            ; preds = %10757
  br label %10750, !llvm.loop !142

10759:                                            ; preds = %10717
  %10760 = landingpad { ptr, i32 }
          cleanup
  %10761 = extractvalue { ptr, i32 } %10760, 0
  store ptr %10761, ptr %5, align 8
  %10762 = extractvalue { ptr, i32 } %10760, 1
  store i32 %10762, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %678) #5
  br label %11991

10763:                                            ; preds = %10721
  %10764 = landingpad { ptr, i32 }
          cleanup
  %10765 = extractvalue { ptr, i32 } %10764, 0
  store ptr %10765, ptr %5, align 8
  %10766 = extractvalue { ptr, i32 } %10764, 1
  store i32 %10766, ptr %6, align 4
  br label %10771

10767:                                            ; preds = %10722
  %10768 = landingpad { ptr, i32 }
          cleanup
  %10769 = extractvalue { ptr, i32 } %10768, 0
  store ptr %10769, ptr %5, align 8
  %10770 = extractvalue { ptr, i32 } %10768, 1
  store i32 %10770, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %679) #5
  br label %10771

10771:                                            ; preds = %10767, %10763
  call void @llvm.lifetime.end.p0(i64 24, ptr %679) #5
  br label %11991

10772:                                            ; preds = %10725
  %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
  br label %10785

10776:                                            ; preds = %10728, %10726
  %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 = %10729
  %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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %681) #5
  br label %10785

10785:                                            ; preds = %10784, %10772
  call void @llvm.lifetime.end.p0(i64 24, ptr %681) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %680) #5
  br label %11991

10786:                                            ; preds = %10734, %10732
  %10787 = landingpad { ptr, i32 }
          cleanup
  %10788 = extractvalue { ptr, i32 } %10787, 0
  store ptr %10788, ptr %5, align 8
  %10789 = extractvalue { ptr, i32 } %10787, 1
  store i32 %10789, ptr %6, align 4
  br label %10794

10790:                                            ; preds = %10735
  %10791 = landingpad { ptr, i32 }
          cleanup
  %10792 = extractvalue { ptr, i32 } %10791, 0
  store ptr %10792, ptr %5, align 8
  %10793 = extractvalue { ptr, i32 } %10791, 1
  store i32 %10793, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %682) #5
  br label %10794

10794:                                            ; preds = %10790, %10786
  call void @llvm.lifetime.end.p0(i64 24, ptr %682) #5
  br label %11991

10795:                                            ; preds = %10738
  %10796 = landingpad { ptr, i32 }
          cleanup
  %10797 = extractvalue { ptr, i32 } %10796, 0
  store ptr %10797, ptr %5, align 8
  %10798 = extractvalue { ptr, i32 } %10796, 1
  store i32 %10798, ptr %6, align 4
  br label %10803

10799:                                            ; preds = %10739
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %683) #5
  br label %10803

10803:                                            ; preds = %10799, %10795
  call void @llvm.lifetime.end.p0(i64 24, ptr %683) #5
  br label %11991

10804:                                            ; preds = %10745
  %10805 = landingpad { ptr, i32 }
          cleanup
  %10806 = extractvalue { ptr, i32 } %10805, 0
  store ptr %10806, ptr %5, align 8
  %10807 = extractvalue { ptr, i32 } %10805, 1
  store i32 %10807, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %684) #5
  br label %11991

10808:                                            ; preds = %10753
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10809 unwind label %1024

10809:                                            ; preds = %10808
  call void @llvm.lifetime.start.p0(i64 1, ptr %685) #5
  store i8 0, ptr %685, align 1, !tbaa !9
  %10810 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10811 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10810, ptr noundef nonnull align 1 dereferenceable(1) %685)
          to label %10812 unwind label %10852

10812:                                            ; preds = %10809
  call void @llvm.lifetime.end.p0(i64 1, ptr %685) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10813 unwind label %1024

10813:                                            ; preds = %10812
  call void @llvm.lifetime.start.p0(i64 24, ptr %686) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %686, i32 noundef 4)
          to label %10814 unwind label %10856

10814:                                            ; preds = %10813
  %10815 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %10816 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10815, ptr noundef nonnull align 8 dereferenceable(24) %686)
          to label %10817 unwind label %10860

10817:                                            ; preds = %10814
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %686) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %686) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %687) #5
  %10818 = 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 %10819 unwind label %10865

10819:                                            ; preds = %10817
  %10820 = 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 %10821 unwind label %10865

10821:                                            ; preds = %10819
  %10822 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %10818, ptr noundef nonnull align 8 dereferenceable(8) %10820)
          to label %10823 unwind label %10865

10823:                                            ; preds = %10821
  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) %10822)
          to label %10824 unwind label %10865

10824:                                            ; preds = %10823
  %10825 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %10826 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10825, ptr noundef nonnull align 8 dereferenceable(24) %687)
          to label %10827 unwind label %10869

10827:                                            ; preds = %10824
  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
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %688, i32 noundef 1)
          to label %10828 unwind label %10874

10828:                                            ; preds = %10827
  %10829 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %10830 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10829, ptr noundef nonnull align 8 dereferenceable(24) %688)
          to label %10831 unwind label %10878

10831:                                            ; preds = %10828
  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_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %689, i32 noundef 3)
          to label %10832 unwind label %10883

10832:                                            ; preds = %10831
  %10833 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %10834 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10833, ptr noundef nonnull align 8 dereferenceable(24) %689)
          to label %10835 unwind label %10887

10835:                                            ; preds = %10832
  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
  %10836 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %10837 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10836, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10838 unwind label %1024

10838:                                            ; preds = %10835
  call void @llvm.lifetime.start.p0(i64 1, ptr %690) #5
  store i8 1, ptr %690, align 1, !tbaa !9
  %10839 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10840 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10839, ptr noundef nonnull align 1 dereferenceable(1) %690)
          to label %10841 unwind label %10892

10841:                                            ; preds = %10838
  call void @llvm.lifetime.end.p0(i64 1, ptr %690) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10842 unwind label %1024

10842:                                            ; preds = %10841
  br label %10843

10843:                                            ; preds = %10851, %10842
  %10844 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %10845 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10844)
          to label %10846 unwind label %1024

10846:                                            ; preds = %10843
  %10847 = load i8, ptr %10845, align 1, !tbaa !9, !range !11, !noundef !12
  %10848 = trunc i8 %10847 to i1
  %10849 = xor i1 %10848, true
  br i1 %10849, label %10850, label %10896

10850:                                            ; preds = %10846
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10851 unwind label %1024

10851:                                            ; preds = %10850
  br label %10843, !llvm.loop !143

10852:                                            ; preds = %10809
  %10853 = landingpad { ptr, i32 }
          cleanup
  %10854 = extractvalue { ptr, i32 } %10853, 0
  store ptr %10854, ptr %5, align 8
  %10855 = extractvalue { ptr, i32 } %10853, 1
  store i32 %10855, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %685) #5
  br label %11991

10856:                                            ; preds = %10813
  %10857 = landingpad { ptr, i32 }
          cleanup
  %10858 = extractvalue { ptr, i32 } %10857, 0
  store ptr %10858, ptr %5, align 8
  %10859 = extractvalue { ptr, i32 } %10857, 1
  store i32 %10859, ptr %6, align 4
  br label %10864

10860:                                            ; preds = %10814
  %10861 = landingpad { ptr, i32 }
          cleanup
  %10862 = extractvalue { ptr, i32 } %10861, 0
  store ptr %10862, ptr %5, align 8
  %10863 = extractvalue { ptr, i32 } %10861, 1
  store i32 %10863, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %686) #5
  br label %10864

10864:                                            ; preds = %10860, %10856
  call void @llvm.lifetime.end.p0(i64 24, ptr %686) #5
  br label %11991

10865:                                            ; preds = %10823, %10821, %10819, %10817
  %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
  br label %10873

10869:                                            ; preds = %10824
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %687) #5
  br label %10873

10873:                                            ; preds = %10869, %10865
  call void @llvm.lifetime.end.p0(i64 24, ptr %687) #5
  br label %11991

10874:                                            ; preds = %10827
  %10875 = landingpad { ptr, i32 }
          cleanup
  %10876 = extractvalue { ptr, i32 } %10875, 0
  store ptr %10876, ptr %5, align 8
  %10877 = extractvalue { ptr, i32 } %10875, 1
  store i32 %10877, ptr %6, align 4
  br label %10882

10878:                                            ; preds = %10828
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %688) #5
  br label %10882

10882:                                            ; preds = %10878, %10874
  call void @llvm.lifetime.end.p0(i64 24, ptr %688) #5
  br label %11991

10883:                                            ; preds = %10831
  %10884 = landingpad { ptr, i32 }
          cleanup
  %10885 = extractvalue { ptr, i32 } %10884, 0
  store ptr %10885, ptr %5, align 8
  %10886 = extractvalue { ptr, i32 } %10884, 1
  store i32 %10886, ptr %6, align 4
  br label %10891

10887:                                            ; preds = %10832
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %689) #5
  br label %10891

10891:                                            ; preds = %10887, %10883
  call void @llvm.lifetime.end.p0(i64 24, ptr %689) #5
  br label %11991

10892:                                            ; preds = %10838
  %10893 = landingpad { ptr, i32 }
          cleanup
  %10894 = extractvalue { ptr, i32 } %10893, 0
  store ptr %10894, ptr %5, align 8
  %10895 = extractvalue { ptr, i32 } %10893, 1
  store i32 %10895, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %690) #5
  br label %11991

10896:                                            ; preds = %10846
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10897 unwind label %1024

10897:                                            ; preds = %10896
  call void @llvm.lifetime.start.p0(i64 1, ptr %691) #5
  store i8 0, ptr %691, align 1, !tbaa !9
  %10898 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10899 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10898, ptr noundef nonnull align 1 dereferenceable(1) %691)
          to label %10900 unwind label %10940

10900:                                            ; preds = %10897
  call void @llvm.lifetime.end.p0(i64 1, ptr %691) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10901 unwind label %1024

10901:                                            ; preds = %10900
  call void @llvm.lifetime.start.p0(i64 24, ptr %692) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %692, i32 noundef 20)
          to label %10902 unwind label %10944

10902:                                            ; preds = %10901
  %10903 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %10904 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10903, ptr noundef nonnull align 8 dereferenceable(24) %692)
          to label %10905 unwind label %10948

10905:                                            ; preds = %10902
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %692) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %692) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %693) #5
  %10906 = 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 %10907 unwind label %10953

10907:                                            ; preds = %10905
  %10908 = 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 %10909 unwind label %10953

10909:                                            ; preds = %10907
  %10910 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %10906, ptr noundef nonnull align 8 dereferenceable(8) %10908)
          to label %10911 unwind label %10953

10911:                                            ; preds = %10909
  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) %10910)
          to label %10912 unwind label %10953

10912:                                            ; preds = %10911
  %10913 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %10914 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10913, ptr noundef nonnull align 8 dereferenceable(24) %693)
          to label %10915 unwind label %10957

10915:                                            ; preds = %10912
  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
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %694, i32 noundef 4)
          to label %10916 unwind label %10962

10916:                                            ; preds = %10915
  %10917 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %10918 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10917, ptr noundef nonnull align 8 dereferenceable(24) %694)
          to label %10919 unwind label %10966

10919:                                            ; preds = %10916
  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_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %695, i32 noundef 3)
          to label %10920 unwind label %10971

10920:                                            ; preds = %10919
  %10921 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %10922 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10921, ptr noundef nonnull align 8 dereferenceable(24) %695)
          to label %10923 unwind label %10975

10923:                                            ; preds = %10920
  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
  %10924 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %10925 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10924, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10926 unwind label %1024

10926:                                            ; preds = %10923
  call void @llvm.lifetime.start.p0(i64 1, ptr %696) #5
  store i8 1, ptr %696, align 1, !tbaa !9
  %10927 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10928 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10927, ptr noundef nonnull align 1 dereferenceable(1) %696)
          to label %10929 unwind label %10980

10929:                                            ; preds = %10926
  call void @llvm.lifetime.end.p0(i64 1, ptr %696) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10930 unwind label %1024

10930:                                            ; preds = %10929
  br label %10931

10931:                                            ; preds = %10939, %10930
  %10932 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %10933 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10932)
          to label %10934 unwind label %1024

10934:                                            ; preds = %10931
  %10935 = load i8, ptr %10933, align 1, !tbaa !9, !range !11, !noundef !12
  %10936 = trunc i8 %10935 to i1
  %10937 = xor i1 %10936, true
  br i1 %10937, label %10938, label %10984

10938:                                            ; preds = %10934
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10939 unwind label %1024

10939:                                            ; preds = %10938
  br label %10931, !llvm.loop !144

10940:                                            ; preds = %10897
  %10941 = landingpad { ptr, i32 }
          cleanup
  %10942 = extractvalue { ptr, i32 } %10941, 0
  store ptr %10942, ptr %5, align 8
  %10943 = extractvalue { ptr, i32 } %10941, 1
  store i32 %10943, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %691) #5
  br label %11991

10944:                                            ; preds = %10901
  %10945 = landingpad { ptr, i32 }
          cleanup
  %10946 = extractvalue { ptr, i32 } %10945, 0
  store ptr %10946, ptr %5, align 8
  %10947 = extractvalue { ptr, i32 } %10945, 1
  store i32 %10947, ptr %6, align 4
  br label %10952

10948:                                            ; preds = %10902
  %10949 = landingpad { ptr, i32 }
          cleanup
  %10950 = extractvalue { ptr, i32 } %10949, 0
  store ptr %10950, ptr %5, align 8
  %10951 = extractvalue { ptr, i32 } %10949, 1
  store i32 %10951, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %692) #5
  br label %10952

10952:                                            ; preds = %10948, %10944
  call void @llvm.lifetime.end.p0(i64 24, ptr %692) #5
  br label %11991

10953:                                            ; preds = %10911, %10909, %10907, %10905
  %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
  br label %10961

10957:                                            ; preds = %10912
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %693) #5
  br label %10961

10961:                                            ; preds = %10957, %10953
  call void @llvm.lifetime.end.p0(i64 24, ptr %693) #5
  br label %11991

10962:                                            ; preds = %10915
  %10963 = landingpad { ptr, i32 }
          cleanup
  %10964 = extractvalue { ptr, i32 } %10963, 0
  store ptr %10964, ptr %5, align 8
  %10965 = extractvalue { ptr, i32 } %10963, 1
  store i32 %10965, ptr %6, align 4
  br label %10970

10966:                                            ; preds = %10916
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %694) #5
  br label %10970

10970:                                            ; preds = %10966, %10962
  call void @llvm.lifetime.end.p0(i64 24, ptr %694) #5
  br label %11991

10971:                                            ; preds = %10919
  %10972 = landingpad { ptr, i32 }
          cleanup
  %10973 = extractvalue { ptr, i32 } %10972, 0
  store ptr %10973, ptr %5, align 8
  %10974 = extractvalue { ptr, i32 } %10972, 1
  store i32 %10974, ptr %6, align 4
  br label %10979

10975:                                            ; preds = %10920
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %695) #5
  br label %10979

10979:                                            ; preds = %10975, %10971
  call void @llvm.lifetime.end.p0(i64 24, ptr %695) #5
  br label %11991

10980:                                            ; preds = %10926
  %10981 = landingpad { ptr, i32 }
          cleanup
  %10982 = extractvalue { ptr, i32 } %10981, 0
  store ptr %10982, ptr %5, align 8
  %10983 = extractvalue { ptr, i32 } %10981, 1
  store i32 %10983, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %696) #5
  br label %11991

10984:                                            ; preds = %10934
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10985 unwind label %1024

10985:                                            ; preds = %10984
  call void @llvm.lifetime.start.p0(i64 1, ptr %697) #5
  store i8 0, ptr %697, align 1, !tbaa !9
  %10986 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %10987 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10986, ptr noundef nonnull align 1 dereferenceable(1) %697)
          to label %10988 unwind label %11022

10988:                                            ; preds = %10985
  call void @llvm.lifetime.end.p0(i64 1, ptr %697) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %10989 unwind label %1024

10989:                                            ; preds = %10988
  call void @llvm.lifetime.start.p0(i64 24, ptr %698) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %698, i32 noundef 288)
          to label %10990 unwind label %11026

10990:                                            ; preds = %10989
  %10991 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %10992 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10991, ptr noundef nonnull align 8 dereferenceable(24) %698)
          to label %10993 unwind label %11030

10993:                                            ; preds = %10990
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %698) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %698) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %699) #5
  %10994 = 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 %10995 unwind label %11035

10995:                                            ; preds = %10993
  %10996 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8) %10994, i1 noundef zeroext false)
          to label %10997 unwind label %11035

10997:                                            ; preds = %10995
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %699, ptr noundef nonnull align 1 dereferenceable(1) %10996)
          to label %10998 unwind label %11035

10998:                                            ; preds = %10997
  %10999 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %11000 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10999, ptr noundef nonnull align 8 dereferenceable(24) %699)
          to label %11001 unwind label %11039

11001:                                            ; preds = %10998
  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
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %700, i32 noundef 1)
          to label %11002 unwind label %11044

11002:                                            ; preds = %11001
  %11003 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %11004 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11003, ptr noundef nonnull align 8 dereferenceable(24) %700)
          to label %11005 unwind label %11048

11005:                                            ; preds = %11002
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %700) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %700) #5
  %11006 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %11007 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11006, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11008 unwind label %1024

11008:                                            ; preds = %11005
  call void @llvm.lifetime.start.p0(i64 1, ptr %701) #5
  store i8 1, ptr %701, align 1, !tbaa !9
  %11009 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11010 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11009, ptr noundef nonnull align 1 dereferenceable(1) %701)
          to label %11011 unwind label %11053

11011:                                            ; preds = %11008
  call void @llvm.lifetime.end.p0(i64 1, ptr %701) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11012 unwind label %1024

11012:                                            ; preds = %11011
  br label %11013

11013:                                            ; preds = %11021, %11012
  %11014 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %11015 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11014)
          to label %11016 unwind label %1024

11016:                                            ; preds = %11013
  %11017 = load i8, ptr %11015, align 1, !tbaa !9, !range !11, !noundef !12
  %11018 = trunc i8 %11017 to i1
  %11019 = xor i1 %11018, true
  br i1 %11019, label %11020, label %11057

11020:                                            ; preds = %11016
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11021 unwind label %1024

11021:                                            ; preds = %11020
  br label %11013, !llvm.loop !145

11022:                                            ; preds = %10985
  %11023 = landingpad { ptr, i32 }
          cleanup
  %11024 = extractvalue { ptr, i32 } %11023, 0
  store ptr %11024, ptr %5, align 8
  %11025 = extractvalue { ptr, i32 } %11023, 1
  store i32 %11025, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %697) #5
  br label %11991

11026:                                            ; preds = %10989
  %11027 = landingpad { ptr, i32 }
          cleanup
  %11028 = extractvalue { ptr, i32 } %11027, 0
  store ptr %11028, ptr %5, align 8
  %11029 = extractvalue { ptr, i32 } %11027, 1
  store i32 %11029, ptr %6, align 4
  br label %11034

11030:                                            ; preds = %10990
  %11031 = landingpad { ptr, i32 }
          cleanup
  %11032 = extractvalue { ptr, i32 } %11031, 0
  store ptr %11032, ptr %5, align 8
  %11033 = extractvalue { ptr, i32 } %11031, 1
  store i32 %11033, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %698) #5
  br label %11034

11034:                                            ; preds = %11030, %11026
  call void @llvm.lifetime.end.p0(i64 24, ptr %698) #5
  br label %11991

11035:                                            ; preds = %10997, %10995, %10993
  %11036 = landingpad { ptr, i32 }
          cleanup
  %11037 = extractvalue { ptr, i32 } %11036, 0
  store ptr %11037, ptr %5, align 8
  %11038 = extractvalue { ptr, i32 } %11036, 1
  store i32 %11038, ptr %6, align 4
  br label %11043

11039:                                            ; preds = %10998
  %11040 = landingpad { ptr, i32 }
          cleanup
  %11041 = extractvalue { ptr, i32 } %11040, 0
  store ptr %11041, ptr %5, align 8
  %11042 = extractvalue { ptr, i32 } %11040, 1
  store i32 %11042, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %699) #5
  br label %11043

11043:                                            ; preds = %11039, %11035
  call void @llvm.lifetime.end.p0(i64 24, ptr %699) #5
  br label %11991

11044:                                            ; preds = %11001
  %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
  br label %11052

11048:                                            ; preds = %11002
  %11049 = landingpad { ptr, i32 }
          cleanup
  %11050 = extractvalue { ptr, i32 } %11049, 0
  store ptr %11050, ptr %5, align 8
  %11051 = extractvalue { ptr, i32 } %11049, 1
  store i32 %11051, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %700) #5
  br label %11052

11052:                                            ; preds = %11048, %11044
  call void @llvm.lifetime.end.p0(i64 24, ptr %700) #5
  br label %11991

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
  call void @llvm.lifetime.end.p0(i64 1, ptr %701) #5
  br label %11991

11057:                                            ; preds = %11016
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11058 unwind label %1024

11058:                                            ; preds = %11057
  call void @llvm.lifetime.start.p0(i64 1, ptr %702) #5
  store i8 0, ptr %702, align 1, !tbaa !9
  %11059 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11060 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11059, ptr noundef nonnull align 1 dereferenceable(1) %702)
          to label %11061 unwind label %11063

11061:                                            ; preds = %11058
  call void @llvm.lifetime.end.p0(i64 1, ptr %702) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11062 unwind label %1024

11062:                                            ; preds = %11061
  br label %11067

11063:                                            ; preds = %11058
  %11064 = landingpad { ptr, i32 }
          cleanup
  %11065 = extractvalue { ptr, i32 } %11064, 0
  store ptr %11065, ptr %5, align 8
  %11066 = extractvalue { ptr, i32 } %11064, 1
  store i32 %11066, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %702) #5
  br label %11991

11067:                                            ; preds = %11062, %9265
  br label %11889

11068:                                            ; preds = %2767
  %11069 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %11070 unwind label %1024

11070:                                            ; preds = %11068
  %11071 = icmp ne i64 %11069, 3
  br i1 %11071, label %11076, label %11072

11072:                                            ; preds = %11070
  %11073 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %11074 unwind label %1024

11074:                                            ; preds = %11072
  %11075 = icmp eq i64 %11073, 0
  br i1 %11075, label %11076, label %11080

11076:                                            ; preds = %11074, %11070
  %11077 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %11078 unwind label %1024

11078:                                            ; preds = %11076
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11079 unwind label %1024

11079:                                            ; preds = %11078
  br label %11884

11080:                                            ; preds = %11074
  %11081 = 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 %11082 unwind label %1024

11082:                                            ; preds = %11080
  %11083 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %11084 = trunc i8 %11083 to i1
  %11085 = zext i1 %11084 to i8
  store i8 %11085, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11086 unwind label %1024

11086:                                            ; preds = %11082
  call void @llvm.lifetime.start.p0(i64 24, ptr %703) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %704) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %704, i32 noundef 24)
          to label %11087 unwind label %11116

11087:                                            ; preds = %11086
  %11088 = 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) %704)
          to label %11089 unwind label %11120

11089:                                            ; preds = %11087
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %703, ptr noundef nonnull align 1 dereferenceable(1) %11088)
          to label %11090 unwind label %11120

11090:                                            ; preds = %11089
  %11091 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %11092 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11091, ptr noundef nonnull align 8 dereferenceable(24) %703)
          to label %11093 unwind label %11124

11093:                                            ; preds = %11090
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %703) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %704) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %704) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %703) #5
  %11094 = 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 %11095 unwind label %1024

11095:                                            ; preds = %11093
  %11096 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %11094)
          to label %11097 unwind label %1024

11097:                                            ; preds = %11095
  %11098 = icmp ne i64 %11096, 0
  br i1 %11098, label %11099, label %11139

11099:                                            ; preds = %11097
  %11100 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 128)
          to label %11101 unwind label %1024

11101:                                            ; preds = %11099
  %11102 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 32)
          to label %11103 unwind label %1024

11103:                                            ; preds = %11101
  %11104 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 2)
          to label %11105 unwind label %1024

11105:                                            ; preds = %11103
  %11106 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %12, i32 noundef 272)
          to label %11107 unwind label %1024

11107:                                            ; preds = %11105
  %11108 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 64)
          to label %11109 unwind label %1024

11109:                                            ; preds = %11107
  %11110 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 10)
          to label %11111 unwind label %1024

11111:                                            ; preds = %11109
  call void @llvm.lifetime.start.p0(i64 24, ptr %705) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %705, i32 noundef 8)
          to label %11112 unwind label %11130

11112:                                            ; preds = %11111
  %11113 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %11114 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11113, ptr noundef nonnull align 8 dereferenceable(24) %705)
          to label %11115 unwind label %11134

11115:                                            ; preds = %11112
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %705) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %705) #5
  br label %11165

11116:                                            ; preds = %11086
  %11117 = landingpad { ptr, i32 }
          cleanup
  %11118 = extractvalue { ptr, i32 } %11117, 0
  store ptr %11118, ptr %5, align 8
  %11119 = extractvalue { ptr, i32 } %11117, 1
  store i32 %11119, ptr %6, align 4
  br label %11129

11120:                                            ; preds = %11089, %11087
  %11121 = landingpad { ptr, i32 }
          cleanup
  %11122 = extractvalue { ptr, i32 } %11121, 0
  store ptr %11122, ptr %5, align 8
  %11123 = extractvalue { ptr, i32 } %11121, 1
  store i32 %11123, ptr %6, align 4
  br label %11128

11124:                                            ; preds = %11090
  %11125 = landingpad { ptr, i32 }
          cleanup
  %11126 = extractvalue { ptr, i32 } %11125, 0
  store ptr %11126, ptr %5, align 8
  %11127 = extractvalue { ptr, i32 } %11125, 1
  store i32 %11127, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %703) #5
  br label %11128

11128:                                            ; preds = %11124, %11120
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %704) #5
  br label %11129

11129:                                            ; preds = %11128, %11116
  call void @llvm.lifetime.end.p0(i64 24, ptr %704) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %703) #5
  br label %11991

11130:                                            ; preds = %11111
  %11131 = landingpad { ptr, i32 }
          cleanup
  %11132 = extractvalue { ptr, i32 } %11131, 0
  store ptr %11132, ptr %5, align 8
  %11133 = extractvalue { ptr, i32 } %11131, 1
  store i32 %11133, ptr %6, align 4
  br label %11138

11134:                                            ; preds = %11112
  %11135 = landingpad { ptr, i32 }
          cleanup
  %11136 = extractvalue { ptr, i32 } %11135, 0
  store ptr %11136, ptr %5, align 8
  %11137 = extractvalue { ptr, i32 } %11135, 1
  store i32 %11137, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %705) #5
  br label %11138

11138:                                            ; preds = %11134, %11130
  call void @llvm.lifetime.end.p0(i64 24, ptr %705) #5
  br label %11991

11139:                                            ; preds = %11097
  %11140 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 160)
          to label %11141 unwind label %1024

11141:                                            ; preds = %11139
  %11142 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 48)
          to label %11143 unwind label %1024

11143:                                            ; preds = %11141
  %11144 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 4)
          to label %11145 unwind label %1024

11145:                                            ; preds = %11143
  %11146 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %12, i32 noundef 288)
          to label %11147 unwind label %1024

11147:                                            ; preds = %11145
  %11148 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 96)
          to label %11149 unwind label %1024

11149:                                            ; preds = %11147
  %11150 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 11)
          to label %11151 unwind label %1024

11151:                                            ; preds = %11149
  call void @llvm.lifetime.start.p0(i64 24, ptr %706) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %706, i32 noundef 16)
          to label %11152 unwind label %11156

11152:                                            ; preds = %11151
  %11153 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %11154 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11153, ptr noundef nonnull align 8 dereferenceable(24) %706)
          to label %11155 unwind label %11160

11155:                                            ; preds = %11152
  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
  br label %11165

11156:                                            ; preds = %11151
  %11157 = landingpad { ptr, i32 }
          cleanup
  %11158 = extractvalue { ptr, i32 } %11157, 0
  store ptr %11158, ptr %5, align 8
  %11159 = extractvalue { ptr, i32 } %11157, 1
  store i32 %11159, ptr %6, align 4
  br label %11164

11160:                                            ; preds = %11152
  %11161 = landingpad { ptr, i32 }
          cleanup
  %11162 = extractvalue { ptr, i32 } %11161, 0
  store ptr %11162, ptr %5, align 8
  %11163 = extractvalue { ptr, i32 } %11161, 1
  store i32 %11163, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %706) #5
  br label %11164

11164:                                            ; preds = %11160, %11156
  call void @llvm.lifetime.end.p0(i64 24, ptr %706) #5
  br label %11991

11165:                                            ; preds = %11155, %11115
  call void @llvm.lifetime.start.p0(i64 24, ptr %707) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %707, i32 noundef 3)
          to label %11166 unwind label %11190

11166:                                            ; preds = %11165
  %11167 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %11168 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11167, ptr noundef nonnull align 8 dereferenceable(24) %707)
          to label %11169 unwind label %11194

11169:                                            ; preds = %11166
  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
  call void @llvm.lifetime.start.p0(i64 24, ptr %708) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %708, i32 noundef 3)
          to label %11170 unwind label %11199

11170:                                            ; preds = %11169
  %11171 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %11172 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11171, ptr noundef nonnull align 8 dereferenceable(24) %708)
          to label %11173 unwind label %11203

11173:                                            ; preds = %11170
  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
  %11174 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %11175 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11174, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11176 unwind label %1024

11176:                                            ; preds = %11173
  call void @llvm.lifetime.start.p0(i64 1, ptr %709) #5
  store i8 1, ptr %709, align 1, !tbaa !9
  %11177 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11178 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11177, ptr noundef nonnull align 1 dereferenceable(1) %709)
          to label %11179 unwind label %11208

11179:                                            ; preds = %11176
  call void @llvm.lifetime.end.p0(i64 1, ptr %709) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11180 unwind label %1024

11180:                                            ; preds = %11179
  br label %11181

11181:                                            ; preds = %11189, %11180
  %11182 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %11183 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11182)
          to label %11184 unwind label %1024

11184:                                            ; preds = %11181
  %11185 = load i8, ptr %11183, align 1, !tbaa !9, !range !11, !noundef !12
  %11186 = trunc i8 %11185 to i1
  %11187 = xor i1 %11186, true
  br i1 %11187, label %11188, label %11212

11188:                                            ; preds = %11184
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11189 unwind label %1024

11189:                                            ; preds = %11188
  br label %11181, !llvm.loop !146

11190:                                            ; preds = %11165
  %11191 = landingpad { ptr, i32 }
          cleanup
  %11192 = extractvalue { ptr, i32 } %11191, 0
  store ptr %11192, ptr %5, align 8
  %11193 = extractvalue { ptr, i32 } %11191, 1
  store i32 %11193, ptr %6, align 4
  br label %11198

11194:                                            ; preds = %11166
  %11195 = landingpad { ptr, i32 }
          cleanup
  %11196 = extractvalue { ptr, i32 } %11195, 0
  store ptr %11196, ptr %5, align 8
  %11197 = extractvalue { ptr, i32 } %11195, 1
  store i32 %11197, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %707) #5
  br label %11198

11198:                                            ; preds = %11194, %11190
  call void @llvm.lifetime.end.p0(i64 24, ptr %707) #5
  br label %11991

11199:                                            ; preds = %11169
  %11200 = landingpad { ptr, i32 }
          cleanup
  %11201 = extractvalue { ptr, i32 } %11200, 0
  store ptr %11201, ptr %5, align 8
  %11202 = extractvalue { ptr, i32 } %11200, 1
  store i32 %11202, ptr %6, align 4
  br label %11207

11203:                                            ; preds = %11170
  %11204 = landingpad { ptr, i32 }
          cleanup
  %11205 = extractvalue { ptr, i32 } %11204, 0
  store ptr %11205, ptr %5, align 8
  %11206 = extractvalue { ptr, i32 } %11204, 1
  store i32 %11206, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %708) #5
  br label %11207

11207:                                            ; preds = %11203, %11199
  call void @llvm.lifetime.end.p0(i64 24, ptr %708) #5
  br label %11991

11208:                                            ; preds = %11176
  %11209 = landingpad { ptr, i32 }
          cleanup
  %11210 = extractvalue { ptr, i32 } %11209, 0
  store ptr %11210, ptr %5, align 8
  %11211 = extractvalue { ptr, i32 } %11209, 1
  store i32 %11211, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %709) #5
  br label %11991

11212:                                            ; preds = %11184
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11213 unwind label %1024

11213:                                            ; preds = %11212
  call void @llvm.lifetime.start.p0(i64 1, ptr %710) #5
  store i8 0, ptr %710, align 1, !tbaa !9
  %11214 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11215 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11214, ptr noundef nonnull align 1 dereferenceable(1) %710)
          to label %11216 unwind label %11252

11216:                                            ; preds = %11213
  call void @llvm.lifetime.end.p0(i64 1, ptr %710) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11217 unwind label %1024

11217:                                            ; preds = %11216
  call void @llvm.lifetime.start.p0(i64 24, ptr %711) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %712) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %712, i32 noundef 27)
          to label %11218 unwind label %11256

11218:                                            ; preds = %11217
  %11219 = 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) %712)
          to label %11220 unwind label %11260

11220:                                            ; preds = %11218
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %711, ptr noundef nonnull align 1 dereferenceable(1) %11219)
          to label %11221 unwind label %11260

11221:                                            ; preds = %11220
  %11222 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %11223 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11222, ptr noundef nonnull align 8 dereferenceable(24) %711)
          to label %11224 unwind label %11264

11224:                                            ; preds = %11221
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %711) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %712) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %712) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %711) #5
  %11225 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %11226 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11225, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %11227 unwind label %1024

11227:                                            ; preds = %11224
  call void @llvm.lifetime.start.p0(i64 24, ptr %713) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %713, i32 noundef 32)
          to label %11228 unwind label %11270

11228:                                            ; preds = %11227
  %11229 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %11230 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11229, ptr noundef nonnull align 8 dereferenceable(24) %713)
          to label %11231 unwind label %11274

11231:                                            ; preds = %11228
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %713) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %713) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %714) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %714, i32 noundef 3)
          to label %11232 unwind label %11279

11232:                                            ; preds = %11231
  %11233 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %11234 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11233, ptr noundef nonnull align 8 dereferenceable(24) %714)
          to label %11235 unwind label %11283

11235:                                            ; preds = %11232
  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
  %11236 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %11237 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11236, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11238 unwind label %1024

11238:                                            ; preds = %11235
  call void @llvm.lifetime.start.p0(i64 1, ptr %715) #5
  store i8 1, ptr %715, align 1, !tbaa !9
  %11239 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11240 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11239, ptr noundef nonnull align 1 dereferenceable(1) %715)
          to label %11241 unwind label %11288

11241:                                            ; preds = %11238
  call void @llvm.lifetime.end.p0(i64 1, ptr %715) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11242 unwind label %1024

11242:                                            ; preds = %11241
  br label %11243

11243:                                            ; preds = %11251, %11242
  %11244 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %11245 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11244)
          to label %11246 unwind label %1024

11246:                                            ; preds = %11243
  %11247 = load i8, ptr %11245, align 1, !tbaa !9, !range !11, !noundef !12
  %11248 = trunc i8 %11247 to i1
  %11249 = xor i1 %11248, true
  br i1 %11249, label %11250, label %11292

11250:                                            ; preds = %11246
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11251 unwind label %1024

11251:                                            ; preds = %11250
  br label %11243, !llvm.loop !147

11252:                                            ; preds = %11213
  %11253 = landingpad { ptr, i32 }
          cleanup
  %11254 = extractvalue { ptr, i32 } %11253, 0
  store ptr %11254, ptr %5, align 8
  %11255 = extractvalue { ptr, i32 } %11253, 1
  store i32 %11255, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %710) #5
  br label %11991

11256:                                            ; preds = %11217
  %11257 = landingpad { ptr, i32 }
          cleanup
  %11258 = extractvalue { ptr, i32 } %11257, 0
  store ptr %11258, ptr %5, align 8
  %11259 = extractvalue { ptr, i32 } %11257, 1
  store i32 %11259, ptr %6, align 4
  br label %11269

11260:                                            ; preds = %11220, %11218
  %11261 = landingpad { ptr, i32 }
          cleanup
  %11262 = extractvalue { ptr, i32 } %11261, 0
  store ptr %11262, ptr %5, align 8
  %11263 = extractvalue { ptr, i32 } %11261, 1
  store i32 %11263, ptr %6, align 4
  br label %11268

11264:                                            ; preds = %11221
  %11265 = landingpad { ptr, i32 }
          cleanup
  %11266 = extractvalue { ptr, i32 } %11265, 0
  store ptr %11266, ptr %5, align 8
  %11267 = extractvalue { ptr, i32 } %11265, 1
  store i32 %11267, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %711) #5
  br label %11268

11268:                                            ; preds = %11264, %11260
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %712) #5
  br label %11269

11269:                                            ; preds = %11268, %11256
  call void @llvm.lifetime.end.p0(i64 24, ptr %712) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %711) #5
  br label %11991

11270:                                            ; preds = %11227
  %11271 = landingpad { ptr, i32 }
          cleanup
  %11272 = extractvalue { ptr, i32 } %11271, 0
  store ptr %11272, ptr %5, align 8
  %11273 = extractvalue { ptr, i32 } %11271, 1
  store i32 %11273, ptr %6, align 4
  br label %11278

11274:                                            ; preds = %11228
  %11275 = landingpad { ptr, i32 }
          cleanup
  %11276 = extractvalue { ptr, i32 } %11275, 0
  store ptr %11276, ptr %5, align 8
  %11277 = extractvalue { ptr, i32 } %11275, 1
  store i32 %11277, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %713) #5
  br label %11278

11278:                                            ; preds = %11274, %11270
  call void @llvm.lifetime.end.p0(i64 24, ptr %713) #5
  br label %11991

11279:                                            ; preds = %11231
  %11280 = landingpad { ptr, i32 }
          cleanup
  %11281 = extractvalue { ptr, i32 } %11280, 0
  store ptr %11281, ptr %5, align 8
  %11282 = extractvalue { ptr, i32 } %11280, 1
  store i32 %11282, ptr %6, align 4
  br label %11287

11283:                                            ; preds = %11232
  %11284 = landingpad { ptr, i32 }
          cleanup
  %11285 = extractvalue { ptr, i32 } %11284, 0
  store ptr %11285, ptr %5, align 8
  %11286 = extractvalue { ptr, i32 } %11284, 1
  store i32 %11286, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %714) #5
  br label %11287

11287:                                            ; preds = %11283, %11279
  call void @llvm.lifetime.end.p0(i64 24, ptr %714) #5
  br label %11991

11288:                                            ; preds = %11238
  %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 @llvm.lifetime.end.p0(i64 1, ptr %715) #5
  br label %11991

11292:                                            ; preds = %11246
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11293 unwind label %1024

11293:                                            ; preds = %11292
  call void @llvm.lifetime.start.p0(i64 1, ptr %716) #5
  store i8 0, ptr %716, align 1, !tbaa !9
  %11294 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11295 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11294, ptr noundef nonnull align 1 dereferenceable(1) %716)
          to label %11296 unwind label %11328

11296:                                            ; preds = %11293
  call void @llvm.lifetime.end.p0(i64 1, ptr %716) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11297 unwind label %1024

11297:                                            ; preds = %11296
  call void @llvm.lifetime.start.p0(i64 24, ptr %717) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %718) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %718, i32 noundef 59)
          to label %11298 unwind label %11332

11298:                                            ; preds = %11297
  %11299 = 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) %718)
          to label %11300 unwind label %11336

11300:                                            ; preds = %11298
  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) %11299)
          to label %11301 unwind label %11336

11301:                                            ; preds = %11300
  %11302 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %11303 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11302, ptr noundef nonnull align 8 dereferenceable(24) %717)
          to label %11304 unwind label %11340

11304:                                            ; preds = %11301
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %717) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %718) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %718) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %717) #5
  %11305 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %11306 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11305, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %11307 unwind label %1024

11307:                                            ; preds = %11304
  call void @llvm.lifetime.start.p0(i64 24, ptr %719) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %719, i32 noundef 3)
          to label %11308 unwind label %11346

11308:                                            ; preds = %11307
  %11309 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %11310 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11309, ptr noundef nonnull align 8 dereferenceable(24) %719)
          to label %11311 unwind label %11350

11311:                                            ; preds = %11308
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %719) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %719) #5
  %11312 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %11313 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11312, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11314 unwind label %1024

11314:                                            ; preds = %11311
  call void @llvm.lifetime.start.p0(i64 1, ptr %720) #5
  store i8 1, ptr %720, align 1, !tbaa !9
  %11315 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11316 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11315, ptr noundef nonnull align 1 dereferenceable(1) %720)
          to label %11317 unwind label %11355

11317:                                            ; preds = %11314
  call void @llvm.lifetime.end.p0(i64 1, ptr %720) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11318 unwind label %1024

11318:                                            ; preds = %11317
  br label %11319

11319:                                            ; preds = %11327, %11318
  %11320 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %11321 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11320)
          to label %11322 unwind label %1024

11322:                                            ; preds = %11319
  %11323 = load i8, ptr %11321, align 1, !tbaa !9, !range !11, !noundef !12
  %11324 = trunc i8 %11323 to i1
  %11325 = xor i1 %11324, true
  br i1 %11325, label %11326, label %11359

11326:                                            ; preds = %11322
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11327 unwind label %1024

11327:                                            ; preds = %11326
  br label %11319, !llvm.loop !148

11328:                                            ; preds = %11293
  %11329 = landingpad { ptr, i32 }
          cleanup
  %11330 = extractvalue { ptr, i32 } %11329, 0
  store ptr %11330, ptr %5, align 8
  %11331 = extractvalue { ptr, i32 } %11329, 1
  store i32 %11331, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %716) #5
  br label %11991

11332:                                            ; preds = %11297
  %11333 = landingpad { ptr, i32 }
          cleanup
  %11334 = extractvalue { ptr, i32 } %11333, 0
  store ptr %11334, ptr %5, align 8
  %11335 = extractvalue { ptr, i32 } %11333, 1
  store i32 %11335, ptr %6, align 4
  br label %11345

11336:                                            ; preds = %11300, %11298
  %11337 = landingpad { ptr, i32 }
          cleanup
  %11338 = extractvalue { ptr, i32 } %11337, 0
  store ptr %11338, ptr %5, align 8
  %11339 = extractvalue { ptr, i32 } %11337, 1
  store i32 %11339, ptr %6, align 4
  br label %11344

11340:                                            ; preds = %11301
  %11341 = landingpad { ptr, i32 }
          cleanup
  %11342 = extractvalue { ptr, i32 } %11341, 0
  store ptr %11342, ptr %5, align 8
  %11343 = extractvalue { ptr, i32 } %11341, 1
  store i32 %11343, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %717) #5
  br label %11344

11344:                                            ; preds = %11340, %11336
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %718) #5
  br label %11345

11345:                                            ; preds = %11344, %11332
  call void @llvm.lifetime.end.p0(i64 24, ptr %718) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %717) #5
  br label %11991

11346:                                            ; preds = %11307
  %11347 = landingpad { ptr, i32 }
          cleanup
  %11348 = extractvalue { ptr, i32 } %11347, 0
  store ptr %11348, ptr %5, align 8
  %11349 = extractvalue { ptr, i32 } %11347, 1
  store i32 %11349, ptr %6, align 4
  br label %11354

11350:                                            ; preds = %11308
  %11351 = landingpad { ptr, i32 }
          cleanup
  %11352 = extractvalue { ptr, i32 } %11351, 0
  store ptr %11352, ptr %5, align 8
  %11353 = extractvalue { ptr, i32 } %11351, 1
  store i32 %11353, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %719) #5
  br label %11354

11354:                                            ; preds = %11350, %11346
  call void @llvm.lifetime.end.p0(i64 24, ptr %719) #5
  br label %11991

11355:                                            ; preds = %11314
  %11356 = landingpad { ptr, i32 }
          cleanup
  %11357 = extractvalue { ptr, i32 } %11356, 0
  store ptr %11357, ptr %5, align 8
  %11358 = extractvalue { ptr, i32 } %11356, 1
  store i32 %11358, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %720) #5
  br label %11991

11359:                                            ; preds = %11322
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11360 unwind label %1024

11360:                                            ; preds = %11359
  call void @llvm.lifetime.start.p0(i64 1, ptr %721) #5
  store i8 0, ptr %721, align 1, !tbaa !9
  %11361 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11362 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11361, ptr noundef nonnull align 1 dereferenceable(1) %721)
          to label %11363 unwind label %11387

11363:                                            ; preds = %11360
  call void @llvm.lifetime.end.p0(i64 1, ptr %721) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11364 unwind label %1024

11364:                                            ; preds = %11363
  call void @llvm.lifetime.start.p0(i64 24, ptr %722) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %723) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %723, i32 noundef -37)
          to label %11365 unwind label %11391

11365:                                            ; preds = %11364
  %11366 = 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) %723)
          to label %11367 unwind label %11395

11367:                                            ; preds = %11365
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %722, ptr noundef nonnull align 1 dereferenceable(1) %11366)
          to label %11368 unwind label %11395

11368:                                            ; preds = %11367
  %11369 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %11370 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11369, ptr noundef nonnull align 8 dereferenceable(24) %722)
          to label %11371 unwind label %11399

11371:                                            ; preds = %11368
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %722) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %723) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %723) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %722) #5
  %11372 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %11373 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11372, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %11374 unwind label %1024

11374:                                            ; preds = %11371
  %11375 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 7
  %11376 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11375)
          to label %11377 unwind label %1024

11377:                                            ; preds = %11374
  %11378 = load i8, ptr %11376, align 1, !tbaa !9, !range !11, !noundef !12
  %11379 = trunc i8 %11378 to i1
  br i1 %11379, label %11414, label %11380

11380:                                            ; preds = %11377
  %11381 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef -3743)
          to label %11382 unwind label %1024

11382:                                            ; preds = %11380
  call void @llvm.lifetime.start.p0(i64 24, ptr %724) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %724, i32 noundef 6)
          to label %11383 unwind label %11405

11383:                                            ; preds = %11382
  %11384 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %11385 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11384, ptr noundef nonnull align 8 dereferenceable(24) %724)
          to label %11386 unwind label %11409

11386:                                            ; preds = %11383
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %724) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %724) #5
  br label %11430

11387:                                            ; preds = %11360
  %11388 = landingpad { ptr, i32 }
          cleanup
  %11389 = extractvalue { ptr, i32 } %11388, 0
  store ptr %11389, ptr %5, align 8
  %11390 = extractvalue { ptr, i32 } %11388, 1
  store i32 %11390, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %721) #5
  br label %11991

11391:                                            ; preds = %11364
  %11392 = landingpad { ptr, i32 }
          cleanup
  %11393 = extractvalue { ptr, i32 } %11392, 0
  store ptr %11393, ptr %5, align 8
  %11394 = extractvalue { ptr, i32 } %11392, 1
  store i32 %11394, ptr %6, align 4
  br label %11404

11395:                                            ; preds = %11367, %11365
  %11396 = landingpad { ptr, i32 }
          cleanup
  %11397 = extractvalue { ptr, i32 } %11396, 0
  store ptr %11397, ptr %5, align 8
  %11398 = extractvalue { ptr, i32 } %11396, 1
  store i32 %11398, ptr %6, align 4
  br label %11403

11399:                                            ; preds = %11368
  %11400 = landingpad { ptr, i32 }
          cleanup
  %11401 = extractvalue { ptr, i32 } %11400, 0
  store ptr %11401, ptr %5, align 8
  %11402 = extractvalue { ptr, i32 } %11400, 1
  store i32 %11402, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %722) #5
  br label %11403

11403:                                            ; preds = %11399, %11395
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %723) #5
  br label %11404

11404:                                            ; preds = %11403, %11391
  call void @llvm.lifetime.end.p0(i64 24, ptr %723) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %722) #5
  br label %11991

11405:                                            ; preds = %11382
  %11406 = landingpad { ptr, i32 }
          cleanup
  %11407 = extractvalue { ptr, i32 } %11406, 0
  store ptr %11407, ptr %5, align 8
  %11408 = extractvalue { ptr, i32 } %11406, 1
  store i32 %11408, ptr %6, align 4
  br label %11413

11409:                                            ; preds = %11383
  %11410 = landingpad { ptr, i32 }
          cleanup
  %11411 = extractvalue { ptr, i32 } %11410, 0
  store ptr %11411, ptr %5, align 8
  %11412 = extractvalue { ptr, i32 } %11410, 1
  store i32 %11412, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %724) #5
  br label %11413

11413:                                            ; preds = %11409, %11405
  call void @llvm.lifetime.end.p0(i64 24, ptr %724) #5
  br label %11991

11414:                                            ; preds = %11377
  %11415 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef -4001)
          to label %11416 unwind label %1024

11416:                                            ; preds = %11414
  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 4)
          to label %11417 unwind label %11421

11417:                                            ; preds = %11416
  %11418 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %11419 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11418, ptr noundef nonnull align 8 dereferenceable(24) %725)
          to label %11420 unwind label %11425

11420:                                            ; preds = %11417
  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
  br label %11430

11421:                                            ; preds = %11416
  %11422 = landingpad { ptr, i32 }
          cleanup
  %11423 = extractvalue { ptr, i32 } %11422, 0
  store ptr %11423, ptr %5, align 8
  %11424 = extractvalue { ptr, i32 } %11422, 1
  store i32 %11424, ptr %6, align 4
  br label %11429

11425:                                            ; preds = %11417
  %11426 = landingpad { ptr, i32 }
          cleanup
  %11427 = extractvalue { ptr, i32 } %11426, 0
  store ptr %11427, ptr %5, align 8
  %11428 = extractvalue { ptr, i32 } %11426, 1
  store i32 %11428, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %725) #5
  br label %11429

11429:                                            ; preds = %11425, %11421
  call void @llvm.lifetime.end.p0(i64 24, ptr %725) #5
  br label %11991

11430:                                            ; preds = %11420, %11386
  call void @llvm.lifetime.start.p0(i64 24, ptr %726) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %726, i32 noundef 3)
          to label %11431 unwind label %11451

11431:                                            ; preds = %11430
  %11432 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %11433 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11432, ptr noundef nonnull align 8 dereferenceable(24) %726)
          to label %11434 unwind label %11455

11434:                                            ; preds = %11431
  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
  %11435 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %11436 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11435, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11437 unwind label %1024

11437:                                            ; preds = %11434
  call void @llvm.lifetime.start.p0(i64 1, ptr %727) #5
  store i8 1, ptr %727, align 1, !tbaa !9
  %11438 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11439 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11438, ptr noundef nonnull align 1 dereferenceable(1) %727)
          to label %11440 unwind label %11460

11440:                                            ; preds = %11437
  call void @llvm.lifetime.end.p0(i64 1, ptr %727) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11441 unwind label %1024

11441:                                            ; preds = %11440
  br label %11442

11442:                                            ; preds = %11450, %11441
  %11443 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %11444 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11443)
          to label %11445 unwind label %1024

11445:                                            ; preds = %11442
  %11446 = load i8, ptr %11444, align 1, !tbaa !9, !range !11, !noundef !12
  %11447 = trunc i8 %11446 to i1
  %11448 = xor i1 %11447, true
  br i1 %11448, label %11449, label %11464

11449:                                            ; preds = %11445
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11450 unwind label %1024

11450:                                            ; preds = %11449
  br label %11442, !llvm.loop !149

11451:                                            ; preds = %11430
  %11452 = landingpad { ptr, i32 }
          cleanup
  %11453 = extractvalue { ptr, i32 } %11452, 0
  store ptr %11453, ptr %5, align 8
  %11454 = extractvalue { ptr, i32 } %11452, 1
  store i32 %11454, ptr %6, align 4
  br label %11459

11455:                                            ; preds = %11431
  %11456 = landingpad { ptr, i32 }
          cleanup
  %11457 = extractvalue { ptr, i32 } %11456, 0
  store ptr %11457, ptr %5, align 8
  %11458 = extractvalue { ptr, i32 } %11456, 1
  store i32 %11458, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %726) #5
  br label %11459

11459:                                            ; preds = %11455, %11451
  call void @llvm.lifetime.end.p0(i64 24, ptr %726) #5
  br label %11991

11460:                                            ; preds = %11437
  %11461 = landingpad { ptr, i32 }
          cleanup
  %11462 = extractvalue { ptr, i32 } %11461, 0
  store ptr %11462, ptr %5, align 8
  %11463 = extractvalue { ptr, i32 } %11461, 1
  store i32 %11463, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %727) #5
  br label %11991

11464:                                            ; preds = %11445
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11465 unwind label %1024

11465:                                            ; preds = %11464
  call void @llvm.lifetime.start.p0(i64 1, ptr %728) #5
  store i8 0, ptr %728, align 1, !tbaa !9
  %11466 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11467 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11466, ptr noundef nonnull align 1 dereferenceable(1) %728)
          to label %11468 unwind label %11507

11468:                                            ; preds = %11465
  call void @llvm.lifetime.end.p0(i64 1, ptr %728) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11469 unwind label %1024

11469:                                            ; preds = %11468
  call void @llvm.lifetime.start.p0(i64 24, ptr %729) #5
  %11470 = 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 %11471 unwind label %11511

11471:                                            ; preds = %11469
  %11472 = 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 %11473 unwind label %11511

11473:                                            ; preds = %11471
  %11474 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %11470, ptr noundef nonnull align 8 dereferenceable(8) %11472)
          to label %11475 unwind label %11511

11475:                                            ; preds = %11473
  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) %11474)
          to label %11476 unwind label %11511

11476:                                            ; preds = %11475
  %11477 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %11478 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11477, ptr noundef nonnull align 8 dereferenceable(24) %729)
          to label %11479 unwind label %11515

11479:                                            ; preds = %11476
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %729) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %729) #5
  %11480 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %11481 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11480, ptr noundef nonnull align 8 dereferenceable(24) %11)
          to label %11482 unwind label %1024

11482:                                            ; preds = %11479
  call void @llvm.lifetime.start.p0(i64 24, ptr %730) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %730, i32 noundef 1)
          to label %11483 unwind label %11520

11483:                                            ; preds = %11482
  %11484 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %11485 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11484, ptr noundef nonnull align 8 dereferenceable(24) %730)
          to label %11486 unwind label %11524

11486:                                            ; preds = %11483
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %730) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %730) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %731) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %731, i32 noundef 3)
          to label %11487 unwind label %11529

11487:                                            ; preds = %11486
  %11488 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %11489 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11488, ptr noundef nonnull align 8 dereferenceable(24) %731)
          to label %11490 unwind label %11533

11490:                                            ; preds = %11487
  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
  %11491 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %11492 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11491, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11493 unwind label %1024

11493:                                            ; preds = %11490
  call void @llvm.lifetime.start.p0(i64 1, ptr %732) #5
  store i8 1, ptr %732, align 1, !tbaa !9
  %11494 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11495 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11494, ptr noundef nonnull align 1 dereferenceable(1) %732)
          to label %11496 unwind label %11538

11496:                                            ; preds = %11493
  call void @llvm.lifetime.end.p0(i64 1, ptr %732) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11497 unwind label %1024

11497:                                            ; preds = %11496
  br label %11498

11498:                                            ; preds = %11506, %11497
  %11499 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %11500 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11499)
          to label %11501 unwind label %1024

11501:                                            ; preds = %11498
  %11502 = load i8, ptr %11500, align 1, !tbaa !9, !range !11, !noundef !12
  %11503 = trunc i8 %11502 to i1
  %11504 = xor i1 %11503, true
  br i1 %11504, label %11505, label %11542

11505:                                            ; preds = %11501
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11506 unwind label %1024

11506:                                            ; preds = %11505
  br label %11498, !llvm.loop !150

11507:                                            ; preds = %11465
  %11508 = landingpad { ptr, i32 }
          cleanup
  %11509 = extractvalue { ptr, i32 } %11508, 0
  store ptr %11509, ptr %5, align 8
  %11510 = extractvalue { ptr, i32 } %11508, 1
  store i32 %11510, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %728) #5
  br label %11991

11511:                                            ; preds = %11475, %11473, %11471, %11469
  %11512 = landingpad { ptr, i32 }
          cleanup
  %11513 = extractvalue { ptr, i32 } %11512, 0
  store ptr %11513, ptr %5, align 8
  %11514 = extractvalue { ptr, i32 } %11512, 1
  store i32 %11514, ptr %6, align 4
  br label %11519

11515:                                            ; preds = %11476
  %11516 = landingpad { ptr, i32 }
          cleanup
  %11517 = extractvalue { ptr, i32 } %11516, 0
  store ptr %11517, ptr %5, align 8
  %11518 = extractvalue { ptr, i32 } %11516, 1
  store i32 %11518, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %729) #5
  br label %11519

11519:                                            ; preds = %11515, %11511
  call void @llvm.lifetime.end.p0(i64 24, ptr %729) #5
  br label %11991

11520:                                            ; preds = %11482
  %11521 = landingpad { ptr, i32 }
          cleanup
  %11522 = extractvalue { ptr, i32 } %11521, 0
  store ptr %11522, ptr %5, align 8
  %11523 = extractvalue { ptr, i32 } %11521, 1
  store i32 %11523, ptr %6, align 4
  br label %11528

11524:                                            ; preds = %11483
  %11525 = landingpad { ptr, i32 }
          cleanup
  %11526 = extractvalue { ptr, i32 } %11525, 0
  store ptr %11526, ptr %5, align 8
  %11527 = extractvalue { ptr, i32 } %11525, 1
  store i32 %11527, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %730) #5
  br label %11528

11528:                                            ; preds = %11524, %11520
  call void @llvm.lifetime.end.p0(i64 24, ptr %730) #5
  br label %11991

11529:                                            ; preds = %11486
  %11530 = landingpad { ptr, i32 }
          cleanup
  %11531 = extractvalue { ptr, i32 } %11530, 0
  store ptr %11531, ptr %5, align 8
  %11532 = extractvalue { ptr, i32 } %11530, 1
  store i32 %11532, ptr %6, align 4
  br label %11537

11533:                                            ; preds = %11487
  %11534 = landingpad { ptr, i32 }
          cleanup
  %11535 = extractvalue { ptr, i32 } %11534, 0
  store ptr %11535, ptr %5, align 8
  %11536 = extractvalue { ptr, i32 } %11534, 1
  store i32 %11536, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %731) #5
  br label %11537

11537:                                            ; preds = %11533, %11529
  call void @llvm.lifetime.end.p0(i64 24, ptr %731) #5
  br label %11991

11538:                                            ; preds = %11493
  %11539 = landingpad { ptr, i32 }
          cleanup
  %11540 = extractvalue { ptr, i32 } %11539, 0
  store ptr %11540, ptr %5, align 8
  %11541 = extractvalue { ptr, i32 } %11539, 1
  store i32 %11541, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %732) #5
  br label %11991

11542:                                            ; preds = %11501
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11543 unwind label %1024

11543:                                            ; preds = %11542
  call void @llvm.lifetime.start.p0(i64 1, ptr %733) #5
  store i8 0, ptr %733, align 1, !tbaa !9
  %11544 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11545 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11544, ptr noundef nonnull align 1 dereferenceable(1) %733)
          to label %11546 unwind label %11586

11546:                                            ; preds = %11543
  call void @llvm.lifetime.end.p0(i64 1, ptr %733) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11547 unwind label %1024

11547:                                            ; preds = %11546
  call void @llvm.lifetime.start.p0(i64 24, ptr %734) #5
  %11548 = 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 %11549 unwind label %11590

11549:                                            ; preds = %11547
  %11550 = 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 %11551 unwind label %11590

11551:                                            ; preds = %11549
  %11552 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %11548, ptr noundef nonnull align 8 dereferenceable(8) %11550)
          to label %11553 unwind label %11590

11553:                                            ; preds = %11551
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %734, ptr noundef nonnull align 1 dereferenceable(1) %11552)
          to label %11554 unwind label %11590

11554:                                            ; preds = %11553
  %11555 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %11556 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11555, ptr noundef nonnull align 8 dereferenceable(24) %734)
          to label %11557 unwind label %11594

11557:                                            ; preds = %11554
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %734) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %734) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %735) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %735, i32 noundef 20)
          to label %11558 unwind label %11599

11558:                                            ; preds = %11557
  %11559 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %11560 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11559, ptr noundef nonnull align 8 dereferenceable(24) %735)
          to label %11561 unwind label %11603

11561:                                            ; preds = %11558
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %735) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %735) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %736) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %736, i32 noundef 4)
          to label %11562 unwind label %11608

11562:                                            ; preds = %11561
  %11563 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %11564 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11563, ptr noundef nonnull align 8 dereferenceable(24) %736)
          to label %11565 unwind label %11612

11565:                                            ; preds = %11562
  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_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %737, i32 noundef 3)
          to label %11566 unwind label %11617

11566:                                            ; preds = %11565
  %11567 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %11568 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11567, ptr noundef nonnull align 8 dereferenceable(24) %737)
          to label %11569 unwind label %11621

11569:                                            ; preds = %11566
  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
  %11570 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %11571 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11570, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11572 unwind label %1024

11572:                                            ; preds = %11569
  call void @llvm.lifetime.start.p0(i64 1, ptr %738) #5
  store i8 1, ptr %738, align 1, !tbaa !9
  %11573 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11574 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11573, ptr noundef nonnull align 1 dereferenceable(1) %738)
          to label %11575 unwind label %11626

11575:                                            ; preds = %11572
  call void @llvm.lifetime.end.p0(i64 1, ptr %738) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11576 unwind label %1024

11576:                                            ; preds = %11575
  br label %11577

11577:                                            ; preds = %11585, %11576
  %11578 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %11579 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11578)
          to label %11580 unwind label %1024

11580:                                            ; preds = %11577
  %11581 = load i8, ptr %11579, align 1, !tbaa !9, !range !11, !noundef !12
  %11582 = trunc i8 %11581 to i1
  %11583 = xor i1 %11582, true
  br i1 %11583, label %11584, label %11630

11584:                                            ; preds = %11580
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11585 unwind label %1024

11585:                                            ; preds = %11584
  br label %11577, !llvm.loop !151

11586:                                            ; preds = %11543
  %11587 = landingpad { ptr, i32 }
          cleanup
  %11588 = extractvalue { ptr, i32 } %11587, 0
  store ptr %11588, ptr %5, align 8
  %11589 = extractvalue { ptr, i32 } %11587, 1
  store i32 %11589, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %733) #5
  br label %11991

11590:                                            ; preds = %11553, %11551, %11549, %11547
  %11591 = landingpad { ptr, i32 }
          cleanup
  %11592 = extractvalue { ptr, i32 } %11591, 0
  store ptr %11592, ptr %5, align 8
  %11593 = extractvalue { ptr, i32 } %11591, 1
  store i32 %11593, ptr %6, align 4
  br label %11598

11594:                                            ; preds = %11554
  %11595 = landingpad { ptr, i32 }
          cleanup
  %11596 = extractvalue { ptr, i32 } %11595, 0
  store ptr %11596, ptr %5, align 8
  %11597 = extractvalue { ptr, i32 } %11595, 1
  store i32 %11597, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %734) #5
  br label %11598

11598:                                            ; preds = %11594, %11590
  call void @llvm.lifetime.end.p0(i64 24, ptr %734) #5
  br label %11991

11599:                                            ; preds = %11557
  %11600 = landingpad { ptr, i32 }
          cleanup
  %11601 = extractvalue { ptr, i32 } %11600, 0
  store ptr %11601, ptr %5, align 8
  %11602 = extractvalue { ptr, i32 } %11600, 1
  store i32 %11602, ptr %6, align 4
  br label %11607

11603:                                            ; preds = %11558
  %11604 = landingpad { ptr, i32 }
          cleanup
  %11605 = extractvalue { ptr, i32 } %11604, 0
  store ptr %11605, ptr %5, align 8
  %11606 = extractvalue { ptr, i32 } %11604, 1
  store i32 %11606, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %735) #5
  br label %11607

11607:                                            ; preds = %11603, %11599
  call void @llvm.lifetime.end.p0(i64 24, ptr %735) #5
  br label %11991

11608:                                            ; preds = %11561
  %11609 = landingpad { ptr, i32 }
          cleanup
  %11610 = extractvalue { ptr, i32 } %11609, 0
  store ptr %11610, ptr %5, align 8
  %11611 = extractvalue { ptr, i32 } %11609, 1
  store i32 %11611, ptr %6, align 4
  br label %11616

11612:                                            ; preds = %11562
  %11613 = landingpad { ptr, i32 }
          cleanup
  %11614 = extractvalue { ptr, i32 } %11613, 0
  store ptr %11614, ptr %5, align 8
  %11615 = extractvalue { ptr, i32 } %11613, 1
  store i32 %11615, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %736) #5
  br label %11616

11616:                                            ; preds = %11612, %11608
  call void @llvm.lifetime.end.p0(i64 24, ptr %736) #5
  br label %11991

11617:                                            ; preds = %11565
  %11618 = landingpad { ptr, i32 }
          cleanup
  %11619 = extractvalue { ptr, i32 } %11618, 0
  store ptr %11619, ptr %5, align 8
  %11620 = extractvalue { ptr, i32 } %11618, 1
  store i32 %11620, ptr %6, align 4
  br label %11625

11621:                                            ; preds = %11566
  %11622 = landingpad { ptr, i32 }
          cleanup
  %11623 = extractvalue { ptr, i32 } %11622, 0
  store ptr %11623, ptr %5, align 8
  %11624 = extractvalue { ptr, i32 } %11622, 1
  store i32 %11624, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %737) #5
  br label %11625

11625:                                            ; preds = %11621, %11617
  call void @llvm.lifetime.end.p0(i64 24, ptr %737) #5
  br label %11991

11626:                                            ; preds = %11572
  %11627 = landingpad { ptr, i32 }
          cleanup
  %11628 = extractvalue { ptr, i32 } %11627, 0
  store ptr %11628, ptr %5, align 8
  %11629 = extractvalue { ptr, i32 } %11627, 1
  store i32 %11629, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %738) #5
  br label %11991

11630:                                            ; preds = %11580
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11631 unwind label %1024

11631:                                            ; preds = %11630
  call void @llvm.lifetime.start.p0(i64 1, ptr %739) #5
  store i8 0, ptr %739, align 1, !tbaa !9
  %11632 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11633 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11632, ptr noundef nonnull align 1 dereferenceable(1) %739)
          to label %11634 unwind label %11674

11634:                                            ; preds = %11631
  call void @llvm.lifetime.end.p0(i64 1, ptr %739) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11635 unwind label %1024

11635:                                            ; preds = %11634
  call void @llvm.lifetime.start.p0(i64 24, ptr %740) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %741) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %741, i32 noundef 0)
          to label %11636 unwind label %11678

11636:                                            ; preds = %11635
  %11637 = 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) %741)
          to label %11638 unwind label %11682

11638:                                            ; preds = %11636
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %740, ptr noundef nonnull align 1 dereferenceable(1) %11637)
          to label %11639 unwind label %11682

11639:                                            ; preds = %11638
  %11640 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %11641 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11640, ptr noundef nonnull align 8 dereferenceable(24) %740)
          to label %11642 unwind label %11686

11642:                                            ; preds = %11639
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %740) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %741) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %741) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %740) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %742) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %742, i32 noundef 0)
          to label %11643 unwind label %11692

11643:                                            ; preds = %11642
  %11644 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %11645 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11644, ptr noundef nonnull align 8 dereferenceable(24) %742)
          to label %11646 unwind label %11696

11646:                                            ; preds = %11643
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %742) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %742) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %743) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %744) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %744, i32 noundef 0)
          to label %11647 unwind label %11701

11647:                                            ; preds = %11646
  %11648 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %744, ptr noundef nonnull align 8 dereferenceable(8) %15)
          to label %11649 unwind label %11705

11649:                                            ; preds = %11647
  call void @llvm.lifetime.start.p0(i64 24, ptr %745) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %745, i32 noundef 0)
          to label %11650 unwind label %11709

11650:                                            ; preds = %11649
  %11651 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %11648, ptr noundef nonnull align 8 dereferenceable(8) %745)
          to label %11652 unwind label %11713

11652:                                            ; preds = %11650
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %743, ptr noundef nonnull align 1 dereferenceable(1) %11651)
          to label %11653 unwind label %11713

11653:                                            ; preds = %11652
  %11654 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %11655 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11654, ptr noundef nonnull align 8 dereferenceable(24) %743)
          to label %11656 unwind label %11717

11656:                                            ; preds = %11653
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %743) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %745) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %745) #5
  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.end.p0(i64 24, ptr %743) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %746) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %746, i32 noundef -3)
          to label %11657 unwind label %11725

11657:                                            ; preds = %11656
  %11658 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %11659 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11658, ptr noundef nonnull align 8 dereferenceable(24) %746)
          to label %11660 unwind label %11729

11660:                                            ; preds = %11657
  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.start.p0(i64 1, ptr %747) #5
  store i8 1, ptr %747, align 1, !tbaa !9
  %11661 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11662 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11661, ptr noundef nonnull align 1 dereferenceable(1) %747)
          to label %11663 unwind label %11734

11663:                                            ; preds = %11660
  call void @llvm.lifetime.end.p0(i64 1, ptr %747) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11664 unwind label %1024

11664:                                            ; preds = %11663
  br label %11665

11665:                                            ; preds = %11673, %11664
  %11666 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %11667 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11666)
          to label %11668 unwind label %1024

11668:                                            ; preds = %11665
  %11669 = load i8, ptr %11667, align 1, !tbaa !9, !range !11, !noundef !12
  %11670 = trunc i8 %11669 to i1
  %11671 = xor i1 %11670, true
  br i1 %11671, label %11672, label %11738

11672:                                            ; preds = %11668
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11673 unwind label %1024

11673:                                            ; preds = %11672
  br label %11665, !llvm.loop !152

11674:                                            ; preds = %11631
  %11675 = landingpad { ptr, i32 }
          cleanup
  %11676 = extractvalue { ptr, i32 } %11675, 0
  store ptr %11676, ptr %5, align 8
  %11677 = extractvalue { ptr, i32 } %11675, 1
  store i32 %11677, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %739) #5
  br label %11991

11678:                                            ; preds = %11635
  %11679 = landingpad { ptr, i32 }
          cleanup
  %11680 = extractvalue { ptr, i32 } %11679, 0
  store ptr %11680, ptr %5, align 8
  %11681 = extractvalue { ptr, i32 } %11679, 1
  store i32 %11681, ptr %6, align 4
  br label %11691

11682:                                            ; preds = %11638, %11636
  %11683 = landingpad { ptr, i32 }
          cleanup
  %11684 = extractvalue { ptr, i32 } %11683, 0
  store ptr %11684, ptr %5, align 8
  %11685 = extractvalue { ptr, i32 } %11683, 1
  store i32 %11685, ptr %6, align 4
  br label %11690

11686:                                            ; preds = %11639
  %11687 = landingpad { ptr, i32 }
          cleanup
  %11688 = extractvalue { ptr, i32 } %11687, 0
  store ptr %11688, ptr %5, align 8
  %11689 = extractvalue { ptr, i32 } %11687, 1
  store i32 %11689, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %740) #5
  br label %11690

11690:                                            ; preds = %11686, %11682
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %741) #5
  br label %11691

11691:                                            ; preds = %11690, %11678
  call void @llvm.lifetime.end.p0(i64 24, ptr %741) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %740) #5
  br label %11991

11692:                                            ; preds = %11642
  %11693 = landingpad { ptr, i32 }
          cleanup
  %11694 = extractvalue { ptr, i32 } %11693, 0
  store ptr %11694, ptr %5, align 8
  %11695 = extractvalue { ptr, i32 } %11693, 1
  store i32 %11695, ptr %6, align 4
  br label %11700

11696:                                            ; preds = %11643
  %11697 = landingpad { ptr, i32 }
          cleanup
  %11698 = extractvalue { ptr, i32 } %11697, 0
  store ptr %11698, ptr %5, align 8
  %11699 = extractvalue { ptr, i32 } %11697, 1
  store i32 %11699, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %742) #5
  br label %11700

11700:                                            ; preds = %11696, %11692
  call void @llvm.lifetime.end.p0(i64 24, ptr %742) #5
  br label %11991

11701:                                            ; preds = %11646
  %11702 = landingpad { ptr, i32 }
          cleanup
  %11703 = extractvalue { ptr, i32 } %11702, 0
  store ptr %11703, ptr %5, align 8
  %11704 = extractvalue { ptr, i32 } %11702, 1
  store i32 %11704, ptr %6, align 4
  br label %11724

11705:                                            ; preds = %11647
  %11706 = landingpad { ptr, i32 }
          cleanup
  %11707 = extractvalue { ptr, i32 } %11706, 0
  store ptr %11707, ptr %5, align 8
  %11708 = extractvalue { ptr, i32 } %11706, 1
  store i32 %11708, ptr %6, align 4
  br label %11723

11709:                                            ; preds = %11649
  %11710 = landingpad { ptr, i32 }
          cleanup
  %11711 = extractvalue { ptr, i32 } %11710, 0
  store ptr %11711, ptr %5, align 8
  %11712 = extractvalue { ptr, i32 } %11710, 1
  store i32 %11712, ptr %6, align 4
  br label %11722

11713:                                            ; preds = %11652, %11650
  %11714 = landingpad { ptr, i32 }
          cleanup
  %11715 = extractvalue { ptr, i32 } %11714, 0
  store ptr %11715, ptr %5, align 8
  %11716 = extractvalue { ptr, i32 } %11714, 1
  store i32 %11716, ptr %6, align 4
  br label %11721

11717:                                            ; preds = %11653
  %11718 = landingpad { ptr, i32 }
          cleanup
  %11719 = extractvalue { ptr, i32 } %11718, 0
  store ptr %11719, ptr %5, align 8
  %11720 = extractvalue { ptr, i32 } %11718, 1
  store i32 %11720, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %743) #5
  br label %11721

11721:                                            ; preds = %11717, %11713
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %745) #5
  br label %11722

11722:                                            ; preds = %11721, %11709
  call void @llvm.lifetime.end.p0(i64 24, ptr %745) #5
  br label %11723

11723:                                            ; preds = %11722, %11705
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %744) #5
  br label %11724

11724:                                            ; preds = %11723, %11701
  call void @llvm.lifetime.end.p0(i64 24, ptr %744) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %743) #5
  br label %11991

11725:                                            ; preds = %11656
  %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 %11733

11729:                                            ; preds = %11657
  %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
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %746) #5
  br label %11733

11733:                                            ; preds = %11729, %11725
  call void @llvm.lifetime.end.p0(i64 24, ptr %746) #5
  br label %11991

11734:                                            ; preds = %11660
  %11735 = landingpad { ptr, i32 }
          cleanup
  %11736 = extractvalue { ptr, i32 } %11735, 0
  store ptr %11736, ptr %5, align 8
  %11737 = extractvalue { ptr, i32 } %11735, 1
  store i32 %11737, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %747) #5
  br label %11991

11738:                                            ; preds = %11668
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11739 unwind label %1024

11739:                                            ; preds = %11738
  call void @llvm.lifetime.start.p0(i64 1, ptr %748) #5
  store i8 0, ptr %748, align 1, !tbaa !9
  %11740 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11741 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11740, ptr noundef nonnull align 1 dereferenceable(1) %748)
          to label %11742 unwind label %11772

11742:                                            ; preds = %11739
  call void @llvm.lifetime.end.p0(i64 1, ptr %748) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11743 unwind label %1024

11743:                                            ; preds = %11742
  call void @llvm.lifetime.start.p0(i64 24, ptr %749) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %749, i32 noundef 768)
          to label %11744 unwind label %11776

11744:                                            ; preds = %11743
  %11745 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %11746 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11745, ptr noundef nonnull align 8 dereferenceable(24) %749)
          to label %11747 unwind label %11780

11747:                                            ; preds = %11744
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %749) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %749) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %750) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %750, i32 noundef 0)
          to label %11748 unwind label %11785

11748:                                            ; preds = %11747
  %11749 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %11750 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11749, ptr noundef nonnull align 8 dereferenceable(24) %750)
          to label %11751 unwind label %11789

11751:                                            ; preds = %11748
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %750) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %750) #5
  %11752 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 22
  %11753 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11752, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %11754 unwind label %1024

11754:                                            ; preds = %11751
  call void @llvm.lifetime.start.p0(i64 24, ptr %751) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %751, i32 noundef -2)
          to label %11755 unwind label %11794

11755:                                            ; preds = %11754
  %11756 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %11757 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11756, ptr noundef nonnull align 8 dereferenceable(24) %751)
          to label %11758 unwind label %11798

11758:                                            ; preds = %11755
  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 1, ptr %752) #5
  store i8 1, ptr %752, align 1, !tbaa !9
  %11759 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11760 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11759, ptr noundef nonnull align 1 dereferenceable(1) %752)
          to label %11761 unwind label %11803

11761:                                            ; preds = %11758
  call void @llvm.lifetime.end.p0(i64 1, ptr %752) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11762 unwind label %1024

11762:                                            ; preds = %11761
  br label %11763

11763:                                            ; preds = %11771, %11762
  %11764 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %11765 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11764)
          to label %11766 unwind label %1024

11766:                                            ; preds = %11763
  %11767 = load i8, ptr %11765, align 1, !tbaa !9, !range !11, !noundef !12
  %11768 = trunc i8 %11767 to i1
  %11769 = xor i1 %11768, true
  br i1 %11769, label %11770, label %11807

11770:                                            ; preds = %11766
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11771 unwind label %1024

11771:                                            ; preds = %11770
  br label %11763, !llvm.loop !153

11772:                                            ; preds = %11739
  %11773 = landingpad { ptr, i32 }
          cleanup
  %11774 = extractvalue { ptr, i32 } %11773, 0
  store ptr %11774, ptr %5, align 8
  %11775 = extractvalue { ptr, i32 } %11773, 1
  store i32 %11775, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %748) #5
  br label %11991

11776:                                            ; preds = %11743
  %11777 = landingpad { ptr, i32 }
          cleanup
  %11778 = extractvalue { ptr, i32 } %11777, 0
  store ptr %11778, ptr %5, align 8
  %11779 = extractvalue { ptr, i32 } %11777, 1
  store i32 %11779, ptr %6, align 4
  br label %11784

11780:                                            ; preds = %11744
  %11781 = landingpad { ptr, i32 }
          cleanup
  %11782 = extractvalue { ptr, i32 } %11781, 0
  store ptr %11782, ptr %5, align 8
  %11783 = extractvalue { ptr, i32 } %11781, 1
  store i32 %11783, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %749) #5
  br label %11784

11784:                                            ; preds = %11780, %11776
  call void @llvm.lifetime.end.p0(i64 24, ptr %749) #5
  br label %11991

11785:                                            ; preds = %11747
  %11786 = landingpad { ptr, i32 }
          cleanup
  %11787 = extractvalue { ptr, i32 } %11786, 0
  store ptr %11787, ptr %5, align 8
  %11788 = extractvalue { ptr, i32 } %11786, 1
  store i32 %11788, ptr %6, align 4
  br label %11793

11789:                                            ; preds = %11748
  %11790 = landingpad { ptr, i32 }
          cleanup
  %11791 = extractvalue { ptr, i32 } %11790, 0
  store ptr %11791, ptr %5, align 8
  %11792 = extractvalue { ptr, i32 } %11790, 1
  store i32 %11792, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %750) #5
  br label %11793

11793:                                            ; preds = %11789, %11785
  call void @llvm.lifetime.end.p0(i64 24, ptr %750) #5
  br label %11991

11794:                                            ; preds = %11754
  %11795 = landingpad { ptr, i32 }
          cleanup
  %11796 = extractvalue { ptr, i32 } %11795, 0
  store ptr %11796, ptr %5, align 8
  %11797 = extractvalue { ptr, i32 } %11795, 1
  store i32 %11797, ptr %6, align 4
  br label %11802

11798:                                            ; preds = %11755
  %11799 = landingpad { ptr, i32 }
          cleanup
  %11800 = extractvalue { ptr, i32 } %11799, 0
  store ptr %11800, ptr %5, align 8
  %11801 = extractvalue { ptr, i32 } %11799, 1
  store i32 %11801, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %751) #5
  br label %11802

11802:                                            ; preds = %11798, %11794
  call void @llvm.lifetime.end.p0(i64 24, ptr %751) #5
  br label %11991

11803:                                            ; preds = %11758
  %11804 = landingpad { ptr, i32 }
          cleanup
  %11805 = extractvalue { ptr, i32 } %11804, 0
  store ptr %11805, ptr %5, align 8
  %11806 = extractvalue { ptr, i32 } %11804, 1
  store i32 %11806, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %752) #5
  br label %11991

11807:                                            ; preds = %11766
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11808 unwind label %1024

11808:                                            ; preds = %11807
  call void @llvm.lifetime.start.p0(i64 1, ptr %753) #5
  store i8 0, ptr %753, align 1, !tbaa !9
  %11809 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11810 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11809, ptr noundef nonnull align 1 dereferenceable(1) %753)
          to label %11811 unwind label %11843

11811:                                            ; preds = %11808
  call void @llvm.lifetime.end.p0(i64 1, ptr %753) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11812 unwind label %1024

11812:                                            ; preds = %11811
  %11813 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 23
  %11814 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11813, ptr noundef nonnull align 8 dereferenceable(24) %12)
          to label %11815 unwind label %1024

11815:                                            ; preds = %11812
  call void @llvm.lifetime.start.p0(i64 24, ptr %754) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %755) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %755, i32 noundef 0)
          to label %11816 unwind label %11847

11816:                                            ; preds = %11815
  %11817 = 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) %755)
          to label %11818 unwind label %11851

11818:                                            ; preds = %11816
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %754, ptr noundef nonnull align 1 dereferenceable(1) %11817)
          to label %11819 unwind label %11851

11819:                                            ; preds = %11818
  %11820 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 24
  %11821 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11820, ptr noundef nonnull align 8 dereferenceable(24) %754)
          to label %11822 unwind label %11855

11822:                                            ; preds = %11819
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %754) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %755) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %755) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %754) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %756) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %756, i32 noundef 1)
          to label %11823 unwind label %11861

11823:                                            ; preds = %11822
  %11824 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 20
  %11825 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11824, ptr noundef nonnull align 8 dereferenceable(24) %756)
          to label %11826 unwind label %11865

11826:                                            ; preds = %11823
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %756) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %756) #5
  %11827 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 19
  %11828 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11827, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11829 unwind label %1024

11829:                                            ; preds = %11826
  call void @llvm.lifetime.start.p0(i64 1, ptr %757) #5
  store i8 1, ptr %757, align 1, !tbaa !9
  %11830 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11831 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11830, ptr noundef nonnull align 1 dereferenceable(1) %757)
          to label %11832 unwind label %11870

11832:                                            ; preds = %11829
  call void @llvm.lifetime.end.p0(i64 1, ptr %757) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11833 unwind label %1024

11833:                                            ; preds = %11832
  br label %11834

11834:                                            ; preds = %11842, %11833
  %11835 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 9
  %11836 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11835)
          to label %11837 unwind label %1024

11837:                                            ; preds = %11834
  %11838 = load i8, ptr %11836, align 1, !tbaa !9, !range !11, !noundef !12
  %11839 = trunc i8 %11838 to i1
  %11840 = xor i1 %11839, true
  br i1 %11840, label %11841, label %11874

11841:                                            ; preds = %11837
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11842 unwind label %1024

11842:                                            ; preds = %11841
  br label %11834, !llvm.loop !154

11843:                                            ; preds = %11808
  %11844 = landingpad { ptr, i32 }
          cleanup
  %11845 = extractvalue { ptr, i32 } %11844, 0
  store ptr %11845, ptr %5, align 8
  %11846 = extractvalue { ptr, i32 } %11844, 1
  store i32 %11846, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %753) #5
  br label %11991

11847:                                            ; preds = %11815
  %11848 = landingpad { ptr, i32 }
          cleanup
  %11849 = extractvalue { ptr, i32 } %11848, 0
  store ptr %11849, ptr %5, align 8
  %11850 = extractvalue { ptr, i32 } %11848, 1
  store i32 %11850, ptr %6, align 4
  br label %11860

11851:                                            ; preds = %11818, %11816
  %11852 = landingpad { ptr, i32 }
          cleanup
  %11853 = extractvalue { ptr, i32 } %11852, 0
  store ptr %11853, ptr %5, align 8
  %11854 = extractvalue { ptr, i32 } %11852, 1
  store i32 %11854, ptr %6, align 4
  br label %11859

11855:                                            ; preds = %11819
  %11856 = landingpad { ptr, i32 }
          cleanup
  %11857 = extractvalue { ptr, i32 } %11856, 0
  store ptr %11857, ptr %5, align 8
  %11858 = extractvalue { ptr, i32 } %11856, 1
  store i32 %11858, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %754) #5
  br label %11859

11859:                                            ; preds = %11855, %11851
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %755) #5
  br label %11860

11860:                                            ; preds = %11859, %11847
  call void @llvm.lifetime.end.p0(i64 24, ptr %755) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %754) #5
  br label %11991

11861:                                            ; preds = %11822
  %11862 = landingpad { ptr, i32 }
          cleanup
  %11863 = extractvalue { ptr, i32 } %11862, 0
  store ptr %11863, ptr %5, align 8
  %11864 = extractvalue { ptr, i32 } %11862, 1
  store i32 %11864, ptr %6, align 4
  br label %11869

11865:                                            ; preds = %11823
  %11866 = landingpad { ptr, i32 }
          cleanup
  %11867 = extractvalue { ptr, i32 } %11866, 0
  store ptr %11867, ptr %5, align 8
  %11868 = extractvalue { ptr, i32 } %11866, 1
  store i32 %11868, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %756) #5
  br label %11869

11869:                                            ; preds = %11865, %11861
  call void @llvm.lifetime.end.p0(i64 24, ptr %756) #5
  br label %11991

11870:                                            ; preds = %11829
  %11871 = landingpad { ptr, i32 }
          cleanup
  %11872 = extractvalue { ptr, i32 } %11871, 0
  store ptr %11872, ptr %5, align 8
  %11873 = extractvalue { ptr, i32 } %11871, 1
  store i32 %11873, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %757) #5
  br label %11991

11874:                                            ; preds = %11837
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11875 unwind label %1024

11875:                                            ; preds = %11874
  call void @llvm.lifetime.start.p0(i64 1, ptr %758) #5
  store i8 0, ptr %758, align 1, !tbaa !9
  %11876 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 21
  %11877 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11876, ptr noundef nonnull align 1 dereferenceable(1) %758)
          to label %11878 unwind label %11880

11878:                                            ; preds = %11875
  call void @llvm.lifetime.end.p0(i64 1, ptr %758) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11879 unwind label %1024

11879:                                            ; preds = %11878
  br label %11884

11880:                                            ; preds = %11875
  %11881 = landingpad { ptr, i32 }
          cleanup
  %11882 = extractvalue { ptr, i32 } %11881, 0
  store ptr %11882, ptr %5, align 8
  %11883 = extractvalue { ptr, i32 } %11881, 1
  store i32 %11883, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %758) #5
  br label %11991

11884:                                            ; preds = %11879, %11079
  br label %11889

11885:                                            ; preds = %2767
  %11886 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 3)
          to label %11887 unwind label %1024

11887:                                            ; preds = %11885
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11888 unwind label %1024

11888:                                            ; preds = %11887
  br label %11889

11889:                                            ; preds = %11888, %11884, %11067, %9253, %7741, %5648, %3934, %3542, %3525, %3506, %3271
  br label %11890

11890:                                            ; preds = %11889
  br label %11891

11891:                                            ; preds = %11890, %2531
  br label %11892

11892:                                            ; preds = %11891, %2624
  %11893 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %11894 unwind label %1024

11894:                                            ; preds = %11892
  %11895 = icmp ne i64 %11893, 0
  br i1 %11895, label %11896, label %11903

11896:                                            ; preds = %11894
  %11897 = 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 %11898 unwind label %1024

11898:                                            ; preds = %11896
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11899 unwind label %1024

11899:                                            ; preds = %11898
  %11900 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %39, i32 noundef 0)
          to label %11901 unwind label %1024

11901:                                            ; preds = %11899
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11902 unwind label %1024

11902:                                            ; preds = %11901
  br label %11905

11903:                                            ; preds = %11894
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11904 unwind label %1024

11904:                                            ; preds = %11903
  br label %11905

11905:                                            ; preds = %11904, %11902
  %11906 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %11907 = trunc i8 %11906 to i1
  %11908 = zext i1 %11907 to i32
  %11909 = icmp ne i32 %11908, 0
  br i1 %11909, label %11910, label %11988

11910:                                            ; preds = %11905
  call void @llvm.lifetime.start.p0(i64 24, ptr %759) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %759, i32 noundef 0)
          to label %11911 unwind label %11945

11911:                                            ; preds = %11910
  %11912 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %759, ptr noundef nonnull align 8 dereferenceable(8) %27)
          to label %11913 unwind label %11949

11913:                                            ; preds = %11911
  call void @llvm.lifetime.start.p0(i64 24, ptr %760) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %760, i32 noundef 0)
          to label %11914 unwind label %11953

11914:                                            ; preds = %11913
  %11915 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %11912, ptr noundef nonnull align 8 dereferenceable(8) %760)
          to label %11916 unwind label %11957

11916:                                            ; preds = %11914
  %11917 = 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) %11915)
          to label %11918 unwind label %11957

11918:                                            ; preds = %11916
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %760) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %760) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %759) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %759) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %761) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %761, i32 noundef -8192)
          to label %11919 unwind label %11964

11919:                                            ; preds = %11918
  %11920 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 14
  %11921 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11920, ptr noundef nonnull align 8 dereferenceable(24) %761)
          to label %11922 unwind label %11968

11922:                                            ; preds = %11919
  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
  %11923 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 15
  %11924 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11923, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %11925 unwind label %1024

11925:                                            ; preds = %11922
  call void @llvm.lifetime.start.p0(i64 1, ptr %762) #5
  store i8 0, ptr %762, align 1, !tbaa !9
  %11926 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 16
  %11927 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11926, ptr noundef nonnull align 1 dereferenceable(1) %762)
          to label %11928 unwind label %11973

11928:                                            ; preds = %11925
  call void @llvm.lifetime.end.p0(i64 1, ptr %762) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %763) #5
  store i8 1, ptr %763, align 1, !tbaa !9
  %11929 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %11930 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11929, ptr noundef nonnull align 1 dereferenceable(1) %763)
          to label %11931 unwind label %11977

11931:                                            ; preds = %11928
  call void @llvm.lifetime.end.p0(i64 1, ptr %763) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11932 unwind label %1024

11932:                                            ; preds = %11931
  br label %11933

11933:                                            ; preds = %11986, %11932
  br label %11934

11934:                                            ; preds = %11933
  call void @llvm.lifetime.start.p0(i64 1, ptr %764) #5
  store i8 0, ptr %764, align 1, !tbaa !9
  %11935 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 13
  %11936 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11935, ptr noundef nonnull align 1 dereferenceable(1) %764)
          to label %11937 unwind label %11981

11937:                                            ; preds = %11934
  call void @llvm.lifetime.end.p0(i64 1, ptr %764) #5
  %11938 = getelementptr inbounds %struct.EXC_CTRL, ptr %765, i32 0, i32 3
  %11939 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %11938)
          to label %11940 unwind label %1024

11940:                                            ; preds = %11937
  %11941 = load i8, ptr %11939, align 1, !tbaa !9, !range !11, !noundef !12
  %11942 = trunc i8 %11941 to i1
  br i1 %11942, label %11943, label %11985

11943:                                            ; preds = %11940
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11944 unwind label %1024

11944:                                            ; preds = %11943
  br label %11987

11945:                                            ; preds = %11910
  %11946 = landingpad { ptr, i32 }
          cleanup
  %11947 = extractvalue { ptr, i32 } %11946, 0
  store ptr %11947, ptr %5, align 8
  %11948 = extractvalue { ptr, i32 } %11946, 1
  store i32 %11948, ptr %6, align 4
  br label %11963

11949:                                            ; preds = %11911
  %11950 = landingpad { ptr, i32 }
          cleanup
  %11951 = extractvalue { ptr, i32 } %11950, 0
  store ptr %11951, ptr %5, align 8
  %11952 = extractvalue { ptr, i32 } %11950, 1
  store i32 %11952, ptr %6, align 4
  br label %11962

11953:                                            ; preds = %11913
  %11954 = landingpad { ptr, i32 }
          cleanup
  %11955 = extractvalue { ptr, i32 } %11954, 0
  store ptr %11955, ptr %5, align 8
  %11956 = extractvalue { ptr, i32 } %11954, 1
  store i32 %11956, ptr %6, align 4
  br label %11961

11957:                                            ; preds = %11916, %11914
  %11958 = landingpad { ptr, i32 }
          cleanup
  %11959 = extractvalue { ptr, i32 } %11958, 0
  store ptr %11959, ptr %5, align 8
  %11960 = extractvalue { ptr, i32 } %11958, 1
  store i32 %11960, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %760) #5
  br label %11961

11961:                                            ; preds = %11957, %11953
  call void @llvm.lifetime.end.p0(i64 24, ptr %760) #5
  br label %11962

11962:                                            ; preds = %11961, %11949
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %759) #5
  br label %11963

11963:                                            ; preds = %11962, %11945
  call void @llvm.lifetime.end.p0(i64 24, ptr %759) #5
  br label %11991

11964:                                            ; preds = %11918
  %11965 = landingpad { ptr, i32 }
          cleanup
  %11966 = extractvalue { ptr, i32 } %11965, 0
  store ptr %11966, ptr %5, align 8
  %11967 = extractvalue { ptr, i32 } %11965, 1
  store i32 %11967, ptr %6, align 4
  br label %11972

11968:                                            ; preds = %11919
  %11969 = landingpad { ptr, i32 }
          cleanup
  %11970 = extractvalue { ptr, i32 } %11969, 0
  store ptr %11970, ptr %5, align 8
  %11971 = extractvalue { ptr, i32 } %11969, 1
  store i32 %11971, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %761) #5
  br label %11972

11972:                                            ; preds = %11968, %11964
  call void @llvm.lifetime.end.p0(i64 24, ptr %761) #5
  br label %11991

11973:                                            ; preds = %11925
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %762) #5
  br label %11991

11977:                                            ; preds = %11928
  %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
  call void @llvm.lifetime.end.p0(i64 1, ptr %763) #5
  br label %11991

11981:                                            ; preds = %11934
  %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 @llvm.lifetime.end.p0(i64 1, ptr %764) #5
  br label %11991

11985:                                            ; preds = %11940
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11986 unwind label %1024

11986:                                            ; preds = %11985
  br label %11933, !llvm.loop !155

11987:                                            ; preds = %11944
  br label %11990

11988:                                            ; preds = %11905
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %765)
          to label %11989 unwind label %1024

11989:                                            ; preds = %11988
  br label %11990

11990:                                            ; preds = %11989, %11987
  br label %2370, !llvm.loop !156

11991:                                            ; preds = %11981, %11977, %11973, %11972, %11963, %11880, %11870, %11869, %11860, %11843, %11803, %11802, %11793, %11784, %11772, %11734, %11733, %11724, %11700, %11691, %11674, %11626, %11625, %11616, %11607, %11598, %11586, %11538, %11537, %11528, %11519, %11507, %11460, %11459, %11429, %11413, %11404, %11387, %11355, %11354, %11345, %11328, %11288, %11287, %11278, %11269, %11252, %11208, %11207, %11198, %11164, %11138, %11129, %11063, %11053, %11052, %11043, %11034, %11022, %10980, %10979, %10970, %10961, %10952, %10940, %10892, %10891, %10882, %10873, %10864, %10852, %10804, %10803, %10794, %10785, %10771, %10759, %10712, %10711, %10702, %10688, %10676, %10635, %10634, %10625, %10616, %10602, %10590, %10545, %10544, %10535, %10526, %10512, %10462, %10458, %10454, %10453, %10441, %10399, %10398, %10389, %10375, %10358, %10314, %10313, %10304, %10295, %10281, %10222, %10218, %10214, %10213, %10201, %10158, %10157, %10148, %10134, %10122, %10081, %10080, %10071, %10062, %10050, %10009, %10008, %9999, %9990, %9978, %9937, %9936, %9906, %9897, %9888, %9862, %9853, %9844, %9835, %9821, %9809, %9766, %9765, %9756, %9742, %9730, %9689, %9688, %9679, %9670, %9656, %9644, %9599, %9598, %9589, %9580, %9566, %9516, %9512, %9508, %9507, %9495, %9453, %9452, %9443, %9429, %9412, %9368, %9367, %9358, %9349, %9335, %9237, %9233, %9229, %9189, %9185, %9181, %9136, %9132, %9128, %9085, %9061, %9057, %9053, %9052, %9043, %8984, %8980, %8976, %8975, %8930, %8893, %8889, %8885, %8849, %8845, %8841, %8807, %8775, %8771, %8767, %8766, %8715, %8705, %8704, %8695, %8686, %8677, %8615, %8605, %8604, %8595, %8552, %8517, %8507, %8506, %8476, %8462, %8442, %8428, %8419, %8359, %8349, %8348, %8318, %8304, %8295, %8286, %8238, %8228, %8227, %8197, %8183, %8174, %8165, %8117, %8107, %8106, %8097, %8088, %8034, %8030, %8026, %7994, %7962, %7958, %7954, %7953, %7873, %7869, %7865, %7864, %7810, %7806, %7802, %7801, %7734, %7724, %7723, %7714, %7697, %7657, %7656, %7647, %7633, %7616, %7572, %7571, %7562, %7548, %7534, %7464, %7460, %7456, %7455, %7402, %7398, %7394, %7393, %7339, %7335, %7331, %7284, %7248, %7244, %7240, %7239, %7230, %7158, %7154, %7150, %7149, %7103, %7089, %7088, %6996, %6992, %6988, %6987, %6978, %6919, %6915, %6911, %6910, %6857, %6853, %6849, %6845, %6806, %6805, %6796, %6787, %6722, %6712, %6711, %6702, %6693, %6679, %6629, %6619, %6618, %6609, %6600, %6554, %6540, %6516, %6506, %6505, %6496, %6454, %6440, %6421, %6405, %6380, %6370, %6369, %6360, %6351, %6305, %6291, %6267, %6257, %6256, %6247, %6238, %6192, %6178, %6154, %6144, %6143, %6134, %6125, %6079, %6065, %6038, %6034, %6030, %6029, %6020, %5961, %5957, %5953, %5952, %5904, %5900, %5896, %5895, %5847, %5843, %5839, %5838, %5829, %5752, %5748, %5744, %5743, %5644, %5634, %5633, %5624, %5607, %5567, %5566, %5557, %5548, %5534, %5476, %5472, %5468, %5467, %5458, %5408, %5404, %5400, %5399, %5324, %5320, %5316, %5315, %5264, %5260, %5256, %5255, %5205, %5201, %5197, %5196, %5140, %5136, %5132, %5131, %5060, %5050, %5049, %5040, %4990, %4986, %4982, %4981, %4934, %4930, %4926, %4887, %4883, %4879, %4849, %4822, %4818, %4814, %4813, %4763, %4759, %4755, %4754, %4742, %4694, %4693, %4684, %4675, %4663, %4625, %4624, %4615, %4591, %4582, %4524, %4520, %4516, %4476, %4472, %4468, %4432, %4428, %4424, %4423, %4372, %4368, %4364, %4327, %4323, %4319, %4318, %4267, %4263, %4259, %4222, %4218, %4214, %4213, %4153, %4149, %4145, %4144, %4099, %4090, %4060, %4051, %4006, %4002, %3998, %3997, %3930, %3920, %3919, %3910, %3860, %3856, %3852, %3851, %3804, %3800, %3796, %3795, %3783, %3741, %3740, %3731, %3722, %3710, %3672, %3671, %3662, %3638, %3629, %3499, %3495, %3491, %3452, %3448, %3444, %3408, %3404, %3400, %3399, %3340, %3336, %3332, %3331, %3267, %3257, %3256, %3247, %3238, %3226, %3184, %3183, %3174, %3150, %3053, %3049, %3045, %3044, %3032, %2989, %2988, %2979, %2965, %2953, %2912, %2911, %2902, %2878, %2739, %2735, %2731, %2730, %2718, %2714, %2638, %2634, %2633, %2587, %2583, %2579, %2578, %2508, %2504, %2500, %2496, %2492, %2488, %2422, %2421, %2412, %2361, %2357, %2353, %2322, %2240, %2236, %2232, %2231, %2135, %2131, %2127, %2088, %2084, %2080, %2039, %2029, %2028, %2019, %2007, %1976, %1975, %1966, %1957, %1945, %1910, %1909, %1900, %1888, %1857, %1856, %1847, %1838, %1829, %1785, %1781, %1777, %1773, %1734, %1733, %1724, %1688, %1684, %1680, %1676, %1637, %1636, %1627, %1618, %1583, %1565, %1553, %1526, %1525, %1516, %1507, %1498, %1454, %1450, %1446, %1445, %1436, %1424, %1385, %1384, %1375, %1339, %1335, %1331, %1330, %1321, %1309, %1270, %1269, %1260, %1251, %1242, %1198, %1194, %1190, %1154, %1150, %1146, %1096, %1092, %1088, %1052, %1048, %1044, %1040, %1036, %1032, %1028, %1024
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %39) #5
  br label %11992

11992:                                            ; preds = %11991, %1020
  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 %11993

11993:                                            ; preds = %11992, %1016
  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 %11994

11994:                                            ; preds = %11993, %1012
  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 %11995

11995:                                            ; preds = %11994, %1008
  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 %11996

11996:                                            ; preds = %11995, %1004
  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 %11997

11997:                                            ; preds = %11996, %1000
  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 %11998

11998:                                            ; preds = %11997, %996
  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 %11999

11999:                                            ; preds = %11998, %992
  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 %12000

12000:                                            ; preds = %11999, %988
  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 %12001

12001:                                            ; preds = %12000, %984
  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 %12002

12002:                                            ; preds = %12001, %980
  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 %12003

12003:                                            ; preds = %12002, %976
  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 %12004

12004:                                            ; preds = %12003, %972
  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 %12005

12005:                                            ; preds = %12004, %968
  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 %12006

12006:                                            ; preds = %12005, %964
  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 %12007

12007:                                            ; preds = %12006, %960
  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 %12008

12008:                                            ; preds = %12007, %956
  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 %12009

12009:                                            ; preds = %12008, %952
  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 %12010

12010:                                            ; preds = %12009, %948
  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 %12011

12011:                                            ; preds = %12010, %944
  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 %12012

12012:                                            ; preds = %12011, %940
  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 %12013

12013:                                            ; preds = %12012, %936
  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 %12014

12014:                                            ; preds = %12013, %932
  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 %12015

12015:                                            ; preds = %12014, %928
  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 %12016

12016:                                            ; preds = %12015, %924
  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 %12017

12017:                                            ; preds = %12016, %920
  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 %12018

12018:                                            ; preds = %12017, %916
  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 %12019

12019:                                            ; preds = %12018, %912
  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 %12020

12020:                                            ; preds = %12019, %908
  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 %12021

12021:                                            ; preds = %12020, %904
  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 %12022

12022:                                            ; preds = %12021
  %12023 = load ptr, ptr %5, align 8
  %12024 = load i32, ptr %6, align 4
  %12025 = insertvalue { ptr, i32 } poison, ptr %12023, 0
  %12026 = insertvalue { ptr, i32 } %12025, i32 %12024, 1
  resume { ptr, i32 } %12026
}

; 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 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: 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: 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 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 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 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 noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi32EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #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: 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" }

; 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.107", 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.107", 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.107", 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 i8, align 1
  %144 = alloca i8, align 1
  %145 = alloca i8, align 1
  %146 = alloca i8, align 1
  %147 = alloca %"class.sc_dt::sc_int.0", align 8
  %148 = alloca i8, align 1
  %149 = alloca i8, align 1
  %150 = alloca i8, align 1
  %151 = alloca %"class.sc_dt::sc_int.1", align 8
  %152 = alloca %"class.sc_dt::sc_int.107", align 8
  %153 = alloca %"class.sc_dt::sc_int.7", align 8
  %154 = alloca %"class.sc_dt::sc_int.107", align 8
  %155 = alloca %"class.sc_dt::sc_int.1", align 8
  %156 = alloca %"class.sc_dt::sc_int.0", align 8
  %157 = alloca %"class.sc_dt::sc_int.107", align 8
  %158 = alloca %"class.sc_dt::sc_int.8", align 8
  %159 = alloca i8, align 1
  %160 = alloca i8, align 1
  %161 = alloca %"class.sc_dt::sc_int.1", align 8
  %162 = alloca %"class.sc_dt::sc_int.1", align 8
  %163 = alloca %"class.sc_dt::sc_int.107", align 8
  %164 = alloca %"class.sc_dt::sc_int.8", align 8
  %165 = alloca i8, align 1
  %166 = alloca i8, align 1
  %167 = alloca %"class.sc_dt::sc_int.1", align 8
  %168 = alloca i8, align 1
  %169 = alloca i8, align 1
  %170 = alloca i8, align 1
  %171 = alloca %"class.sc_dt::sc_int.1", align 8
  %172 = alloca %"class.sc_dt::sc_int.107", align 8
  %173 = alloca %"class.sc_dt::sc_int.7", align 8
  %174 = alloca %"class.sc_dt::sc_int.107", align 8
  %175 = alloca %"class.sc_dt::sc_int.1", align 8
  %176 = alloca %"class.sc_dt::sc_int.0", align 8
  %177 = alloca %"class.sc_dt::sc_int.107", align 8
  %178 = alloca %"class.sc_dt::sc_int.8", align 8
  %179 = alloca i8, align 1
  %180 = alloca i8, align 1
  %181 = alloca %"class.sc_dt::sc_int.1", align 8
  %182 = alloca %"class.sc_dt::sc_int.1", align 8
  %183 = alloca %"class.sc_dt::sc_int.8", align 8
  %184 = alloca i8, align 1
  %185 = alloca i8, align 1
  %186 = alloca %"class.sc_dt::sc_int.0", align 8
  %187 = alloca i8, align 1
  %188 = alloca i8, align 1
  %189 = alloca i8, align 1
  %190 = alloca %"class.sc_dt::sc_int.0", align 8
  %191 = alloca i8, align 1
  %192 = alloca i8, align 1
  %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 %"class.sc_dt::sc_int.1", align 8
  %201 = alloca %"class.sc_dt::sc_int.107", align 8
  %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.107", align 8
  %205 = alloca %"class.sc_dt::sc_int.107", align 8
  %206 = alloca %"class.sc_dt::sc_int.8", align 8
  %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.1", align 8
  %211 = alloca %"class.sc_dt::sc_int.8", align 8
  %212 = alloca i8, align 1
  %213 = alloca i8, align 1
  %214 = alloca %"class.sc_dt::sc_int.0", align 8
  %215 = alloca i8, align 1
  %216 = alloca i8, align 1
  %217 = alloca i8, align 1
  %218 = alloca %"class.sc_dt::sc_int.0", align 8
  %219 = alloca i8, align 1
  %220 = alloca i8, align 1
  %221 = alloca i8, align 1
  %222 = alloca %"class.sc_dt::sc_int.1", align 8
  %223 = alloca %"class.sc_dt::sc_int.107", align 8
  %224 = alloca %"class.sc_dt::sc_int.8", align 8
  %225 = alloca i8, align 1
  %226 = alloca i8, align 1
  %227 = alloca %"class.sc_dt::sc_int.0", align 8
  %228 = alloca i8, align 1
  %229 = alloca i8, align 1
  %230 = alloca i8, align 1
  %231 = alloca %"class.sc_dt::sc_int.0", align 8
  %232 = alloca %"class.sc_dt::sc_int.0", align 8
  %233 = alloca %"class.sc_dt::sc_int.0", align 8
  %234 = alloca %"class.sc_dt::sc_int.0", align 8
  %235 = alloca %"class.sc_dt::sc_int.0", align 8
  %236 = alloca i8, align 1
  %237 = alloca i8, align 1
  %238 = alloca i8, align 1
  %239 = alloca %"class.sc_dt::sc_int.107", align 8
  %240 = alloca i8, align 1
  %241 = alloca i8, align 1
  %242 = alloca i8, align 1
  %243 = alloca i8, align 1
  %244 = alloca i8, align 1
  %245 = alloca i8, align 1
  %246 = alloca %"class.sc_dt::sc_int.107", align 8
  %247 = alloca i8, align 1
  %248 = alloca i8, align 1
  %249 = alloca i8, align 1
  %250 = alloca i8, align 1
  %251 = alloca i8, align 1
  %252 = alloca i8, align 1
  %253 = alloca %"class.sc_dt::sc_int.0", align 8
  %254 = alloca i8, align 1
  %255 = alloca i8, align 1
  %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 %"class.sc_dt::sc_int.1", align 8
  %264 = alloca %"class.sc_dt::sc_int.107", align 8
  %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.107", align 8
  %268 = alloca %"class.sc_dt::sc_int.107", align 8
  %269 = alloca %"class.sc_dt::sc_int.8", align 8
  %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.1", align 8
  %274 = alloca %"class.sc_dt::sc_int.8", align 8
  %275 = alloca i8, align 1
  %276 = alloca i8, align 1
  %277 = alloca %"class.sc_dt::sc_int.0", align 8
  %278 = alloca i8, align 1
  %279 = alloca i8, align 1
  %280 = alloca i8, align 1
  %281 = alloca %"class.sc_dt::sc_int.107", align 8
  %282 = alloca i8, align 1
  %283 = alloca i8, align 1
  %284 = alloca i8, align 1
  %285 = alloca %"class.sc_dt::sc_int.0", align 8
  %286 = alloca i8, align 1
  %287 = alloca i8, align 1
  %288 = alloca i8, align 1
  %289 = alloca i8, align 1
  %290 = alloca i8, align 1
  %291 = alloca i8, align 1
  %292 = alloca %"class.sc_dt::sc_int.0", align 8
  %293 = alloca i8, align 1
  %294 = alloca i8, align 1
  %295 = alloca i8, align 1
  %296 = alloca %"class.sc_dt::sc_int.1", align 8
  %297 = alloca %"class.sc_dt::sc_int.107", align 8
  %298 = alloca %"class.sc_dt::sc_int.8", align 8
  %299 = alloca i8, align 1
  %300 = alloca i8, align 1
  %301 = alloca %"class.sc_dt::sc_int.0", align 8
  %302 = alloca i8, align 1
  %303 = alloca i8, align 1
  %304 = alloca i8, align 1
  %305 = alloca %"class.sc_dt::sc_int.0", align 8
  %306 = alloca i8, align 1
  %307 = alloca i8, align 1
  %308 = alloca i8, align 1
  %309 = alloca %"class.sc_dt::sc_int.0", align 8
  %310 = alloca i8, align 1
  %311 = alloca i8, align 1
  %312 = alloca i8, align 1
  %313 = alloca %"class.sc_dt::sc_int.0", align 8
  %314 = alloca i8, align 1
  %315 = alloca i8, align 1
  %316 = alloca i8, align 1
  %317 = alloca %"class.sc_dt::sc_int.107", align 8
  %318 = alloca i8, align 1
  %319 = alloca i8, align 1
  %320 = alloca i8, align 1
  %321 = alloca %"class.sc_dt::sc_int.107", align 8
  %322 = alloca %"class.sc_dt::sc_int.107", align 8
  %323 = alloca i8, align 1
  %324 = alloca i8, align 1
  %325 = alloca i8, align 1
  %326 = alloca %"class.sc_dt::sc_int.1", align 8
  %327 = alloca %"class.sc_dt::sc_int.0", align 8
  %328 = alloca %"class.sc_dt::sc_int.1", align 8
  %329 = alloca %"class.sc_dt::sc_int.0", align 8
  %330 = alloca %"class.sc_dt::sc_int.5", align 8
  %331 = alloca %"class.sc_dt::sc_int.8", align 8
  %332 = alloca i8, align 1
  %333 = alloca i8, align 1
  %334 = alloca %"class.sc_dt::sc_int.1", align 8
  %335 = alloca %"class.sc_dt::sc_int.107", align 8
  %336 = alloca %"class.sc_dt::sc_int.8", align 8
  %337 = alloca i8, align 1
  %338 = alloca i8, align 1
  %339 = alloca %"class.sc_dt::sc_int.0", align 8
  %340 = alloca i8, align 1
  %341 = alloca i8, align 1
  %342 = alloca i8, align 1
  %343 = alloca %"class.sc_dt::sc_int.0", align 8
  %344 = alloca %"class.sc_dt::sc_int.108", align 8
  %345 = alloca i8, align 1
  %346 = alloca i8, align 1
  %347 = alloca i8, align 1
  %348 = alloca %"class.sc_dt::sc_int.0", align 8
  %349 = alloca i8, align 1
  %350 = alloca i8, align 1
  %351 = alloca i8, align 1
  %352 = alloca %"class.sc_dt::sc_int.0", align 8
  %353 = alloca i8, align 1
  %354 = alloca i8, align 1
  %355 = alloca i8, align 1
  %356 = alloca %"class.sc_dt::sc_int.0", align 8
  %357 = alloca %"class.sc_dt::sc_int.107", align 8
  %358 = alloca i8, align 1
  %359 = alloca i8, align 1
  %360 = alloca i8, align 1
  %361 = alloca %"class.sc_dt::sc_int.1", align 8
  %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.0", align 8
  %365 = alloca %"class.sc_dt::sc_int.5", align 8
  %366 = alloca %"class.sc_dt::sc_int.8", align 8
  %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.0", 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.0", 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.5", align 8
  %386 = alloca %"class.sc_dt::sc_int.5", align 8
  %387 = alloca %"class.sc_dt::sc_int.1", 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.0", align 8
  %391 = alloca %"class.sc_dt::sc_int.8", align 8
  %392 = alloca i8, align 1
  %393 = alloca i8, align 1
  %394 = alloca %"class.sc_dt::sc_int.1", 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.0", 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.0", align 8
  %405 = alloca %"class.sc_dt::sc_int.5", align 8
  %406 = alloca %"class.sc_dt::sc_int.8", align 8
  %407 = alloca i8, align 1
  %408 = alloca i8, align 1
  %409 = alloca %"class.sc_dt::sc_int.1", align 8
  %410 = alloca %"class.sc_dt::sc_int.0", align 8
  %411 = alloca %"class.sc_dt::sc_int.5", align 8
  %412 = alloca %"class.sc_dt::sc_int.8", align 8
  %413 = alloca i8, align 1
  %414 = alloca i8, align 1
  %415 = alloca i8, align 1
  %416 = alloca i8, align 1
  %417 = alloca i8, align 1
  %418 = alloca %"class.sc_dt::sc_int.0", align 8
  %419 = alloca i8, align 1
  %420 = alloca i8, align 1
  %421 = alloca i8, align 1
  %422 = alloca %"class.sc_dt::sc_int.0", align 8
  %423 = alloca %"class.sc_dt::sc_int.0", align 8
  %424 = alloca i8, align 1
  %425 = alloca i8, align 1
  %426 = alloca i8, align 1
  %427 = alloca %"class.sc_dt::sc_int.8", align 8
  %428 = alloca i8, align 1
  %429 = alloca i8, align 1
  %430 = alloca %"class.sc_dt::sc_int.1", align 8
  %431 = alloca i8, align 1
  %432 = alloca i8, align 1
  %433 = alloca i8, align 1
  %434 = alloca %"class.sc_dt::sc_int.0", align 8
  %435 = alloca %"class.sc_dt::sc_int.0", align 8
  %436 = alloca i8, align 1
  %437 = alloca i8, align 1
  %438 = alloca i8, align 1
  %439 = alloca %"class.sc_dt::sc_int.5", align 8
  %440 = alloca i8, align 1
  %441 = alloca i8, align 1
  %442 = alloca i8, align 1
  %443 = alloca %"class.sc_dt::sc_int.107", 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.1", align 8
  %452 = alloca %"class.sc_dt::sc_int.1", align 8
  %453 = alloca %"class.sc_dt::sc_int.107", align 8
  %454 = alloca %"class.sc_dt::sc_int.5", align 8
  %455 = alloca %"class.sc_dt::sc_int.107", align 8
  %456 = alloca %"class.sc_dt::sc_int.8", align 8
  %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.0", align 8
  %461 = alloca %"class.sc_dt::sc_int.1", align 8
  %462 = alloca %"class.sc_dt::sc_int.107", align 8
  %463 = alloca %"class.sc_dt::sc_int.8", align 8
  %464 = alloca i8, align 1
  %465 = alloca i8, align 1
  %466 = alloca %"class.sc_dt::sc_int.1", align 8
  %467 = alloca %"class.sc_dt::sc_int.107", align 8
  %468 = alloca %"class.sc_dt::sc_int.8", align 8
  %469 = alloca i8, align 1
  %470 = alloca i8, align 1
  %471 = alloca %"class.sc_dt::sc_int.107", align 8
  %472 = alloca i8, align 1
  %473 = alloca i8, align 1
  %474 = alloca i8, align 1
  %475 = alloca %"class.sc_dt::sc_int.0", align 8
  %476 = alloca i8, align 1
  %477 = alloca i8, align 1
  %478 = alloca i8, align 1
  %479 = alloca %"class.sc_dt::sc_int.0", align 8
  %480 = alloca i8, align 1
  %481 = alloca i8, align 1
  %482 = alloca i8, align 1
  %483 = alloca %"class.sc_dt::sc_int.107", align 8
  %484 = alloca i8, align 1
  %485 = alloca i8, align 1
  %486 = alloca i8, align 1
  %487 = alloca %"class.sc_dt::sc_int.1", align 8
  %488 = alloca %"class.sc_dt::sc_int.0", align 8
  %489 = alloca %"class.sc_dt::sc_int.5", align 8
  %490 = alloca %"class.sc_dt::sc_int.8", align 8
  %491 = alloca i8, align 1
  %492 = alloca i8, align 1
  %493 = alloca %"class.sc_dt::sc_int.1", align 8
  %494 = alloca %"class.sc_dt::sc_int.0", align 8
  %495 = alloca %"class.sc_dt::sc_int.5", align 8
  %496 = alloca %"class.sc_dt::sc_int.1", align 8
  %497 = alloca %"class.sc_dt::sc_int.1", 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.0", 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.0", 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.1", align 8
  %514 = alloca %"class.sc_dt::sc_int.1", align 8
  %515 = alloca %"class.sc_dt::sc_int.8", align 8
  %516 = alloca i8, align 1
  %517 = alloca i8, align 1
  %518 = alloca %"class.sc_dt::sc_int.0", align 8
  %519 = alloca %"class.sc_dt::sc_int.5", align 8
  %520 = alloca %"class.sc_dt::sc_int.8", align 8
  %521 = alloca i8, align 1
  %522 = alloca i8, align 1
  %523 = alloca %"class.sc_dt::sc_int.1", align 8
  %524 = alloca %"class.sc_dt::sc_int.0", align 8
  %525 = alloca %"class.sc_dt::sc_int.1", align 8
  %526 = alloca %"class.sc_dt::sc_int.5", align 8
  %527 = alloca %"class.sc_dt::sc_int.8", align 8
  %528 = alloca i8, align 1
  %529 = alloca i8, align 1
  %530 = alloca %"class.sc_dt::sc_int.0", align 8
  %531 = alloca i8, align 1
  %532 = alloca i8, align 1
  %533 = alloca i8, align 1
  %534 = alloca %"class.sc_dt::sc_int.0", align 8
  %535 = alloca i8, align 1
  %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 %"class.sc_dt::sc_int.107", align 8
  %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 %"class.sc_dt::sc_int.107", align 8
  %547 = alloca %"class.sc_dt::sc_int.107", align 8
  %548 = alloca %"class.sc_dt::sc_int.1", align 8
  %549 = alloca i8, align 1
  %550 = alloca i8, align 1
  %551 = alloca i8, align 1
  %552 = alloca %"class.sc_dt::sc_int.0", align 8
  %553 = alloca i8, align 1
  %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 %"class.sc_dt::sc_int.1", align 8
  %563 = alloca %"class.sc_dt::sc_int.107", align 8
  %564 = alloca %"class.sc_dt::sc_int.1", align 8
  %565 = alloca %"class.sc_dt::sc_int.107", align 8
  %566 = alloca %"class.sc_dt::sc_int.5", align 8
  %567 = alloca %"class.sc_dt::sc_int.8", align 8
  %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.107", align 8
  %572 = alloca %"class.sc_dt::sc_int.1", align 8
  %573 = alloca %"class.sc_dt::sc_int.107", align 8
  %574 = alloca %"class.sc_dt::sc_int.8", align 8
  %575 = alloca i8, align 1
  %576 = alloca i8, align 1
  %577 = alloca %"class.sc_dt::sc_int.0", align 8
  %578 = alloca i8, align 1
  %579 = alloca i8, align 1
  %580 = alloca i8, align 1
  %581 = alloca %"class.sc_dt::sc_int.1", align 8
  %582 = alloca %"class.sc_dt::sc_int.1", align 8
  %583 = alloca %"class.sc_dt::sc_int.0", align 8
  %584 = alloca %"class.sc_dt::sc_int.5", align 8
  %585 = alloca %"class.sc_dt::sc_int.8", align 8
  %586 = alloca i8, align 1
  %587 = alloca i8, align 1
  %588 = alloca %"class.sc_dt::sc_int.1", align 8
  %589 = alloca %"class.sc_dt::sc_int.1", align 8
  %590 = alloca %"class.sc_dt::sc_int.0", align 8
  %591 = alloca %"class.sc_dt::sc_int.5", align 8
  %592 = alloca %"class.sc_dt::sc_int.8", align 8
  %593 = alloca i8, align 1
  %594 = alloca i8, align 1
  %595 = alloca %"class.sc_dt::sc_int.1", align 8
  %596 = alloca %"class.sc_dt::sc_int.1", align 8
  %597 = alloca %"class.sc_dt::sc_int.0", align 8
  %598 = alloca %"class.sc_dt::sc_int.8", align 8
  %599 = alloca i8, align 1
  %600 = alloca i8, align 1
  %601 = alloca %"class.sc_dt::sc_int.1", align 8
  %602 = alloca %"class.sc_dt::sc_int.1", align 8
  %603 = alloca %"class.sc_dt::sc_int.0", align 8
  %604 = alloca %"class.sc_dt::sc_int.0", align 8
  %605 = alloca %"class.sc_dt::sc_int.0", align 8
  %606 = alloca %"class.sc_dt::sc_int.5", align 8
  %607 = alloca %"class.sc_dt::sc_int.0", align 8
  %608 = alloca %"class.sc_dt::sc_int.0", align 8
  %609 = alloca %"class.sc_dt::sc_int.5", align 8
  %610 = alloca %"class.sc_dt::sc_int.8", align 8
  %611 = alloca i8, align 1
  %612 = alloca i8, align 1
  %613 = alloca %"class.sc_dt::sc_int.1", align 8
  %614 = alloca %"class.sc_dt::sc_int.5", align 8
  %615 = alloca %"class.sc_dt::sc_int.8", align 8
  %616 = alloca i8, align 1
  %617 = alloca i8, align 1
  %618 = alloca %"class.sc_dt::sc_int.1", align 8
  %619 = alloca %"class.sc_dt::sc_int.5", align 8
  %620 = alloca %"class.sc_dt::sc_int.8", align 8
  %621 = alloca i8, align 1
  %622 = alloca i8, align 1
  %623 = alloca %"class.sc_dt::sc_int.1", align 8
  %624 = alloca %"class.sc_dt::sc_int.1", align 8
  %625 = alloca %"class.sc_dt::sc_int.107", align 8
  %626 = alloca %"class.sc_dt::sc_int.8", align 8
  %627 = alloca i8, align 1
  %628 = alloca i8, align 1
  %629 = alloca %"class.sc_dt::sc_int.1", align 8
  %630 = alloca i8, align 1
  %631 = alloca i8, align 1
  %632 = alloca i8, align 1
  %633 = alloca %"class.sc_dt::sc_int.1", align 8
  %634 = alloca %"class.sc_dt::sc_int.107", align 8
  %635 = alloca %"class.sc_dt::sc_int.1", align 8
  %636 = alloca %"class.sc_dt::sc_int.107", align 8
  %637 = alloca %"class.sc_dt::sc_int.5", align 8
  %638 = alloca %"class.sc_dt::sc_int.8", align 8
  %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.107", align 8
  %643 = alloca %"class.sc_dt::sc_int.1", align 8
  %644 = alloca %"class.sc_dt::sc_int.107", align 8
  %645 = alloca %"class.sc_dt::sc_int.8", align 8
  %646 = alloca i8, align 1
  %647 = alloca i8, align 1
  %648 = alloca %"class.sc_dt::sc_int.0", align 8
  %649 = alloca i8, align 1
  %650 = alloca i8, align 1
  %651 = alloca i8, align 1
  %652 = alloca %"class.sc_dt::sc_int.1", align 8
  %653 = alloca %"class.sc_dt::sc_int.1", align 8
  %654 = alloca %"class.sc_dt::sc_int.0", align 8
  %655 = alloca %"class.sc_dt::sc_int.5", align 8
  %656 = alloca %"class.sc_dt::sc_int.8", align 8
  %657 = alloca i8, align 1
  %658 = alloca i8, align 1
  %659 = alloca %"class.sc_dt::sc_int.1", align 8
  %660 = alloca %"class.sc_dt::sc_int.1", align 8
  %661 = alloca %"class.sc_dt::sc_int.0", align 8
  %662 = alloca %"class.sc_dt::sc_int.5", align 8
  %663 = alloca %"class.sc_dt::sc_int.8", align 8
  %664 = alloca i8, align 1
  %665 = alloca i8, align 1
  %666 = alloca %"class.sc_dt::sc_int.1", align 8
  %667 = alloca %"class.sc_dt::sc_int.1", align 8
  %668 = alloca %"class.sc_dt::sc_int.0", align 8
  %669 = alloca %"class.sc_dt::sc_int.8", align 8
  %670 = alloca i8, align 1
  %671 = alloca i8, align 1
  %672 = alloca %"class.sc_dt::sc_int.1", align 8
  %673 = alloca %"class.sc_dt::sc_int.1", align 8
  %674 = alloca %"class.sc_dt::sc_int.0", align 8
  %675 = alloca %"class.sc_dt::sc_int.5", align 8
  %676 = alloca %"class.sc_dt::sc_int.8", align 8
  %677 = alloca i8, align 1
  %678 = alloca i8, align 1
  %679 = alloca %"class.sc_dt::sc_int.1", align 8
  %680 = alloca %"class.sc_dt::sc_int.1", align 8
  %681 = alloca %"class.sc_dt::sc_int.5", align 8
  %682 = alloca %"class.sc_dt::sc_int.8", align 8
  %683 = alloca i8, align 1
  %684 = alloca i8, align 1
  %685 = alloca %"class.sc_dt::sc_int.1", align 8
  %686 = alloca %"class.sc_dt::sc_int.1", align 8
  %687 = alloca %"class.sc_dt::sc_int.5", align 8
  %688 = alloca %"class.sc_dt::sc_int.8", align 8
  %689 = alloca i8, align 1
  %690 = alloca i8, align 1
  %691 = alloca %"class.sc_dt::sc_int.1", align 8
  %692 = alloca %"class.sc_dt::sc_int.1", align 8
  %693 = alloca %"class.sc_dt::sc_int.8", align 8
  %694 = alloca i8, align 1
  %695 = alloca i8, align 1
  %696 = alloca %"class.sc_dt::sc_int.1", align 8
  %697 = alloca %"class.sc_dt::sc_int.0", align 8
  %698 = alloca %"class.sc_dt::sc_int.1", align 8
  %699 = alloca %"class.sc_dt::sc_int.1", align 8
  %700 = alloca %"class.sc_dt::sc_int.5", align 8
  %701 = alloca %"class.sc_dt::sc_int.8", align 8
  %702 = alloca i8, align 1
  %703 = alloca i8, align 1
  %704 = alloca %"class.sc_dt::sc_int.1", align 8
  %705 = alloca %"class.sc_dt::sc_int.0", align 8
  %706 = alloca %"class.sc_dt::sc_int.5", align 8
  %707 = alloca %"class.sc_dt::sc_int.8", align 8
  %708 = alloca i8, align 1
  %709 = alloca i8, align 1
  %710 = alloca %"class.sc_dt::sc_int.1", align 8
  %711 = alloca %"class.sc_dt::sc_int.0", align 8
  %712 = alloca %"class.sc_dt::sc_int.8", align 8
  %713 = alloca i8, align 1
  %714 = alloca i8, align 1
  %715 = alloca %"class.sc_dt::sc_int.1", align 8
  %716 = alloca %"class.sc_dt::sc_int.0", align 8
  %717 = alloca %"class.sc_dt::sc_int.5", align 8
  %718 = alloca %"class.sc_dt::sc_int.5", align 8
  %719 = alloca %"class.sc_dt::sc_int.8", align 8
  %720 = alloca i8, align 1
  %721 = alloca i8, align 1
  %722 = alloca %"class.sc_dt::sc_int.1", align 8
  %723 = alloca %"class.sc_dt::sc_int.5", align 8
  %724 = alloca %"class.sc_dt::sc_int.8", align 8
  %725 = alloca i8, align 1
  %726 = alloca i8, align 1
  %727 = alloca %"class.sc_dt::sc_int.1", align 8
  %728 = alloca %"class.sc_dt::sc_int.1", align 8
  %729 = alloca %"class.sc_dt::sc_int.5", align 8
  %730 = alloca %"class.sc_dt::sc_int.8", align 8
  %731 = alloca i8, align 1
  %732 = alloca i8, align 1
  %733 = alloca %"class.sc_dt::sc_int.1", align 8
  %734 = alloca %"class.sc_dt::sc_int.107", align 8
  %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.107", align 8
  %738 = alloca %"class.sc_dt::sc_int.107", 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.1", align 8
  %744 = alloca %"class.sc_dt::sc_int.8", align 8
  %745 = alloca i8, align 1
  %746 = alloca i8, align 1
  %747 = alloca %"class.sc_dt::sc_int.1", align 8
  %748 = alloca %"class.sc_dt::sc_int.107", align 8
  %749 = alloca %"class.sc_dt::sc_int.8", align 8
  %750 = alloca i8, align 1
  %751 = alloca i8, align 1
  %752 = alloca %"class.sc_dt::sc_int.107", align 8
  %753 = alloca %"class.sc_dt::sc_int.107", align 8
  %754 = alloca %"class.sc_dt::sc_int.1", align 8
  %755 = alloca i8, align 1
  %756 = alloca i8, align 1
  %757 = 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 %758 unwind label %883

758:                                              ; 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 %759 unwind label %885

759:                                              ; preds = %758
  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 %760 unwind label %887

760:                                              ; preds = %759
  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 %761 unwind label %889

761:                                              ; preds = %760
  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 %762 unwind label %891

762:                                              ; preds = %761
  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 %763 unwind label %893

763:                                              ; preds = %762
  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 %764 unwind label %895

764:                                              ; preds = %763
  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 %765 unwind label %897

765:                                              ; preds = %764
  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 %766 unwind label %899

766:                                              ; preds = %765
  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 %767 unwind label %901

767:                                              ; preds = %766
  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 %768 unwind label %903

768:                                              ; preds = %767
  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 %769 unwind label %905

769:                                              ; preds = %768
  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 %770 unwind label %907

770:                                              ; preds = %769
  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 %771 unwind label %909

771:                                              ; preds = %770
  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 %772 unwind label %911

772:                                              ; preds = %771
  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 %773 unwind label %913

773:                                              ; preds = %772
  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 %774 unwind label %915

774:                                              ; preds = %773
  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 %775 unwind label %917

775:                                              ; preds = %774
  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 %776 unwind label %919

776:                                              ; preds = %775
  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 %777 unwind label %921

777:                                              ; preds = %776
  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 %778 unwind label %923

778:                                              ; preds = %777
  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 %779 unwind label %925

779:                                              ; preds = %778
  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 %780 unwind label %927

780:                                              ; preds = %779
  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 %781 unwind label %929

781:                                              ; preds = %780
  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 %782 unwind label %931

782:                                              ; preds = %781
  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 %783 unwind label %933

783:                                              ; preds = %782
  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 %784 unwind label %935

784:                                              ; preds = %783
  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 %785 unwind label %937

785:                                              ; preds = %784
  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 %786 unwind label %939

786:                                              ; preds = %785
  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 %787 unwind label %941

787:                                              ; preds = %786
  %788 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %789 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

789:                                              ; preds = %787
  %790 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %4, 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.sp2104

791:                                              ; preds = %789
  %792 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, 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.sp2104

793:                                              ; preds = %791
  %794 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, 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.sp2104

795:                                              ; preds = %793
  %796 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, 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.sp2104

797:                                              ; preds = %795
  %798 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, 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.sp2104

799:                                              ; preds = %797
  %800 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, 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.sp2104

801:                                              ; preds = %799
  %802 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, 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.sp2104

803:                                              ; preds = %801
  %804 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, 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.sp2104

805:                                              ; preds = %803
  %806 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %12, 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.sp2104

807:                                              ; preds = %805
  %808 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %13, 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.sp2104

809:                                              ; preds = %807
  %810 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, 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.sp2104

811:                                              ; preds = %809
  %812 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, 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.sp2104

813:                                              ; preds = %811
  %814 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %16, 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.sp2104

815:                                              ; preds = %813
  %816 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %17, 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.sp2104

817:                                              ; preds = %815
  %818 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi4EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, 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.sp2104

819:                                              ; preds = %817
  %820 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %19, 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.sp2104

821:                                              ; preds = %819
  %822 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %20, 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.sp2104

823:                                              ; preds = %821
  %824 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %21, 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.sp2104

825:                                              ; preds = %823
  %826 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %22, 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.sp2104

827:                                              ; preds = %825
  %828 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %23, 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.sp2104

829:                                              ; preds = %827
  %830 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %24, 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.sp2104

831:                                              ; preds = %829
  %832 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %25, 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.sp2104

833:                                              ; preds = %831
  %834 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef -1)
          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.sp2104

835:                                              ; preds = %833
  %836 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 0)
          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.sp2104

837:                                              ; preds = %835
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %33) #6
  store i8 1, ptr %33, align 1, !tbaa !5
  %838 = getelementptr inbounds i8, ptr %0, i64 3096
  %839 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %838, ptr noundef nonnull align 1 dereferenceable(1) %33)
          to label %840 unwind label %943

840:                                              ; preds = %837
  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
  %841 = getelementptr inbounds i8, ptr %0, i64 3288
  %842 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %841, ptr noundef nonnull align 1 dereferenceable(1) %34)
          to label %843 unwind label %945

843:                                              ; preds = %840
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %34) #6
  %844 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef 0)
          to label %845 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

845:                                              ; preds = %843
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %35) #6
  store i8 0, ptr %35, align 1, !tbaa !5
  %846 = getelementptr inbounds i8, ptr %0, i64 2360
  %847 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %35)
          to label %848 unwind label %947

848:                                              ; preds = %845
  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
  %849 = getelementptr inbounds i8, ptr %0, i64 3832
  %850 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %36)
          to label %851 unwind label %949

851:                                              ; preds = %848
  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 %852 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

852:                                              ; preds = %851
  %853 = getelementptr inbounds i8, ptr %0, i64 416
  %854 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %853)
          to label %855 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

855:                                              ; preds = %852
  %856 = load i8, ptr %854, align 1, !tbaa !5, !range !9, !noundef !10
  %857 = trunc nuw i8 %856 to i1
  br i1 %857, label %858, label %.invoke2310

858:                                              ; preds = %855
  %859 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %860 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

860:                                              ; preds = %858
  %861 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, 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.sp2104

862:                                              ; preds = %860
  %863 = getelementptr inbounds i8, ptr %0, i64 2552
  %864 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %863, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %865 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

865:                                              ; preds = %862
  %866 = getelementptr inbounds i8, ptr %0, i64 2728
  %867 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %866, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %868 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

868:                                              ; preds = %865
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %37) #6
  store i8 0, ptr %37, align 1, !tbaa !5
  %869 = getelementptr inbounds i8, ptr %0, i64 2904
  %870 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %869, ptr noundef nonnull align 1 dereferenceable(1) %37)
          to label %871 unwind label %951

871:                                              ; preds = %868
  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
  %872 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %38)
          to label %873 unwind label %953

873:                                              ; preds = %871
  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 %.preheader2100 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2100:                                   ; preds = %873
  %874 = getelementptr inbounds i8, ptr %0, i64 600
  br label %875

875:                                              ; preds = %.preheader2100, %957
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %39) #6
  store i8 0, ptr %39, align 1, !tbaa !5
  %876 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %39)
          to label %877 unwind label %955

877:                                              ; preds = %875
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %39) #6
  %878 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %874)
          to label %879 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2102

879:                                              ; preds = %877
  %880 = load i8, ptr %878, align 1, !tbaa !5, !range !9, !noundef !10
  %881 = trunc nuw i8 %880 to i1
  br i1 %881, label %882, label %957

882:                                              ; preds = %879
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %958 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

883:                                              ; preds = %1
  %884 = landingpad { ptr, i32 }
          cleanup
  br label %7743

885:                                              ; preds = %758
  %886 = landingpad { ptr, i32 }
          cleanup
  br label %7742

887:                                              ; preds = %759
  %888 = landingpad { ptr, i32 }
          cleanup
  br label %7741

889:                                              ; preds = %760
  %890 = landingpad { ptr, i32 }
          cleanup
  br label %7740

891:                                              ; preds = %761
  %892 = landingpad { ptr, i32 }
          cleanup
  br label %7739

893:                                              ; preds = %762
  %894 = landingpad { ptr, i32 }
          cleanup
  br label %7738

895:                                              ; preds = %763
  %896 = landingpad { ptr, i32 }
          cleanup
  br label %7737

897:                                              ; preds = %764
  %898 = landingpad { ptr, i32 }
          cleanup
  br label %7736

899:                                              ; preds = %765
  %900 = landingpad { ptr, i32 }
          cleanup
  br label %7735

901:                                              ; preds = %766
  %902 = landingpad { ptr, i32 }
          cleanup
  br label %7734

903:                                              ; preds = %767
  %904 = landingpad { ptr, i32 }
          cleanup
  br label %7733

905:                                              ; preds = %768
  %906 = landingpad { ptr, i32 }
          cleanup
  br label %7732

907:                                              ; preds = %769
  %908 = landingpad { ptr, i32 }
          cleanup
  br label %7731

909:                                              ; preds = %770
  %910 = landingpad { ptr, i32 }
          cleanup
  br label %7730

911:                                              ; preds = %771
  %912 = landingpad { ptr, i32 }
          cleanup
  br label %7729

913:                                              ; preds = %772
  %914 = landingpad { ptr, i32 }
          cleanup
  br label %7728

915:                                              ; preds = %773
  %916 = landingpad { ptr, i32 }
          cleanup
  br label %7727

917:                                              ; preds = %774
  %918 = landingpad { ptr, i32 }
          cleanup
  br label %7726

919:                                              ; preds = %775
  %920 = landingpad { ptr, i32 }
          cleanup
  br label %7725

921:                                              ; preds = %776
  %922 = landingpad { ptr, i32 }
          cleanup
  br label %7724

923:                                              ; preds = %777
  %924 = landingpad { ptr, i32 }
          cleanup
  br label %7723

925:                                              ; preds = %778
  %926 = landingpad { ptr, i32 }
          cleanup
  br label %7722

927:                                              ; preds = %779
  %928 = landingpad { ptr, i32 }
          cleanup
  br label %7721

929:                                              ; preds = %780
  %930 = landingpad { ptr, i32 }
          cleanup
  br label %7720

931:                                              ; preds = %781
  %932 = landingpad { ptr, i32 }
          cleanup
  br label %7719

933:                                              ; preds = %782
  %934 = landingpad { ptr, i32 }
          cleanup
  br label %7718

935:                                              ; preds = %783
  %936 = landingpad { ptr, i32 }
          cleanup
  br label %7717

937:                                              ; preds = %784
  %938 = landingpad { ptr, i32 }
          cleanup
  br label %7716

939:                                              ; preds = %785
  %940 = landingpad { ptr, i32 }
          cleanup
  br label %7715

941:                                              ; preds = %786
  %942 = landingpad { ptr, i32 }
          cleanup
  br label %7714

.loopexit:                                        ; preds = %4764, %4786
  %lpad.loopexit = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit:                      ; preds = %4730, %4713, %.preheader1267
  %lpad.loopexit1268 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit:    ; preds = %.preheader1271, %4682
  %lpad.loopexit1272 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %5888, %5860
  %lpad.loopexit1275 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1278, %5823, %5840
  %lpad.loopexit1279 = 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 = %5781, %5769
  %lpad.loopexit1282 = 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 = %.preheader1285, %5744, %5756
  %lpad.loopexit1286 = 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 = %7713, %7686
  %lpad.loopexit1289 = 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 = %1860
  %lpad.loopexit1294 = 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 = %1854, %1836, %.preheader1296
  %lpad.loopexit1297 = 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 = %.preheader1300, %2311
  %lpad.loopexit1301 = 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 = %2243, %.preheader1303
  %lpad.loopexit1304 = 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 = %.preheader1307, %2180, %2199
  %lpad.loopexit1308 = 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 = %2137, %.preheader1310
  %lpad.loopexit1311 = 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 = %.preheader1314, %2070
  %lpad.loopexit1315 = 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 = %2473, %2462
  %lpad.loopexit1318 = 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 = %2434, %2446
  %lpad.loopexit1322 = 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 = %2420, %2403, %.preheader1324
  %lpad.loopexit1325 = 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 = %.preheader1328, %2361, %2378
  %lpad.loopexit1329 = 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 = %2707, %.preheader1331
  %lpad.loopexit1332 = 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 = %2669, %2686
  %lpad.loopexit1336 = 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 = %2651, %2632
  %lpad.loopexit1339 = 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 = %.preheader1342, %2591
  %lpad.loopexit1343 = 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 = %2534, %.preheader1345
  %lpad.loopexit1346 = 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 = %.preheader1349, %3759
  %lpad.loopexit1350 = 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 = %3706, %.preheader1352
  %lpad.loopexit1353 = 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 = %3656, %3678
  %lpad.loopexit1357 = 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 = %3635, %3618
  %lpad.loopexit1360 = 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 = %3562, %3579
  %lpad.loopexit1364 = 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 = %3542, %3525, %.preheader1366
  %lpad.loopexit1367 = 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 = %3489, %3506
  %lpad.loopexit1371 = 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 = %3466, %3449, %.preheader1373
  %lpad.loopexit1374 = 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 = %2934, %2945
  %lpad.loopexit1378 = 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 = %2920, %2903, %.preheader1380
  %lpad.loopexit1381 = 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 = %2995, %3006
  %lpad.loopexit1385 = 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 = %2981, %2964, %.preheader1387
  %lpad.loopexit1388 = 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 = %3055, %3066
  %lpad.loopexit1392 = 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 = %3042, %3025, %.preheader1394
  %lpad.loopexit1395 = 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 = %.preheader1398, %3400
  %lpad.loopexit1399 = 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 = %3379, %3362
  %lpad.loopexit1402 = 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 = %.preheader1405, %3333, %3345
  %lpad.loopexit1406 = 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 = %3318, %3306
  %lpad.loopexit1409 = 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 = %.preheader1412, %3264, %3281
  %lpad.loopexit1413 = 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 = %3245, %3226
  %lpad.loopexit1416 = 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 = %.preheader1419, %3179
  %lpad.loopexit1420 = 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 = %3122, %.preheader1422
  %lpad.loopexit1423 = 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 = %.preheader1426, %3081, %3093
  %lpad.loopexit1427 = 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 = %2877, %2860, %.preheader1429
  %lpad.loopexit1430 = 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 = %.preheader1433, %2757, %2774
  %lpad.loopexit1434 = 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 = %5064, %.preheader1436
  %lpad.loopexit1437 = 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 = %.preheader1440, %5014
  %lpad.loopexit1441 = 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 = %4957, %.preheader1443
  %lpad.loopexit1444 = 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 = %3893, %3914
  %lpad.loopexit1448 = 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 = %3948, %3932
  %lpad.loopexit1451 = 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 = %3966, %3982
  %lpad.loopexit1455 = 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 = %4030, %4009
  %lpad.loopexit1458 = 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 = %.preheader1461, %4076
  %lpad.loopexit1462 = 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.sp1466: ; preds = %4148, %.preheader1464
  %lpad.loopexit1469 = 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.sp1474: ; preds = %.preheader1472, %4220
  %lpad.loopexit1477 = 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.sp1481: ; preds = %4314, %.preheader1479
  %lpad.loopexit1484 = 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.sp1489: ; preds = %.preheader1487, %4381
  %lpad.loopexit1492 = 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.sp1496: ; preds = %4434, %.preheader1494
  %lpad.loopexit1499 = 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.sp1504: ; preds = %4533, %4546
  %lpad.loopexit1507 = 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.sp1511: ; preds = %4495, %.preheader1509
  %lpad.loopexit1514 = 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.sp1519: ; preds = %4907, %4923
  %lpad.loopexit1522 = 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.sp1526: ; preds = %4886, %4870
  %lpad.loopexit1529 = 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.sp1534: ; preds = %.preheader1532, %4835, %4847
  %lpad.loopexit1537 = 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.sp1541: ; preds = %4801, %4794, %4789, %4787, %4769, %4762, %4756, %4754, %4739, %4736, %4734, %4732, %4718, %4708, %4702, %4698, %4693, %4690, %4677, %4673, %4668, %4666, %4663, %4658, %4656, %4650, %4648, %.lr.ph2194
  %lpad.loopexit1544 = 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.sp1549: ; preds = %.preheader1547, %4611, %4633
  %lpad.loopexit1552 = 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.sp1556: ; preds = %4584, %4567, %.preheader1554
  %lpad.loopexit1559 = 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.sp1564: ; preds = %.preheader1562, %3835, %3852
  %lpad.loopexit1567 = 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.sp1571: ; preds = %5293, %.preheader1569
  %lpad.loopexit1574 = 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.sp1579: ; preds = %5257, %5269
  %lpad.loopexit1582 = 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.sp1586: ; preds = %5223, %5206, %.preheader1584
  %lpad.loopexit1589 = 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.sp1594: ; preds = %.preheader1592, %5379
  %lpad.loopexit1597 = 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.sp1601: ; preds = %5452, %.preheader1599
  %lpad.loopexit1604 = 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.sp1609: ; preds = %.preheader1607, %5552
  %lpad.loopexit1612 = 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.sp1616: ; preds = %5602, %.preheader1614
  %lpad.loopexit1619 = 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.sp1624: ; preds = %.preheader1622, %5647
  %lpad.loopexit1627 = 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.sp1631: ; preds = %5999, %5988
  %lpad.loopexit1634 = 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.sp1639: ; preds = %.preheader1637, %5957, %5969
  %lpad.loopexit1642 = 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.sp1646: ; preds = %5936, %5924, %.preheader1644
  %lpad.loopexit1649 = 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.sp1653: ; preds = %.lr.ph, %5733, %5739, %5749, %5757, %5761, %5767, %5774, %5782, %5786, %5799, %5810, %5812, %5818, %5828, %5852, %5858, %5865, %5889, %5891
  %lpad.loopexit1656 = 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.sp1660: ; preds = %5714, %5697, %.preheader1658
  %lpad.loopexit1663 = 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.sp1668: ; preds = %.preheader1666, %5152, %5169
  %lpad.loopexit1671 = 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.sp1675: ; preds = %5130, %5113, %.preheader1673
  %lpad.loopexit1678 = 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.sp1683: ; preds = %.preheader1681, %7111
  %lpad.loopexit1686 = 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.sp1690: ; preds = %7060, %.preheader1688
  %lpad.loopexit1693 = 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.sp1698: ; preds = %.preheader1696, %7004
  %lpad.loopexit1701 = 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.sp1705: ; preds = %6945, %.preheader1703
  %lpad.loopexit1708 = 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.sp1713: ; preds = %.preheader1711, %6892
  %lpad.loopexit1716 = 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.sp1720: ; preds = %6839, %.preheader1718
  %lpad.loopexit1723 = 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.sp1728: ; preds = %.preheader1726, %6785
  %lpad.loopexit1731 = 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.sp1735: ; preds = %6760, %6741
  %lpad.loopexit1738 = 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.sp1743: ; preds = %.preheader1741, %6694
  %lpad.loopexit1746 = 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.sp1750: ; preds = %6637, %.preheader1748
  %lpad.loopexit1753 = 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.sp1758: ; preds = %.preheader1756, %6588, %6607
  %lpad.loopexit1761 = 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.sp1765: ; preds = %6545, %.preheader1763
  %lpad.loopexit1768 = 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.sp1773: ; preds = %.preheader1771, %6500
  %lpad.loopexit1776 = 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.sp1780: ; preds = %6456, %.preheader1778
  %lpad.loopexit1783 = 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.sp1788: ; preds = %.preheader1786, %6424
  %lpad.loopexit1791 = 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.sp1795: ; preds = %6294, %.preheader1793
  %lpad.loopexit1798 = 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.sp1803: ; preds = %.preheader1801, %6241
  %lpad.loopexit1806 = 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.sp1810: ; preds = %6187, %.preheader1808
  %lpad.loopexit1813 = 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.sp1818: ; preds = %6143, %6162
  %lpad.loopexit1821 = 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.sp1825: ; preds = %6096, %.preheader1823
  %lpad.loopexit1828 = 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.sp1833: ; preds = %.preheader1831, %6039
  %lpad.loopexit1836 = 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.sp1840: ; preds = %7635, %.preheader1838
  %lpad.loopexit1843 = 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.sp1848: ; preds = %.preheader1846, %7591
  %lpad.loopexit1851 = 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.sp1855: ; preds = %7532, %.preheader1853
  %lpad.loopexit1858 = 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.sp1863: ; preds = %.preheader1861, %7475
  %lpad.loopexit1866 = 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.sp1870: ; preds = %7424, %.preheader1868
  %lpad.loopexit1873 = 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.sp1878: ; preds = %.preheader1876, %7386
  %lpad.loopexit1881 = 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.sp1885: ; preds = %7307, %.preheader1883
  %lpad.loopexit1888 = 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.sp1893: ; preds = %.preheader1891, %7260
  %lpad.loopexit1896 = 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.sp1900: ; preds = %7220, %.preheader1898
  %lpad.loopexit1903 = 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.sp1908: ; preds = %.preheader1906, %1981, %2002
  %lpad.loopexit1911 = 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.sp1915: ; preds = %1900, %1883, %.preheader1913
  %lpad.loopexit1918 = 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.sp1923: ; preds = %.preheader1921, %1784
  %lpad.loopexit1926 = 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.sp1930: ; preds = %.invoke2315, %.invoke2308, %.invoke2307, %.invoke2306, %.invoke2305, %.invoke2304, %.invoke2303, %.invoke2302, %.invoke2301, %.invoke2300, %.invoke2299, %.invoke2298, %.invoke2297, %.invoke2296, %.invoke2295, %.invoke2294, %.invoke2293, %.invoke, %7684, %7678, %7664, %7662, %7653, %7630, %7626, %7615, %7614, %7611, %7586, %7579, %7572, %7569, %7527, %7503, %7500, %7470, %7466, %7447, %7444, %7419, %7415, %7407, %7397, %7394, %7381, %7377, %7363, %7342, %7337, %7335, %7328, %7325, %7302, %7298, %7293, %7286, %7283, %7255, %7251, %7243, %7236, %7233, %7215, %7211, %7194, %7192, %7190, %7188, %7186, %7184, %7165, %7163, %7161, %7159, %7157, %7155, %7152, %7150, %7142, %7131, %7106, %7102, %7088, %7085, %7055, %7051, %7032, %7029, %6999, %6995, %6976, %6973, %6940, %6936, %6918, %6915, %6887, %6883, %6870, %6867, %6834, %6830, %6814, %6811, %6780, %6776, %6746, %6739, %6733, %6731, %6729, %6723, %6720, %6689, %6682, %6669, %6666, %6632, %6610, %6608, %6593, %6583, %6577, %6572, %6571, %6568, %6540, %6536, %6523, %6520, %6495, %6491, %6483, %6479, %6476, %6451, %6447, %6439, %6435, %6432, %6419, %6415, %6391, %6345, %6330, %6320, %6317, %6289, %6285, %6272, %6269, %6236, %6232, %6216, %6213, %6182, %6178, %6148, %6141, %6135, %6133, %6131, %6125, %6122, %6091, %6084, %6071, %6068, %6034, %6012, %6007, %6005, %6004, %5986, %5980, %5978, %5976, %5974, %5972, %5970, %5962, %5952, %5946, %5943, %5941, %5939, %5937, %5929, %5919, %5913, %5910, %5906, %._crit_edge, %5715, %5702, %5692, %5686, %5684, %5673, %5642, %5638, %5615, %5597, %5593, %5585, %5583, %5575, %5573, %5560, %5547, %5543, %5519, %5517, %5486, %5473, %5466, %5460, %5447, %5443, %5406, %5404, %5387, %5374, %5370, %5333, %5331, %5314, %5288, %5284, %5276, %5262, %5255, %5249, %5247, %5243, %5236, %5233, %5231, %5211, %5201, %5195, %5193, %5181, %5177, %5174, %5172, %5170, %5157, %5147, %5141, %5139, %5131, %5118, %5108, %5102, %5100, %5093, %5082, %5059, %5055, %5044, %5043, %5040, %5009, %5002, %4989, %4986, %4952, %4927, %4926, %4924, %4905, %4899, %4897, %4895, %4888, %4868, %4862, %4860, %4848, %4840, %4830, %4824, %4822, %4817, %4816, %4812, %4695, %4645, %._crit_edge2195, %4639, %4636, %4634, %4616, %4606, %4600, %4598, %4585, %4572, %4562, %4556, %4554, %4547, %4531, %4525, %4523, %4520, %4519, %4516, %4490, %4486, %4472, %4468, %4466, %4460, %4429, %4425, %4408, %4402, %4376, %4372, %4338, %4336, %4330, %4309, %4305, %4274, %4263, %4252, %4247, %4241, %4215, %4211, %4177, %4175, %4169, %4143, %4139, %4105, %4103, %4097, %4071, %4067, %4033, %4031, %4007, %4001, %3999, %3964, %3958, %3956, %3954, %3930, %3924, %3922, %3920, %3891, %3885, %3883, %3864, %3860, %3857, %3855, %3853, %3840, %3830, %3824, %3822, %3813, %3811, %3808, %3806, %3804, %3802, %3800, %3798, %3796, %3794, %3792, %3789, %3788, %3780, %3777, %3754, %3750, %3739, %3738, %3735, %3701, %3697, %3661, %3654, %3648, %3646, %3623, %3616, %3610, %3608, %3606, %3604, %3602, %3593, %3591, %3588, %3586, %3580, %3567, %3560, %3554, %3551, %3543, %3530, %3520, %3514, %3512, %3494, %3487, %3481, %3478, %3467, %3454, %3444, %3438, %3436, %3429, %3422, %3419, %3416, %3395, %3391, %3380, %3367, %3360, %3354, %3351, %3338, %3328, %3322, %3319, %3311, %3304, %3298, %3296, %3287, %3269, %3259, %3253, %3251, %3231, %3224, %3218, %3216, %3214, %3212, %3210, %3208, %3202, %3199, %3174, %3167, %3160, %3157, %3117, %3086, %3076, %3070, %3067, %3053, %3047, %3043, %3030, %3020, %3014, %3012, %2993, %2987, %2982, %2969, %2959, %2953, %2951, %2932, %2926, %2921, %2908, %2898, %2892, %2890, %2878, %2865, %2855, %2849, %2847, %2828, %2819, %2800, %2791, %2780, %2777, %2775, %2762, %2752, %2746, %2744, %2737, %2736, %2734, %2723, %2702, %2698, %2687, %2674, %2667, %2661, %2659, %2657, %2637, %2630, %2624, %2622, %2620, %2614, %2611, %2586, %2579, %2572, %2569, %2529, %2502, %2500, %2496, %2493, %2492, %2460, %2454, %2452, %2447, %2439, %2432, %2426, %2424, %2421, %2408, %2398, %2392, %2390, %2379, %2366, %2356, %2350, %2348, %2341, %2331, %2306, %2302, %2288, %2285, %2238, %2185, %2175, %2169, %2164, %2163, %2160, %2132, %2128, %2115, %2112, %2065, %2026, %2025, %2015, %2014, %2010, %2007, %2005, %2003, %1986, %1976, %1970, %1968, %1943, %1940, %1938, %1936, %1921, %1919, %1913, %1888, %1878, %1872, %1870, %1864, %1857, %1855, %1841, %1831, %1825, %1823, %1821, %1816, %1811, %1809, %1807, %1806, %1804, %1802, %1800, %1797, %1779, %1775, %1768, %1766, %1764, %1763
  %lpad.loopexit1933 = 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.sp1938: ; preds = %1736, %1748
  %lpad.loopexit1941 = 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.sp1945: ; preds = %1670, %1644
  %lpad.loopexit1948 = 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.sp1952: ; preds = %1634, %1636, %1642, %1649, %1671, %1675, %1677, %1681, %1682, %1687, %1690
  %lpad.loopexit1955 = 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.sp1959: ; preds = %1604, %1592
  %lpad.loopexit1962 = 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.sp1967: ; preds = %1565, %1577
  %lpad.loopexit1970 = 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.sp1974: ; preds = %1615, %1609, %1605, %1597, %1590, %1584, %1582, %1578, %1570, %1563, %1557, %1555
  %lpad.loopexit1977 = 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.sp1982: ; preds = %.preheader1980, %1526
  %lpad.loopexit1985 = 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.sp1989: ; preds = %1489, %.preheader1987
  %lpad.loopexit1992 = 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.sp1997: ; preds = %.preheader1995, %1454
  %lpad.loopexit2000 = 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.sp2004: ; preds = %1414, %.preheader2002
  %lpad.loopexit2007 = 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.sp2012: ; preds = %1380, %1394
  %lpad.loopexit2015 = 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.sp2019: ; preds = %1352, %.preheader2017
  %lpad.loopexit2022 = 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.sp2027: ; preds = %1324, %1338
  %lpad.loopexit2030 = 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.sp2034: ; preds = %1290, %.preheader2032
  %lpad.loopexit2037 = 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.sp2042: ; preds = %.preheader2040, %1214
  %lpad.loopexit2045 = 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.sp2049: ; preds = %1194, %1170
  %lpad.loopexit2052 = 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.sp2057: ; preds = %.preheader2055, %1141
  %lpad.loopexit2060 = 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.sp2064: ; preds = %1127, %1103
  %lpad.loopexit2067 = 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.sp2072: ; preds = %1059, %1064
  %lpad.loopexit2075 = 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.sp2079: ; preds = %1038, %1026
  %lpad.loopexit2082 = 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.sp2087: ; preds = %1001, %1013
  %lpad.loopexit2090 = 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.sp2094: ; preds = %982, %970
  %lpad.loopexit2097 = 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.sp2102: ; preds = %877, %957
  %lpad.loopexit2105 = 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.sp2104: ; preds = %.invoke2310, %.invoke2309, %787, %789, %791, %793, %795, %797, %799, %801, %803, %805, %807, %809, %811, %813, %815, %817, %819, %821, %823, %825, %827, %829, %831, %833, %835, %843, %851, %852, %858, %860, %862, %865, %873, %882, %958, %960, %962, %968, %975, %983, %989, %991, %993, %999, %1006, %1014, %1016, %1018, %1024, %1031, %1057, %1087, %1090, %1101, %1108, %1136, %1154, %1157, %1168, %1175, %1209, %1237, %1240, %1241, %1246, %1248, %1261, %1263, %1285, %1308, %1311, %1312, %1314, %1316, %1322, %1329, %1347, %1365, %1368, %1369, %1372, %1378, %1385, %1409, %1437, %1440, %1449, %1469, %1472, %1484, %1509, %1512, %1521, %1541, %1547, %1549, %1614, %1616, %1618, %1680, %1722, %1724, %1726, %1728, %1734, %1741, %1749
  %lpad.loopexit.split-lp = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

943:                                              ; preds = %837
  %944 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %33) #6
  br label %.loopexit.split-lp

945:                                              ; preds = %840
  %946 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %34) #6
  br label %.loopexit.split-lp

947:                                              ; preds = %845
  %948 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %35) #6
  br label %.loopexit.split-lp

949:                                              ; preds = %848
  %950 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %36) #6
  br label %.loopexit.split-lp

951:                                              ; preds = %868
  %952 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %37) #6
  br label %.loopexit.split-lp

953:                                              ; preds = %871
  %954 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %38) #6
  br label %.loopexit.split-lp

955:                                              ; preds = %875
  %956 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %39) #6
  br label %.loopexit.split-lp

957:                                              ; preds = %879
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %875 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2102, !llvm.loop !11

958:                                              ; preds = %882
  %959 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 1)
          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.sp2104

960:                                              ; preds = %958
  %961 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %863, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp2104

962:                                              ; preds = %960
  %963 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %866, ptr noundef nonnull align 8 dereferenceable(24) %2)
          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.sp2104

964:                                              ; preds = %962
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %40) #6
  store i8 0, ptr %40, align 1, !tbaa !5
  %965 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %869, ptr noundef nonnull align 1 dereferenceable(1) %40)
          to label %966 unwind label %976

966:                                              ; preds = %964
  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
  %967 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %41)
          to label %968 unwind label %978

968:                                              ; preds = %966
  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 %.preheader2092 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2092:                                   ; preds = %968, %982
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %42) #6
  store i8 0, ptr %42, align 1, !tbaa !5
  %969 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %42)
          to label %970 unwind label %980

970:                                              ; preds = %.preheader2092
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %42) #6
  %971 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %874)
          to label %972 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2094

972:                                              ; preds = %970
  %973 = load i8, ptr %971, align 1, !tbaa !5, !range !9, !noundef !10
  %974 = trunc nuw i8 %973 to i1
  br i1 %974, label %975, label %982

975:                                              ; preds = %972
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %983 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

976:                                              ; preds = %964
  %977 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %40) #6
  br label %.loopexit.split-lp

978:                                              ; preds = %966
  %979 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %41) #6
  br label %.loopexit.split-lp

980:                                              ; preds = %.preheader2092
  %981 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %42) #6
  br label %.loopexit.split-lp

982:                                              ; preds = %972
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2092 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2094, !llvm.loop !13

983:                                              ; preds = %975
  %984 = getelementptr inbounds i8, ptr %0, i64 1288
  %985 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %984)
          to label %.invoke2309 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.invoke2309:                                      ; preds = %983
  %986 = load i8, ptr %985, align 1, !tbaa !5, !range !9, !noundef !10
  %987 = trunc nuw i8 %986 to i1
  %. = select i1 %987, i32 0, i32 16
  %988 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef %.)
          to label %989 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

989:                                              ; preds = %.invoke2309
  %990 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 2)
          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.sp2104

991:                                              ; preds = %989
  %992 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %863, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp2104

993:                                              ; preds = %991
  %994 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %866, ptr noundef nonnull align 8 dereferenceable(24) %2)
          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.sp2104

995:                                              ; preds = %993
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %43) #6
  store i8 0, ptr %43, align 1, !tbaa !5
  %996 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %869, ptr noundef nonnull align 1 dereferenceable(1) %43)
          to label %997 unwind label %1007

997:                                              ; preds = %995
  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
  %998 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %44)
          to label %999 unwind label %1009

999:                                              ; preds = %997
  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 %.preheader2085 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2085:                                   ; preds = %999, %1013
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %45) #6
  store i8 0, ptr %45, align 1, !tbaa !5
  %1000 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %45)
          to label %1001 unwind label %1011

1001:                                             ; preds = %.preheader2085
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %45) #6
  %1002 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %874)
          to label %1003 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2087

1003:                                             ; preds = %1001
  %1004 = load i8, ptr %1002, align 1, !tbaa !5, !range !9, !noundef !10
  %1005 = trunc nuw i8 %1004 to i1
  br i1 %1005, label %1006, label %1013

1006:                                             ; preds = %1003
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1014 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1007:                                             ; preds = %995
  %1008 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %43) #6
  br label %.loopexit.split-lp

1009:                                             ; preds = %997
  %1010 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %44) #6
  br label %.loopexit.split-lp

1011:                                             ; preds = %.preheader2085
  %1012 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %45) #6
  br label %.loopexit.split-lp

1013:                                             ; preds = %1003
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2085 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2087, !llvm.loop !14

1014:                                             ; preds = %1006
  %1015 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 4)
          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.sp2104

1016:                                             ; preds = %1014
  %1017 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %863, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp2104

1018:                                             ; preds = %1016
  %1019 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %866, ptr noundef nonnull align 8 dereferenceable(24) %2)
          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.sp2104

1020:                                             ; preds = %1018
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %46) #6
  store i8 0, ptr %46, align 1, !tbaa !5
  %1021 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %869, ptr noundef nonnull align 1 dereferenceable(1) %46)
          to label %1022 unwind label %1032

1022:                                             ; preds = %1020
  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
  %1023 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %47)
          to label %1024 unwind label %1034

1024:                                             ; preds = %1022
  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 %.preheader2077 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2077:                                   ; preds = %1024, %1038
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %48) #6
  store i8 0, ptr %48, align 1, !tbaa !5
  %1025 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %48)
          to label %1026 unwind label %1036

1026:                                             ; preds = %.preheader2077
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %48) #6
  %1027 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %874)
          to label %1028 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2079

1028:                                             ; preds = %1026
  %1029 = load i8, ptr %1027, align 1, !tbaa !5, !range !9, !noundef !10
  %1030 = trunc nuw i8 %1029 to i1
  br i1 %1030, label %1031, label %1038

1031:                                             ; preds = %1028
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1039 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1032:                                             ; preds = %1020
  %1033 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %46) #6
  br label %.loopexit.split-lp

1034:                                             ; preds = %1022
  %1035 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %47) #6
  br label %.loopexit.split-lp

1036:                                             ; preds = %.preheader2077
  %1037 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %48) #6
  br label %.loopexit.split-lp

1038:                                             ; preds = %1028
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2077 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2079, !llvm.loop !15

1039:                                             ; preds = %1031
  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 %1040 unwind label %1065

1040:                                             ; preds = %1039
  %1041 = getelementptr inbounds i8, ptr %0, i64 4200
  %1042 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1041, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1043 unwind label %1067

1043:                                             ; preds = %1040
  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 %1044 unwind label %1070

1044:                                             ; preds = %1043
  %1045 = getelementptr inbounds i8, ptr %0, i64 4376
  %1046 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1045, ptr noundef nonnull align 8 dereferenceable(24) %50)
          to label %1047 unwind label %1072

1047:                                             ; preds = %1044
  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 %1048 unwind label %1075

1048:                                             ; preds = %1047
  %1049 = getelementptr inbounds i8, ptr %0, i64 4024
  %1050 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1049, ptr noundef nonnull align 8 dereferenceable(24) %51)
          to label %1051 unwind label %1077

1051:                                             ; preds = %1048
  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 %1052 unwind label %1080

1052:                                             ; preds = %1051
  %1053 = getelementptr inbounds i8, ptr %0, i64 3656
  %1054 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1053, ptr noundef nonnull align 8 dereferenceable(24) %52)
          to label %1055 unwind label %1082

1055:                                             ; preds = %1052
  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
  %1056 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %53)
          to label %1057 unwind label %1085

1057:                                             ; preds = %1055
  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 %.preheader2070 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2070:                                   ; preds = %1057
  %1058 = getelementptr inbounds i8, ptr %0, i64 1640
  br label %1059

1059:                                             ; preds = %.preheader2070, %1064
  %1060 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1058)
          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.sp2072

1061:                                             ; preds = %1059
  %1062 = load i8, ptr %1060, align 1, !tbaa !5, !range !9, !noundef !10
  %1063 = trunc nuw i8 %1062 to i1
  br i1 %1063, label %1087, label %1064

1064:                                             ; preds = %1061
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1059 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2072, !llvm.loop !16

1065:                                             ; preds = %1039
  %1066 = landingpad { ptr, i32 }
          cleanup
  br label %1069

1067:                                             ; preds = %1040
  %1068 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %49) #6
  br label %1069

1069:                                             ; preds = %1067, %1065
  %.pn = phi { ptr, i32 } [ %1068, %1067 ], [ %1066, %1065 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %49) #6
  br label %.loopexit.split-lp

1070:                                             ; preds = %1043
  %1071 = landingpad { ptr, i32 }
          cleanup
  br label %1074

1072:                                             ; preds = %1044
  %1073 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %50) #6
  br label %1074

1074:                                             ; preds = %1072, %1070
  %.pn514 = phi { ptr, i32 } [ %1073, %1072 ], [ %1071, %1070 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %50) #6
  br label %.loopexit.split-lp

1075:                                             ; preds = %1047
  %1076 = landingpad { ptr, i32 }
          cleanup
  br label %1079

1077:                                             ; preds = %1048
  %1078 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %51) #6
  br label %1079

1079:                                             ; preds = %1077, %1075
  %.pn516 = phi { ptr, i32 } [ %1078, %1077 ], [ %1076, %1075 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %51) #6
  br label %.loopexit.split-lp

1080:                                             ; preds = %1051
  %1081 = landingpad { ptr, i32 }
          cleanup
  br label %1084

1082:                                             ; preds = %1052
  %1083 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %52) #6
  br label %1084

1084:                                             ; preds = %1082, %1080
  %.pn518 = phi { ptr, i32 } [ %1083, %1082 ], [ %1081, %1080 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %52) #6
  br label %.loopexit.split-lp

1085:                                             ; preds = %1055
  %1086 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %53) #6
  br label %.loopexit.split-lp

1087:                                             ; preds = %1061
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1088 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1088:                                             ; preds = %1087
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %54) #6
  store i8 0, ptr %54, align 1, !tbaa !5
  %1089 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %54)
          to label %1090 unwind label %1109

1090:                                             ; preds = %1088
  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 %1091 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1091:                                             ; preds = %1090
  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 %1092 unwind label %1111

1092:                                             ; preds = %1091
  %1093 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %863, ptr noundef nonnull align 8 dereferenceable(24) %55)
          to label %1094 unwind label %1113

1094:                                             ; preds = %1092
  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 %1095 unwind label %1116

1095:                                             ; preds = %1094
  %1096 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %866, ptr noundef nonnull align 8 dereferenceable(24) %56)
          to label %1097 unwind label %1118

1097:                                             ; preds = %1095
  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
  %1098 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %869, ptr noundef nonnull align 1 dereferenceable(1) %57)
          to label %1099 unwind label %1121

1099:                                             ; preds = %1097
  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
  %1100 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %58)
          to label %1101 unwind label %1123

1101:                                             ; preds = %1099
  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 %.preheader2062 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2062:                                   ; preds = %1101, %1127
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %59) #6
  store i8 0, ptr %59, align 1, !tbaa !5
  %1102 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %59)
          to label %1103 unwind label %1125

1103:                                             ; preds = %.preheader2062
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %59) #6
  %1104 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %874)
          to label %1105 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2064

1105:                                             ; preds = %1103
  %1106 = load i8, ptr %1104, align 1, !tbaa !5, !range !9, !noundef !10
  %1107 = trunc nuw i8 %1106 to i1
  br i1 %1107, label %1108, label %1127

1108:                                             ; preds = %1105
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1128 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1109:                                             ; preds = %1088
  %1110 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %54) #6
  br label %.loopexit.split-lp

1111:                                             ; preds = %1091
  %1112 = landingpad { ptr, i32 }
          cleanup
  br label %1115

1113:                                             ; preds = %1092
  %1114 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %55) #6
  br label %1115

1115:                                             ; preds = %1113, %1111
  %.pn520 = phi { ptr, i32 } [ %1114, %1113 ], [ %1112, %1111 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %55) #6
  br label %.loopexit.split-lp

1116:                                             ; preds = %1094
  %1117 = landingpad { ptr, i32 }
          cleanup
  br label %1120

1118:                                             ; preds = %1095
  %1119 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %56) #6
  br label %1120

1120:                                             ; preds = %1118, %1116
  %.pn522 = phi { ptr, i32 } [ %1119, %1118 ], [ %1117, %1116 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %56) #6
  br label %.loopexit.split-lp

1121:                                             ; preds = %1097
  %1122 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %57) #6
  br label %.loopexit.split-lp

1123:                                             ; preds = %1099
  %1124 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %58) #6
  br label %.loopexit.split-lp

1125:                                             ; preds = %.preheader2062
  %1126 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %59) #6
  br label %.loopexit.split-lp

1127:                                             ; preds = %1105
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2062 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2064, !llvm.loop !17

1128:                                             ; preds = %1108
  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 %1129 unwind label %1142

1129:                                             ; preds = %1128
  %1130 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1041, ptr noundef nonnull align 8 dereferenceable(24) %60)
          to label %1131 unwind label %1144

1131:                                             ; preds = %1129
  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 %1132 unwind label %1147

1132:                                             ; preds = %1131
  %1133 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1053, ptr noundef nonnull align 8 dereferenceable(24) %61)
          to label %1134 unwind label %1149

1134:                                             ; preds = %1132
  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
  %1135 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %62)
          to label %1136 unwind label %1152

1136:                                             ; preds = %1134
  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 %.preheader2055 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2055:                                   ; preds = %1136, %1141
  %1137 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1058)
          to label %1138 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2057

1138:                                             ; preds = %.preheader2055
  %1139 = load i8, ptr %1137, align 1, !tbaa !5, !range !9, !noundef !10
  %1140 = trunc nuw i8 %1139 to i1
  br i1 %1140, label %1154, label %1141

1141:                                             ; preds = %1138
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2055 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2057, !llvm.loop !18

1142:                                             ; preds = %1128
  %1143 = landingpad { ptr, i32 }
          cleanup
  br label %1146

1144:                                             ; preds = %1129
  %1145 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %60) #6
  br label %1146

1146:                                             ; preds = %1144, %1142
  %.pn524 = phi { ptr, i32 } [ %1145, %1144 ], [ %1143, %1142 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %60) #6
  br label %.loopexit.split-lp

1147:                                             ; preds = %1131
  %1148 = landingpad { ptr, i32 }
          cleanup
  br label %1151

1149:                                             ; preds = %1132
  %1150 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %61) #6
  br label %1151

1151:                                             ; preds = %1149, %1147
  %.pn526 = phi { ptr, i32 } [ %1150, %1149 ], [ %1148, %1147 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %61) #6
  br label %.loopexit.split-lp

1152:                                             ; preds = %1134
  %1153 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %62) #6
  br label %.loopexit.split-lp

1154:                                             ; preds = %1138
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1155 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1155:                                             ; preds = %1154
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %63) #6
  store i8 0, ptr %63, align 1, !tbaa !5
  %1156 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %63)
          to label %1157 unwind label %1176

1157:                                             ; preds = %1155
  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 %1158 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1158:                                             ; preds = %1157
  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 %1159 unwind label %1178

1159:                                             ; preds = %1158
  %1160 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %863, ptr noundef nonnull align 8 dereferenceable(24) %64)
          to label %1161 unwind label %1180

1161:                                             ; preds = %1159
  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 %1162 unwind label %1183

1162:                                             ; preds = %1161
  %1163 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %866, ptr noundef nonnull align 8 dereferenceable(24) %65)
          to label %1164 unwind label %1185

1164:                                             ; preds = %1162
  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
  %1165 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %869, ptr noundef nonnull align 1 dereferenceable(1) %66)
          to label %1166 unwind label %1188

1166:                                             ; preds = %1164
  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
  %1167 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %67)
          to label %1168 unwind label %1190

1168:                                             ; preds = %1166
  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 %.preheader2047 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2047:                                   ; preds = %1168, %1194
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %68) #6
  store i8 0, ptr %68, align 1, !tbaa !5
  %1169 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %68)
          to label %1170 unwind label %1192

1170:                                             ; preds = %.preheader2047
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %68) #6
  %1171 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %874)
          to label %1172 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2049

1172:                                             ; preds = %1170
  %1173 = load i8, ptr %1171, align 1, !tbaa !5, !range !9, !noundef !10
  %1174 = trunc nuw i8 %1173 to i1
  br i1 %1174, label %1175, label %1194

1175:                                             ; preds = %1172
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1195 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1176:                                             ; preds = %1155
  %1177 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %63) #6
  br label %.loopexit.split-lp

1178:                                             ; preds = %1158
  %1179 = landingpad { ptr, i32 }
          cleanup
  br label %1182

1180:                                             ; preds = %1159
  %1181 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %64) #6
  br label %1182

1182:                                             ; preds = %1180, %1178
  %.pn528 = phi { ptr, i32 } [ %1181, %1180 ], [ %1179, %1178 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %64) #6
  br label %.loopexit.split-lp

1183:                                             ; preds = %1161
  %1184 = landingpad { ptr, i32 }
          cleanup
  br label %1187

1185:                                             ; preds = %1162
  %1186 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %65) #6
  br label %1187

1187:                                             ; preds = %1185, %1183
  %.pn530 = phi { ptr, i32 } [ %1186, %1185 ], [ %1184, %1183 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %65) #6
  br label %.loopexit.split-lp

1188:                                             ; preds = %1164
  %1189 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %66) #6
  br label %.loopexit.split-lp

1190:                                             ; preds = %1166
  %1191 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %67) #6
  br label %.loopexit.split-lp

1192:                                             ; preds = %.preheader2047
  %1193 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %68) #6
  br label %.loopexit.split-lp

1194:                                             ; preds = %1172
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2047 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2049, !llvm.loop !19

1195:                                             ; preds = %1175
  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 %1196 unwind label %1215

1196:                                             ; preds = %1195
  %1197 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1041, ptr noundef nonnull align 8 dereferenceable(24) %69)
          to label %1198 unwind label %1217

1198:                                             ; preds = %1196
  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 %1199 unwind label %1220

1199:                                             ; preds = %1198
  %1200 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1045, ptr noundef nonnull align 8 dereferenceable(24) %70)
          to label %1201 unwind label %1222

1201:                                             ; preds = %1199
  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 %1202 unwind label %1225

1202:                                             ; preds = %1201
  %1203 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1049, ptr noundef nonnull align 8 dereferenceable(24) %71)
          to label %1204 unwind label %1227

1204:                                             ; preds = %1202
  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 %1205 unwind label %1230

1205:                                             ; preds = %1204
  %1206 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1053, ptr noundef nonnull align 8 dereferenceable(24) %72)
          to label %1207 unwind label %1232

1207:                                             ; preds = %1205
  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
  %1208 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %73)
          to label %1209 unwind label %1235

1209:                                             ; preds = %1207
  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 %.preheader2040 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2040:                                   ; preds = %1209, %1214
  %1210 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1058)
          to label %1211 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2042

1211:                                             ; preds = %.preheader2040
  %1212 = load i8, ptr %1210, align 1, !tbaa !5, !range !9, !noundef !10
  %1213 = trunc nuw i8 %1212 to i1
  br i1 %1213, label %1237, label %1214

1214:                                             ; preds = %1211
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2040 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2042, !llvm.loop !20

1215:                                             ; preds = %1195
  %1216 = landingpad { ptr, i32 }
          cleanup
  br label %1219

1217:                                             ; preds = %1196
  %1218 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %69) #6
  br label %1219

1219:                                             ; preds = %1217, %1215
  %.pn532 = phi { ptr, i32 } [ %1218, %1217 ], [ %1216, %1215 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %69) #6
  br label %.loopexit.split-lp

1220:                                             ; preds = %1198
  %1221 = landingpad { ptr, i32 }
          cleanup
  br label %1224

1222:                                             ; preds = %1199
  %1223 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %70) #6
  br label %1224

1224:                                             ; preds = %1222, %1220
  %.pn534 = phi { ptr, i32 } [ %1223, %1222 ], [ %1221, %1220 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %70) #6
  br label %.loopexit.split-lp

1225:                                             ; preds = %1201
  %1226 = landingpad { ptr, i32 }
          cleanup
  br label %1229

1227:                                             ; preds = %1202
  %1228 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %71) #6
  br label %1229

1229:                                             ; preds = %1227, %1225
  %.pn536 = phi { ptr, i32 } [ %1228, %1227 ], [ %1226, %1225 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %71) #6
  br label %.loopexit.split-lp

1230:                                             ; preds = %1204
  %1231 = landingpad { ptr, i32 }
          cleanup
  br label %1234

1232:                                             ; preds = %1205
  %1233 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %72) #6
  br label %1234

1234:                                             ; preds = %1232, %1230
  %.pn538 = phi { ptr, i32 } [ %1233, %1232 ], [ %1231, %1230 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %72) #6
  br label %.loopexit.split-lp

1235:                                             ; preds = %1207
  %1236 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %73) #6
  br label %.loopexit.split-lp

1237:                                             ; preds = %1211
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1238 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1238:                                             ; preds = %1237
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %74) #6
  store i8 0, ptr %74, align 1, !tbaa !5
  %1239 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %74)
          to label %1240 unwind label %1254

1240:                                             ; preds = %1238
  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 %1241 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1241:                                             ; preds = %1240
  %1242 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %984)
          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.sp2104

1243:                                             ; preds = %1241
  %1244 = load i8, ptr %1242, align 1, !tbaa !5, !range !9, !noundef !10
  %1245 = trunc nuw i8 %1244 to i1
  br i1 %1245, label %1261, label %1246

1246:                                             ; preds = %1243
  %1247 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 37)
          to label %1248 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1248:                                             ; preds = %1246
  %1249 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef 53)
          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.sp2104

1250:                                             ; preds = %1248
  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 %1251 unwind label %1256

1251:                                             ; preds = %1250
  %1252 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1049, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %1253 unwind label %1258

1253:                                             ; preds = %1251
  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 %1274

1254:                                             ; preds = %1238
  %1255 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %74) #6
  br label %.loopexit.split-lp

1256:                                             ; preds = %1250
  %1257 = landingpad { ptr, i32 }
          cleanup
  br label %1260

1258:                                             ; preds = %1251
  %1259 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %75) #6
  br label %1260

1260:                                             ; preds = %1258, %1256
  %.pn542 = phi { ptr, i32 } [ %1259, %1258 ], [ %1257, %1256 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %75) #6
  br label %.loopexit.split-lp

1261:                                             ; preds = %1243
  %1262 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 35)
          to label %1263 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1263:                                             ; preds = %1261
  %1264 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef 51)
          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.sp2104

1265:                                             ; preds = %1263
  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 %1266 unwind label %1269

1266:                                             ; preds = %1265
  %1267 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1049, ptr noundef nonnull align 8 dereferenceable(24) %76)
          to label %1268 unwind label %1271

1268:                                             ; preds = %1266
  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 %1274

1269:                                             ; preds = %1265
  %1270 = landingpad { ptr, i32 }
          cleanup
  br label %1273

1271:                                             ; preds = %1266
  %1272 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %76) #6
  br label %1273

1273:                                             ; preds = %1271, %1269
  %.pn540 = phi { ptr, i32 } [ %1272, %1271 ], [ %1270, %1269 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %76) #6
  br label %.loopexit.split-lp

1274:                                             ; preds = %1268, %1253
  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 %1275 unwind label %1291

1275:                                             ; preds = %1274
  %1276 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1045, ptr noundef nonnull align 8 dereferenceable(24) %77)
          to label %1277 unwind label %1293

1277:                                             ; preds = %1275
  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 %1278 unwind label %1296

1278:                                             ; preds = %1277
  %1279 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1041, ptr noundef nonnull align 8 dereferenceable(24) %78)
          to label %1280 unwind label %1298

1280:                                             ; preds = %1278
  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 %1281 unwind label %1301

1281:                                             ; preds = %1280
  %1282 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1053, ptr noundef nonnull align 8 dereferenceable(24) %79)
          to label %1283 unwind label %1303

1283:                                             ; preds = %1281
  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
  %1284 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %80)
          to label %1285 unwind label %1306

1285:                                             ; preds = %1283
  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 %.preheader2032 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2032:                                   ; preds = %1285, %1290
  %1286 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1058)
          to label %1287 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2034

1287:                                             ; preds = %.preheader2032
  %1288 = load i8, ptr %1286, align 1, !tbaa !5, !range !9, !noundef !10
  %1289 = trunc nuw i8 %1288 to i1
  br i1 %1289, label %1308, label %1290

1290:                                             ; preds = %1287
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2032 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2034, !llvm.loop !21

1291:                                             ; preds = %1274
  %1292 = landingpad { ptr, i32 }
          cleanup
  br label %1295

1293:                                             ; preds = %1275
  %1294 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %77) #6
  br label %1295

1295:                                             ; preds = %1293, %1291
  %.pn544 = phi { ptr, i32 } [ %1294, %1293 ], [ %1292, %1291 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %77) #6
  br label %.loopexit.split-lp

1296:                                             ; preds = %1277
  %1297 = landingpad { ptr, i32 }
          cleanup
  br label %1300

1298:                                             ; preds = %1278
  %1299 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %78) #6
  br label %1300

1300:                                             ; preds = %1298, %1296
  %.pn546 = phi { ptr, i32 } [ %1299, %1298 ], [ %1297, %1296 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %78) #6
  br label %.loopexit.split-lp

1301:                                             ; preds = %1280
  %1302 = landingpad { ptr, i32 }
          cleanup
  br label %1305

1303:                                             ; preds = %1281
  %1304 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %79) #6
  br label %1305

1305:                                             ; preds = %1303, %1301
  %.pn548 = phi { ptr, i32 } [ %1304, %1303 ], [ %1302, %1301 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %79) #6
  br label %.loopexit.split-lp

1306:                                             ; preds = %1283
  %1307 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %80) #6
  br label %.loopexit.split-lp

1308:                                             ; preds = %1287
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1309 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1309:                                             ; preds = %1308
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %81) #6
  store i8 0, ptr %81, align 1, !tbaa !5
  %1310 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %81)
          to label %1311 unwind label %1330

1311:                                             ; preds = %1309
  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 %1312 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1312:                                             ; preds = %1311
  %1313 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 30)
          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.sp2104

1314:                                             ; preds = %1312
  %1315 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %863, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp2104

1316:                                             ; preds = %1314
  %1317 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %866, ptr noundef nonnull align 8 dereferenceable(24) %2)
          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.sp2104

1318:                                             ; preds = %1316
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %82) #6
  store i8 0, ptr %82, align 1, !tbaa !5
  %1319 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %869, ptr noundef nonnull align 1 dereferenceable(1) %82)
          to label %1320 unwind label %1332

1320:                                             ; preds = %1318
  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
  %1321 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %83)
          to label %1322 unwind label %1334

1322:                                             ; preds = %1320
  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 %.preheader2025 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2025:                                   ; preds = %1322, %1338
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %84) #6
  store i8 0, ptr %84, align 1, !tbaa !5
  %1323 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %84)
          to label %1324 unwind label %1336

1324:                                             ; preds = %.preheader2025
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %84) #6
  %1325 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %874)
          to label %1326 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2027

1326:                                             ; preds = %1324
  %1327 = load i8, ptr %1325, align 1, !tbaa !5, !range !9, !noundef !10
  %1328 = trunc nuw i8 %1327 to i1
  br i1 %1328, label %1329, label %1338

1329:                                             ; preds = %1326
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1339 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1330:                                             ; preds = %1309
  %1331 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %81) #6
  br label %.loopexit.split-lp

1332:                                             ; preds = %1318
  %1333 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %82) #6
  br label %.loopexit.split-lp

1334:                                             ; preds = %1320
  %1335 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %83) #6
  br label %.loopexit.split-lp

1336:                                             ; preds = %.preheader2025
  %1337 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %84) #6
  br label %.loopexit.split-lp

1338:                                             ; preds = %1326
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2025 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2027, !llvm.loop !22

1339:                                             ; preds = %1329
  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 %1340 unwind label %1353

1340:                                             ; preds = %1339
  %1341 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1041, ptr noundef nonnull align 8 dereferenceable(24) %85)
          to label %1342 unwind label %1355

1342:                                             ; preds = %1340
  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 %1343 unwind label %1358

1343:                                             ; preds = %1342
  %1344 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1053, ptr noundef nonnull align 8 dereferenceable(24) %86)
          to label %1345 unwind label %1360

1345:                                             ; preds = %1343
  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
  %1346 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %87)
          to label %1347 unwind label %1363

1347:                                             ; preds = %1345
  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 %.preheader2017 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2017:                                   ; preds = %1347, %1352
  %1348 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1058)
          to label %1349 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2019

1349:                                             ; preds = %.preheader2017
  %1350 = load i8, ptr %1348, align 1, !tbaa !5, !range !9, !noundef !10
  %1351 = trunc nuw i8 %1350 to i1
  br i1 %1351, label %1365, label %1352

1352:                                             ; preds = %1349
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2017 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2019, !llvm.loop !23

1353:                                             ; preds = %1339
  %1354 = landingpad { ptr, i32 }
          cleanup
  br label %1357

1355:                                             ; preds = %1340
  %1356 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %85) #6
  br label %1357

1357:                                             ; preds = %1355, %1353
  %.pn550 = phi { ptr, i32 } [ %1356, %1355 ], [ %1354, %1353 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %85) #6
  br label %.loopexit.split-lp

1358:                                             ; preds = %1342
  %1359 = landingpad { ptr, i32 }
          cleanup
  br label %1362

1360:                                             ; preds = %1343
  %1361 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %86) #6
  br label %1362

1362:                                             ; preds = %1360, %1358
  %.pn552 = phi { ptr, i32 } [ %1361, %1360 ], [ %1359, %1358 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %86) #6
  br label %.loopexit.split-lp

1363:                                             ; preds = %1345
  %1364 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %87) #6
  br label %.loopexit.split-lp

1365:                                             ; preds = %1349
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1366 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1366:                                             ; preds = %1365
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %88) #6
  store i8 0, ptr %88, align 1, !tbaa !5
  %1367 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %88)
          to label %1368 unwind label %1386

1368:                                             ; preds = %1366
  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 %1369 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1369:                                             ; preds = %1368
  %1370 = 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)
  %1371 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %863, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1372 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1372:                                             ; preds = %1369
  %1373 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %866, ptr noundef nonnull align 8 dereferenceable(24) %2)
          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.sp2104

1374:                                             ; preds = %1372
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %89) #6
  store i8 0, ptr %89, align 1, !tbaa !5
  %1375 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %869, ptr noundef nonnull align 1 dereferenceable(1) %89)
          to label %1376 unwind label %1388

1376:                                             ; preds = %1374
  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
  %1377 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %90)
          to label %1378 unwind label %1390

1378:                                             ; preds = %1376
  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 %.preheader2010 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2010:                                   ; preds = %1378, %1394
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %91) #6
  store i8 0, ptr %91, align 1, !tbaa !5
  %1379 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %91)
          to label %1380 unwind label %1392

1380:                                             ; preds = %.preheader2010
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %91) #6
  %1381 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %874)
          to label %1382 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2012

1382:                                             ; preds = %1380
  %1383 = load i8, ptr %1381, align 1, !tbaa !5, !range !9, !noundef !10
  %1384 = trunc nuw i8 %1383 to i1
  br i1 %1384, label %1385, label %1394

1385:                                             ; preds = %1382
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1395 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1386:                                             ; preds = %1366
  %1387 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %88) #6
  br label %.loopexit.split-lp

1388:                                             ; preds = %1374
  %1389 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %89) #6
  br label %.loopexit.split-lp

1390:                                             ; preds = %1376
  %1391 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %90) #6
  br label %.loopexit.split-lp

1392:                                             ; preds = %.preheader2010
  %1393 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %91) #6
  br label %.loopexit.split-lp

1394:                                             ; preds = %1382
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2010 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2012, !llvm.loop !24

1395:                                             ; preds = %1385
  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 %1396 unwind label %1415

1396:                                             ; preds = %1395
  %1397 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1041, ptr noundef nonnull align 8 dereferenceable(24) %92)
          to label %1398 unwind label %1417

1398:                                             ; preds = %1396
  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 %1399 unwind label %1420

1399:                                             ; preds = %1398
  %1400 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1045, ptr noundef nonnull align 8 dereferenceable(24) %93)
          to label %1401 unwind label %1422

1401:                                             ; preds = %1399
  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 %1402 unwind label %1425

1402:                                             ; preds = %1401
  %1403 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1049, ptr noundef nonnull align 8 dereferenceable(24) %94)
          to label %1404 unwind label %1427

1404:                                             ; preds = %1402
  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 %1405 unwind label %1430

1405:                                             ; preds = %1404
  %1406 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1053, ptr noundef nonnull align 8 dereferenceable(24) %95)
          to label %1407 unwind label %1432

1407:                                             ; preds = %1405
  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
  %1408 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %96)
          to label %1409 unwind label %1435

1409:                                             ; preds = %1407
  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 %.preheader2002 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader2002:                                   ; preds = %1409, %1414
  %1410 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1058)
          to label %1411 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2004

1411:                                             ; preds = %.preheader2002
  %1412 = load i8, ptr %1410, align 1, !tbaa !5, !range !9, !noundef !10
  %1413 = trunc nuw i8 %1412 to i1
  br i1 %1413, label %1437, label %1414

1414:                                             ; preds = %1411
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2002 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2004, !llvm.loop !25

1415:                                             ; preds = %1395
  %1416 = landingpad { ptr, i32 }
          cleanup
  br label %1419

1417:                                             ; preds = %1396
  %1418 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %92) #6
  br label %1419

1419:                                             ; preds = %1417, %1415
  %.pn554 = phi { ptr, i32 } [ %1418, %1417 ], [ %1416, %1415 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %92) #6
  br label %.loopexit.split-lp

1420:                                             ; preds = %1398
  %1421 = landingpad { ptr, i32 }
          cleanup
  br label %1424

1422:                                             ; preds = %1399
  %1423 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %93) #6
  br label %1424

1424:                                             ; preds = %1422, %1420
  %.pn556 = phi { ptr, i32 } [ %1423, %1422 ], [ %1421, %1420 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %93) #6
  br label %.loopexit.split-lp

1425:                                             ; preds = %1401
  %1426 = landingpad { ptr, i32 }
          cleanup
  br label %1429

1427:                                             ; preds = %1402
  %1428 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %94) #6
  br label %1429

1429:                                             ; preds = %1427, %1425
  %.pn558 = phi { ptr, i32 } [ %1428, %1427 ], [ %1426, %1425 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %94) #6
  br label %.loopexit.split-lp

1430:                                             ; preds = %1404
  %1431 = landingpad { ptr, i32 }
          cleanup
  br label %1434

1432:                                             ; preds = %1405
  %1433 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %95) #6
  br label %1434

1434:                                             ; preds = %1432, %1430
  %.pn560 = phi { ptr, i32 } [ %1433, %1432 ], [ %1431, %1430 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %95) #6
  br label %.loopexit.split-lp

1435:                                             ; preds = %1407
  %1436 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %96) #6
  br label %.loopexit.split-lp

1437:                                             ; preds = %1411
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1438 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1438:                                             ; preds = %1437
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %97) #6
  store i8 0, ptr %97, align 1, !tbaa !5
  %1439 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %97)
          to label %1440 unwind label %1455

1440:                                             ; preds = %1438
  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 %1441 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1441:                                             ; preds = %1440
  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 %1442 unwind label %1457

1442:                                             ; preds = %1441
  %1443 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1041, ptr noundef nonnull align 8 dereferenceable(24) %98)
          to label %1444 unwind label %1459

1444:                                             ; preds = %1442
  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 %1445 unwind label %1462

1445:                                             ; preds = %1444
  %1446 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1053, ptr noundef nonnull align 8 dereferenceable(24) %99)
          to label %1447 unwind label %1464

1447:                                             ; preds = %1445
  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
  %1448 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %100)
          to label %1449 unwind label %1467

1449:                                             ; preds = %1447
  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 %.preheader1995 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader1995:                                   ; preds = %1449, %1454
  %1450 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1058)
          to label %1451 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1997

1451:                                             ; preds = %.preheader1995
  %1452 = load i8, ptr %1450, align 1, !tbaa !5, !range !9, !noundef !10
  %1453 = trunc nuw i8 %1452 to i1
  br i1 %1453, label %1469, label %1454

1454:                                             ; preds = %1451
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1995 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1997, !llvm.loop !26

1455:                                             ; preds = %1438
  %1456 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %97) #6
  br label %.loopexit.split-lp

1457:                                             ; preds = %1441
  %1458 = landingpad { ptr, i32 }
          cleanup
  br label %1461

1459:                                             ; preds = %1442
  %1460 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %98) #6
  br label %1461

1461:                                             ; preds = %1459, %1457
  %.pn562 = phi { ptr, i32 } [ %1460, %1459 ], [ %1458, %1457 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %98) #6
  br label %.loopexit.split-lp

1462:                                             ; preds = %1444
  %1463 = landingpad { ptr, i32 }
          cleanup
  br label %1466

1464:                                             ; preds = %1445
  %1465 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %99) #6
  br label %1466

1466:                                             ; preds = %1464, %1462
  %.pn564 = phi { ptr, i32 } [ %1465, %1464 ], [ %1463, %1462 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %99) #6
  br label %.loopexit.split-lp

1467:                                             ; preds = %1447
  %1468 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %100) #6
  br label %.loopexit.split-lp

1469:                                             ; preds = %1451
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1470 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1470:                                             ; preds = %1469
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %101) #6
  store i8 0, ptr %101, align 1, !tbaa !5
  %1471 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %101)
          to label %1472 unwind label %1490

1472:                                             ; preds = %1470
  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 %1473 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1473:                                             ; preds = %1472
  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 %1474 unwind label %1492

1474:                                             ; preds = %1473
  %1475 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1041, ptr noundef nonnull align 8 dereferenceable(24) %102)
          to label %1476 unwind label %1494

1476:                                             ; preds = %1474
  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 %1477 unwind label %1497

1477:                                             ; preds = %1476
  %1478 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1045, ptr noundef nonnull align 8 dereferenceable(24) %103)
          to label %1479 unwind label %1499

1479:                                             ; preds = %1477
  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 %1480 unwind label %1502

1480:                                             ; preds = %1479
  %1481 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1053, ptr noundef nonnull align 8 dereferenceable(24) %104)
          to label %1482 unwind label %1504

1482:                                             ; preds = %1480
  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
  %1483 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %105)
          to label %1484 unwind label %1507

1484:                                             ; preds = %1482
  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 %.preheader1987 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader1987:                                   ; preds = %1484, %1489
  %1485 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1058)
          to label %1486 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1989

1486:                                             ; preds = %.preheader1987
  %1487 = load i8, ptr %1485, align 1, !tbaa !5, !range !9, !noundef !10
  %1488 = trunc nuw i8 %1487 to i1
  br i1 %1488, label %1509, label %1489

1489:                                             ; preds = %1486
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1987 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1989, !llvm.loop !27

1490:                                             ; preds = %1470
  %1491 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %101) #6
  br label %.loopexit.split-lp

1492:                                             ; preds = %1473
  %1493 = landingpad { ptr, i32 }
          cleanup
  br label %1496

1494:                                             ; preds = %1474
  %1495 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %102) #6
  br label %1496

1496:                                             ; preds = %1494, %1492
  %.pn566 = phi { ptr, i32 } [ %1495, %1494 ], [ %1493, %1492 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %102) #6
  br label %.loopexit.split-lp

1497:                                             ; preds = %1476
  %1498 = landingpad { ptr, i32 }
          cleanup
  br label %1501

1499:                                             ; preds = %1477
  %1500 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %103) #6
  br label %1501

1501:                                             ; preds = %1499, %1497
  %.pn568 = phi { ptr, i32 } [ %1500, %1499 ], [ %1498, %1497 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %103) #6
  br label %.loopexit.split-lp

1502:                                             ; preds = %1479
  %1503 = landingpad { ptr, i32 }
          cleanup
  br label %1506

1504:                                             ; preds = %1480
  %1505 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %104) #6
  br label %1506

1506:                                             ; preds = %1504, %1502
  %.pn570 = phi { ptr, i32 } [ %1505, %1504 ], [ %1503, %1502 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %104) #6
  br label %.loopexit.split-lp

1507:                                             ; preds = %1482
  %1508 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %105) #6
  br label %.loopexit.split-lp

1509:                                             ; preds = %1486
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1510 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1510:                                             ; preds = %1509
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %106) #6
  store i8 0, ptr %106, align 1, !tbaa !5
  %1511 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %106)
          to label %1512 unwind label %1527

1512:                                             ; preds = %1510
  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 %1513 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1513:                                             ; preds = %1512
  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 %1514 unwind label %1529

1514:                                             ; preds = %1513
  %1515 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1041, ptr noundef nonnull align 8 dereferenceable(24) %107)
          to label %1516 unwind label %1531

1516:                                             ; preds = %1514
  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 %1517 unwind label %1534

1517:                                             ; preds = %1516
  %1518 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1053, ptr noundef nonnull align 8 dereferenceable(24) %108)
          to label %1519 unwind label %1536

1519:                                             ; preds = %1517
  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
  %1520 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %109)
          to label %1521 unwind label %1539

1521:                                             ; preds = %1519
  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 %.preheader1980 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader1980:                                   ; preds = %1521, %1526
  %1522 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1058)
          to label %1523 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1982

1523:                                             ; preds = %.preheader1980
  %1524 = load i8, ptr %1522, align 1, !tbaa !5, !range !9, !noundef !10
  %1525 = trunc nuw i8 %1524 to i1
  br i1 %1525, label %1541, label %1526

1526:                                             ; preds = %1523
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1980 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1982, !llvm.loop !28

1527:                                             ; preds = %1510
  %1528 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %106) #6
  br label %.loopexit.split-lp

1529:                                             ; preds = %1513
  %1530 = landingpad { ptr, i32 }
          cleanup
  br label %1533

1531:                                             ; preds = %1514
  %1532 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %107) #6
  br label %1533

1533:                                             ; preds = %1531, %1529
  %.pn572 = phi { ptr, i32 } [ %1532, %1531 ], [ %1530, %1529 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %107) #6
  br label %.loopexit.split-lp

1534:                                             ; preds = %1516
  %1535 = landingpad { ptr, i32 }
          cleanup
  br label %1538

1536:                                             ; preds = %1517
  %1537 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %108) #6
  br label %1538

1538:                                             ; preds = %1536, %1534
  %.pn574 = phi { ptr, i32 } [ %1537, %1536 ], [ %1535, %1534 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %108) #6
  br label %.loopexit.split-lp

1539:                                             ; preds = %1519
  %1540 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %109) #6
  br label %.loopexit.split-lp

1541:                                             ; preds = %1523
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1542 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1542:                                             ; preds = %1541
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %110) #6
  store i8 0, ptr %110, align 1, !tbaa !5
  %1543 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %110)
          to label %1544 unwind label %1545

1544:                                             ; preds = %1542
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %110) #6
  br label %.invoke2310

.invoke2310:                                      ; preds = %855, %1544
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1547 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1545:                                             ; preds = %1542
  %1546 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %110) #6
  br label %.loopexit.split-lp

1547:                                             ; preds = %.invoke2310
  %1548 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 270)
          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.sp2104

1549:                                             ; preds = %1547
  %1550 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %.preheader1972 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader1972:                                   ; preds = %1549
  %1551 = getelementptr inbounds i8, ptr %0, i64 2552
  %1552 = getelementptr inbounds i8, ptr %0, i64 2728
  %1553 = getelementptr inbounds i8, ptr %0, i64 2904
  %1554 = getelementptr inbounds i8, ptr %0, i64 600
  br label %1555

1555:                                             ; preds = %.preheader1972, %1615
  %1556 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp1974

1557:                                             ; preds = %1555
  %1558 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          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.sp1974

1559:                                             ; preds = %1557
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %111) #6
  store i8 0, ptr %111, align 1, !tbaa !5
  %1560 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %111)
          to label %1561 unwind label %1571

1561:                                             ; preds = %1559
  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
  %1562 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %112)
          to label %1563 unwind label %1573

1563:                                             ; preds = %1561
  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 %.preheader1965 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1974

.preheader1965:                                   ; preds = %1563, %1577
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %113) #6
  store i8 0, ptr %113, align 1, !tbaa !5
  %1564 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %113)
          to label %1565 unwind label %1575

1565:                                             ; preds = %.preheader1965
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %113) #6
  %1566 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %1567 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1967

1567:                                             ; preds = %1565
  %1568 = load i8, ptr %1566, align 1, !tbaa !5, !range !9, !noundef !10
  %1569 = trunc nuw i8 %1568 to i1
  br i1 %1569, label %1570, label %1577

1570:                                             ; preds = %1567
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1578 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1974

1571:                                             ; preds = %1559
  %1572 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %111) #6
  br label %.loopexit.split-lp

1573:                                             ; preds = %1561
  %1574 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %112) #6
  br label %.loopexit.split-lp

1575:                                             ; preds = %.preheader1965
  %1576 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %113) #6
  br label %.loopexit.split-lp

1577:                                             ; preds = %1567
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1965 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1967, !llvm.loop !29

1578:                                             ; preds = %1570
  %1579 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %5)
  %1580 = add nsw i64 %1579, 1
  %1581 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %5, i64 noundef %1580)
          to label %1582 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1974

1582:                                             ; preds = %1578
  %1583 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp1974

1584:                                             ; preds = %1582
  %1585 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          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.sp1974

1586:                                             ; preds = %1584
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %114) #6
  store i8 0, ptr %114, align 1, !tbaa !5
  %1587 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %114)
          to label %1588 unwind label %1598

1588:                                             ; preds = %1586
  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
  %1589 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %115)
          to label %1590 unwind label %1600

1590:                                             ; preds = %1588
  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 %.preheader1957 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1974

.preheader1957:                                   ; preds = %1590, %1604
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %116) #6
  store i8 0, ptr %116, align 1, !tbaa !5
  %1591 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %116)
          to label %1592 unwind label %1602

1592:                                             ; preds = %.preheader1957
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %116) #6
  %1593 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %1594 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1959

1594:                                             ; preds = %1592
  %1595 = load i8, ptr %1593, align 1, !tbaa !5, !range !9, !noundef !10
  %1596 = trunc nuw i8 %1595 to i1
  br i1 %1596, label %1597, label %1604

1597:                                             ; preds = %1594
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1605 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1974

1598:                                             ; preds = %1586
  %1599 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %114) #6
  br label %.loopexit.split-lp

1600:                                             ; preds = %1588
  %1601 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %115) #6
  br label %.loopexit.split-lp

1602:                                             ; preds = %.preheader1957
  %1603 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %116) #6
  br label %.loopexit.split-lp

1604:                                             ; preds = %1594
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1957 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1959, !llvm.loop !30

1605:                                             ; preds = %1597
  %1606 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %5)
  %1607 = add nsw i64 %1606, 15
  %1608 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %5, i64 noundef %1607)
          to label %1609 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1974

1609:                                             ; preds = %1605
  %1610 = 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 %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.sp1974

1611:                                             ; preds = %1609
  %1612 = call noundef i64 @_ZNK5sc_dt15sc_int_subref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(28) %1610)
  %1613 = icmp ugt i64 %1612, -5
  br i1 %1613, label %1614, label %1615

1614:                                             ; preds = %1611
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1616 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1615:                                             ; preds = %1611
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1555 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1974, !llvm.loop !31

1616:                                             ; preds = %1614
  %1617 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 514)
          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.sp2104

1618:                                             ; preds = %1616
  %1619 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 5)
          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.sp2104

1620:                                             ; preds = %1618
  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 %1621 unwind label %1650

1621:                                             ; preds = %1620
  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 %1622 unwind label %1652

1622:                                             ; preds = %1621
  %1623 = 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 %1624 unwind label %1654

1624:                                             ; preds = %1622
  %1625 = 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 %1626 unwind label %1654

1626:                                             ; preds = %1624
  %1627 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %1623, ptr noundef nonnull align 8 dereferenceable(8) %1625)
          to label %1628 unwind label %1654

1628:                                             ; preds = %1626
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %119) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %119, i32 noundef 0)
          to label %1629 unwind label %1656

1629:                                             ; preds = %1628
  %1630 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %1627, ptr noundef nonnull align 8 dereferenceable(8) %119)
          to label %1631 unwind label %1658

1631:                                             ; preds = %1629
  %1632 = 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) %1630)
          to label %1633 unwind label %1658

1633:                                             ; preds = %1631
  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 %1634

1634:                                             ; preds = %1707, %1633
  %1635 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1636 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1952

1636:                                             ; preds = %1634
  %1637 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          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.sp1952

1638:                                             ; preds = %1636
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %120) #6
  store i8 0, ptr %120, align 1, !tbaa !5
  %1639 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %120)
          to label %1640 unwind label %1664

1640:                                             ; preds = %1638
  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
  %1641 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %121)
          to label %1642 unwind label %1666

1642:                                             ; preds = %1640
  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 %.preheader1943 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1952

.preheader1943:                                   ; preds = %1642, %1670
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %122) #6
  store i8 0, ptr %122, align 1, !tbaa !5
  %1643 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %122)
          to label %1644 unwind label %1668

1644:                                             ; preds = %.preheader1943
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %122) #6
  %1645 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %1646 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1945

1646:                                             ; preds = %1644
  %1647 = load i8, ptr %1645, align 1, !tbaa !5, !range !9, !noundef !10
  %1648 = trunc nuw i8 %1647 to i1
  br i1 %1648, label %1649, label %1670

1649:                                             ; preds = %1646
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1671 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1952

1650:                                             ; preds = %1620
  %1651 = landingpad { ptr, i32 }
          cleanup
  br label %1663

1652:                                             ; preds = %1621
  %1653 = landingpad { ptr, i32 }
          cleanup
  br label %1662

1654:                                             ; preds = %1626, %1624, %1622
  %1655 = landingpad { ptr, i32 }
          cleanup
  br label %1661

1656:                                             ; preds = %1628
  %1657 = landingpad { ptr, i32 }
          cleanup
  br label %1660

1658:                                             ; preds = %1631, %1629
  %1659 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %119) #6
  br label %1660

1660:                                             ; preds = %1658, %1656
  %.pn576 = phi { ptr, i32 } [ %1659, %1658 ], [ %1657, %1656 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %119) #6
  br label %1661

1661:                                             ; preds = %1660, %1654
  %.pn576.pn = phi { ptr, i32 } [ %.pn576, %1660 ], [ %1655, %1654 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %118) #6
  br label %1662

1662:                                             ; preds = %1661, %1652
  %.pn576.pn.pn = phi { ptr, i32 } [ %.pn576.pn, %1661 ], [ %1653, %1652 ]
  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 %1663

1663:                                             ; preds = %1662, %1650
  %.pn576.pn.pn.pn = phi { ptr, i32 } [ %.pn576.pn.pn, %1662 ], [ %1651, %1650 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %117) #6
  br label %.loopexit.split-lp

1664:                                             ; preds = %1638
  %1665 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %120) #6
  br label %.loopexit.split-lp

1666:                                             ; preds = %1640
  %1667 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %121) #6
  br label %.loopexit.split-lp

1668:                                             ; preds = %.preheader1943
  %1669 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %122) #6
  br label %.loopexit.split-lp

1670:                                             ; preds = %1646
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1943 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1945, !llvm.loop !32

1671:                                             ; preds = %1649
  %1672 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %5)
  %1673 = add nsw i64 %1672, 128
  %1674 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %5, i64 noundef %1673)
          to label %1675 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1952

1675:                                             ; preds = %1671
  %1676 = 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 %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.sp1952

1677:                                             ; preds = %1675
  %1678 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %1676)
          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.sp1952

1679:                                             ; preds = %1677
  %.not = icmp eq i64 %1678, 0
  br i1 %.not, label %1681, label %1680

1680:                                             ; preds = %1679
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1722 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1681:                                             ; preds = %1679
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1682 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1952

1682:                                             ; preds = %1681
  %1683 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
  %1684 = add nsw i64 %1683, 1
  %1685 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %1684)
  %1686 = 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 %1687 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1952

1687:                                             ; preds = %1682
  %1688 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %1686)
          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.sp1952

1689:                                             ; preds = %1687
  %.not581 = icmp eq i64 %1688, 0
  br i1 %.not581, label %1692, label %1690

1690:                                             ; preds = %1689
  %1691 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %1694 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1952

1692:                                             ; preds = %1689
  %1693 = 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 %1694

1694:                                             ; preds = %1690, %1692
  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 %1695 unwind label %1708

1695:                                             ; preds = %1694
  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 %1696 unwind label %1710

1696:                                             ; preds = %1695
  %1697 = 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 %1698 unwind label %1712

1698:                                             ; preds = %1696
  %1699 = 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 %1700 unwind label %1712

1700:                                             ; preds = %1698
  %1701 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %1697, ptr noundef nonnull align 8 dereferenceable(8) %1699)
          to label %1702 unwind label %1712

1702:                                             ; preds = %1700
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %125) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %125, i32 noundef 0)
          to label %1703 unwind label %1714

1703:                                             ; preds = %1702
  %1704 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %1701, ptr noundef nonnull align 8 dereferenceable(8) %125)
          to label %1705 unwind label %1716

1705:                                             ; preds = %1703
  %1706 = 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) %1704)
          to label %1707 unwind label %1716

1707:                                             ; preds = %1705
  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 %1634, !llvm.loop !33

1708:                                             ; preds = %1694
  %1709 = landingpad { ptr, i32 }
          cleanup
  br label %1721

1710:                                             ; preds = %1695
  %1711 = landingpad { ptr, i32 }
          cleanup
  br label %1720

1712:                                             ; preds = %1700, %1698, %1696
  %1713 = landingpad { ptr, i32 }
          cleanup
  br label %1719

1714:                                             ; preds = %1702
  %1715 = landingpad { ptr, i32 }
          cleanup
  br label %1718

1716:                                             ; preds = %1705, %1703
  %1717 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %125) #6
  br label %1718

1718:                                             ; preds = %1716, %1714
  %.pn582 = phi { ptr, i32 } [ %1717, %1716 ], [ %1715, %1714 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %125) #6
  br label %1719

1719:                                             ; preds = %1718, %1712
  %.pn582.pn = phi { ptr, i32 } [ %.pn582, %1718 ], [ %1713, %1712 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %124) #6
  br label %1720

1720:                                             ; preds = %1719, %1710
  %.pn582.pn.pn = phi { ptr, i32 } [ %.pn582.pn, %1719 ], [ %1711, %1710 ]
  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 %1721

1721:                                             ; preds = %1720, %1708
  %.pn582.pn.pn.pn = phi { ptr, i32 } [ %.pn582.pn.pn, %1720 ], [ %1709, %1708 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %123) #6
  br label %.loopexit.split-lp

1722:                                             ; preds = %1680
  %1723 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef -8190)
          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.sp2104

1724:                                             ; preds = %1722
  %1725 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 63)
          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.sp2104

1726:                                             ; preds = %1724
  %1727 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp2104

1728:                                             ; preds = %1726
  %1729 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          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.sp2104

1730:                                             ; preds = %1728
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %126) #6
  store i8 0, ptr %126, align 1, !tbaa !5
  %1731 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %126)
          to label %1732 unwind label %1742

1732:                                             ; preds = %1730
  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
  %1733 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %127)
          to label %1734 unwind label %1744

1734:                                             ; preds = %1732
  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 %.preheader1936 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader1936:                                   ; preds = %1734, %1748
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %128) #6
  store i8 0, ptr %128, align 1, !tbaa !5
  %1735 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %128)
          to label %1736 unwind label %1746

1736:                                             ; preds = %.preheader1936
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %128) #6
  %1737 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %1738 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1938

1738:                                             ; preds = %1736
  %1739 = load i8, ptr %1737, align 1, !tbaa !5, !range !9, !noundef !10
  %1740 = trunc nuw i8 %1739 to i1
  br i1 %1740, label %1741, label %1748

1741:                                             ; preds = %1738
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1749 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

1742:                                             ; preds = %1730
  %1743 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %126) #6
  br label %.loopexit.split-lp

1744:                                             ; preds = %1732
  %1745 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %127) #6
  br label %.loopexit.split-lp

1746:                                             ; preds = %.preheader1936
  %1747 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %128) #6
  br label %.loopexit.split-lp

1748:                                             ; preds = %1738
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1936 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1938, !llvm.loop !34

1749:                                             ; preds = %1741
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1928 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104

.preheader1928:                                   ; preds = %1749
  %1750 = getelementptr inbounds i8, ptr %0, i64 4200
  %1751 = getelementptr inbounds i8, ptr %0, i64 3656
  %1752 = getelementptr inbounds i8, ptr %0, i64 3480
  %1753 = getelementptr inbounds i8, ptr %0, i64 1640
  %1754 = getelementptr inbounds i8, ptr %0, i64 1472
  %1755 = getelementptr inbounds i8, ptr %0, i64 784
  %1756 = getelementptr inbounds i8, ptr %0, i64 2008
  %1757 = getelementptr inbounds i8, ptr %0, i64 4376
  %1758 = getelementptr inbounds i8, ptr %0, i64 4024
  %1759 = getelementptr inbounds i8, ptr %0, i64 1288
  %1760 = getelementptr inbounds i8, ptr %0, i64 952
  %1761 = getelementptr inbounds i8, ptr %0, i64 1120
  %1762 = getelementptr inbounds i8, ptr %0, i64 1824
  br label %1763

1763:                                             ; preds = %.invoke, %.preheader1928
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1764 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1764:                                             ; preds = %1763
  %1765 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef -1)
          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.sp1930

1766:                                             ; preds = %1764
  %1767 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 0)
          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.sp1930

1768:                                             ; preds = %1766
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1769 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1769:                                             ; preds = %1768
  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 %1770 unwind label %1785

1770:                                             ; preds = %1769
  %1771 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %129)
          to label %1772 unwind label %1787

1772:                                             ; preds = %1770
  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 %1773 unwind label %1790

1773:                                             ; preds = %1772
  %1774 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %130)
          to label %1775 unwind label %1792

1775:                                             ; preds = %1773
  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
  %1776 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %1777 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1777:                                             ; preds = %1775
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %131) #6
  store i8 1, ptr %131, align 1, !tbaa !5
  %1778 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %131)
          to label %1779 unwind label %1795

1779:                                             ; preds = %1777
  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 %.preheader1921 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1921:                                   ; preds = %1779, %1784
  %1780 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %1781 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1923

1781:                                             ; preds = %.preheader1921
  %1782 = load i8, ptr %1780, align 1, !tbaa !5, !range !9, !noundef !10
  %1783 = trunc nuw i8 %1782 to i1
  br i1 %1783, label %1797, label %1784

1784:                                             ; preds = %1781
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1921 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1923, !llvm.loop !35

1785:                                             ; preds = %1769
  %1786 = landingpad { ptr, i32 }
          cleanup
  br label %1789

1787:                                             ; preds = %1770
  %1788 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %129) #6
  br label %1789

1789:                                             ; preds = %1787, %1785
  %.pn587 = phi { ptr, i32 } [ %1788, %1787 ], [ %1786, %1785 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %129) #6
  br label %.loopexit.split-lp

1790:                                             ; preds = %1772
  %1791 = landingpad { ptr, i32 }
          cleanup
  br label %1794

1792:                                             ; preds = %1773
  %1793 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %130) #6
  br label %1794

1794:                                             ; preds = %1792, %1790
  %.pn589 = phi { ptr, i32 } [ %1793, %1792 ], [ %1791, %1790 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %130) #6
  br label %.loopexit.split-lp

1795:                                             ; preds = %1777
  %1796 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %131) #6
  br label %.loopexit.split-lp

1797:                                             ; preds = %1781
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1798 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1798:                                             ; preds = %1797
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %132) #6
  store i8 0, ptr %132, align 1, !tbaa !5
  %1799 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %132)
          to label %1800 unwind label %1842

1800:                                             ; preds = %1798
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %132) #6
  %1801 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi14EEEEcvRKS3_Ev(ptr noundef nonnull align 8 dereferenceable(168) %1754)
          to label %1802 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1802:                                             ; preds = %1800
  %1803 = 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 %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.sp1930

1804:                                             ; preds = %1802
  %1805 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt13sc_int_subrefaSERKNS_11sc_int_baseE(ptr noundef nonnull align 8 dereferenceable(28) %1803, ptr noundef nonnull align 8 dereferenceable(24) %1801)
          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.sp1930

1806:                                             ; preds = %1804
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1807 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1807:                                             ; preds = %1806
  %1808 = 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 %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.sp1930

1809:                                             ; preds = %1807
  %1810 = 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) %1808)
          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.sp1930

1811:                                             ; preds = %1809
  %1812 = 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 %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.sp1930

1813:                                             ; preds = %1811
  %1814 = call noundef i64 @_ZNK5sc_dt15sc_int_subref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(28) %1812)
  %1815 = icmp eq i64 %1814, -1
  br i1 %1815, label %1816, label %1864

1816:                                             ; preds = %1813
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1817 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1817:                                             ; preds = %1816
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %133) #6
  store i8 1, ptr %133, align 1, !tbaa !5
  %1818 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %838, ptr noundef nonnull align 1 dereferenceable(1) %133)
          to label %1819 unwind label %1844

1819:                                             ; preds = %1817
  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
  %1820 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %841, ptr noundef nonnull align 1 dereferenceable(1) %134)
          to label %1821 unwind label %1846

1821:                                             ; preds = %1819
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %134) #6
  %1822 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 22)
          to label %1823 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1823:                                             ; preds = %1821
  %1824 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp1930

1825:                                             ; preds = %1823
  %1826 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          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.sp1930

1827:                                             ; preds = %1825
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %135) #6
  store i8 1, ptr %135, align 1, !tbaa !5
  %1828 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %135)
          to label %1829 unwind label %1848

1829:                                             ; preds = %1827
  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
  %1830 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %136)
          to label %1831 unwind label %1850

1831:                                             ; preds = %1829
  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 %.preheader1296 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1296:                                   ; preds = %1831, %1854
  %1832 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %1833 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

1833:                                             ; preds = %.preheader1296
  %1834 = 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) %1832)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %137) #6
  store i8 0, ptr %137, align 1, !tbaa !5
  %1835 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %137)
          to label %1836 unwind label %1852

1836:                                             ; preds = %1833
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %137) #6
  %1837 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %1838 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

1838:                                             ; preds = %1836
  %1839 = load i8, ptr %1837, align 1, !tbaa !5, !range !9, !noundef !10
  %1840 = trunc nuw i8 %1839 to i1
  br i1 %1840, label %1841, label %1854

1841:                                             ; preds = %1838
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1855 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1842:                                             ; preds = %1798
  %1843 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %132) #6
  br label %.loopexit.split-lp

1844:                                             ; preds = %1817
  %1845 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %133) #6
  br label %.loopexit.split-lp

1846:                                             ; preds = %1819
  %1847 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %134) #6
  br label %.loopexit.split-lp

1848:                                             ; preds = %1827
  %1849 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %135) #6
  br label %.loopexit.split-lp

1850:                                             ; preds = %1829
  %1851 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %136) #6
  br label %.loopexit.split-lp

1852:                                             ; preds = %1833
  %1853 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %137) #6
  br label %.loopexit.split-lp

1854:                                             ; preds = %1838
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1296 unwind label %.loopexit.split-lp.loopexit.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

1855:                                             ; preds = %1841
  %1856 = 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 %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.sp1930

1857:                                             ; preds = %1855
  %1858 = 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) %1856)
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1292 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1292:                                   ; preds = %1857, %1860
  %1859 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %10)
  %.not1223 = icmp eq i64 %1859, 0
  br i1 %.not1223, label %.loopexit1293, label %1860

1860:                                             ; preds = %.preheader1292
  %1861 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %10)
  %1862 = add nsw i64 %1861, -1
  %1863 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %10, i64 noundef %1862)
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1292 unwind label %.loopexit.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

1864:                                             ; preds = %1813
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1865 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1865:                                             ; preds = %1864
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %138) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %138, i32 noundef 0)
          to label %1866 unwind label %1889

1866:                                             ; preds = %1865
  %1867 = 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 %1868 unwind label %1891

1868:                                             ; preds = %1866
  %1869 = 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) %1867)
          to label %1870 unwind label %1891

1870:                                             ; preds = %1868
  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
  %1871 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1872 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1872:                                             ; preds = %1870
  %1873 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          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.sp1930

1874:                                             ; preds = %1872
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %139) #6
  store i8 1, ptr %139, align 1, !tbaa !5
  %1875 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %139)
          to label %1876 unwind label %1894

1876:                                             ; preds = %1874
  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
  %1877 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %140)
          to label %1878 unwind label %1896

1878:                                             ; preds = %1876
  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 %.preheader1913 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1913:                                   ; preds = %1878, %1900
  %1879 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %1880 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1915

1880:                                             ; preds = %.preheader1913
  %1881 = 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) %1879)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %141) #6
  store i8 0, ptr %141, align 1, !tbaa !5
  %1882 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %141)
          to label %1883 unwind label %1898

1883:                                             ; preds = %1880
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %141) #6
  %1884 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %1885 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1915

1885:                                             ; preds = %1883
  %1886 = load i8, ptr %1884, align 1, !tbaa !5, !range !9, !noundef !10
  %1887 = trunc nuw i8 %1886 to i1
  br i1 %1887, label %1888, label %1900

1888:                                             ; preds = %1885
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1901 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1889:                                             ; preds = %1865
  %1890 = landingpad { ptr, i32 }
          cleanup
  br label %1893

1891:                                             ; preds = %1868, %1866
  %1892 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %138) #6
  br label %1893

1893:                                             ; preds = %1891, %1889
  %.pn591 = phi { ptr, i32 } [ %1892, %1891 ], [ %1890, %1889 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %138) #6
  br label %.loopexit.split-lp

1894:                                             ; preds = %1874
  %1895 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %139) #6
  br label %.loopexit.split-lp

1896:                                             ; preds = %1876
  %1897 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %140) #6
  br label %.loopexit.split-lp

1898:                                             ; preds = %1880
  %1899 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %141) #6
  br label %.loopexit.split-lp

1900:                                             ; preds = %1885
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1913 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1915, !llvm.loop !38

1901:                                             ; preds = %1888
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %142) #6
  %1902 = 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 %1903 unwind label %1927

1903:                                             ; preds = %1901
  %1904 = call noundef i64 @_ZNK5sc_dt15sc_int_subref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(28) %1902)
  %1905 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1756)
          to label %1906 unwind label %1927

1906:                                             ; preds = %1903
  %1907 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %1905, i32 noundef 1)
          to label %1908 unwind label %1927

1908:                                             ; preds = %1906
  %1909 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8) %1907, i1 noundef zeroext false)
          to label %1910 unwind label %1927

1910:                                             ; preds = %1908
  invoke void @_ZN5sc_dtorEyRKNS_12sc_concatrefE(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_unsigned") align 8 %142, i64 noundef %1904, ptr noundef nonnull align 8 dereferenceable(36) %1909)
          to label %1911 unwind label %1927

1911:                                             ; preds = %1910
  %1912 = 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 %1913 unwind label %1929

1913:                                             ; preds = %1911
  call void @_ZN5sc_dt11sc_unsignedD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %142) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %142) #6
  %1914 = 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 %1915 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1915:                                             ; preds = %1913
  %1916 = 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) %1914)
  %1917 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %1918 = icmp sgt i64 %1917, 2
  br i1 %1918, label %1919, label %1936

1919:                                             ; preds = %1915
  %1920 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 1)
          to label %1921 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1921:                                             ; preds = %1919
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1922 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1922:                                             ; preds = %1921
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %143) #6
  store i8 1, ptr %143, align 1, !tbaa !5
  %1923 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %838, ptr noundef nonnull align 1 dereferenceable(1) %143)
          to label %1924 unwind label %1932

1924:                                             ; preds = %1922
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %143) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %144) #6
  store i8 1, ptr %144, align 1, !tbaa !5
  %1925 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %841, ptr noundef nonnull align 1 dereferenceable(1) %144)
          to label %1926 unwind label %1934

1926:                                             ; preds = %1924
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %144) #6
  br label %.loopexit1293

1927:                                             ; preds = %1910, %1908, %1906, %1903, %1901
  %1928 = landingpad { ptr, i32 }
          cleanup
  br label %1931

1929:                                             ; preds = %1911
  %1930 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt11sc_unsignedD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %142) #6
  br label %1931

1931:                                             ; preds = %1929, %1927
  %.pn593 = phi { ptr, i32 } [ %1930, %1929 ], [ %1928, %1927 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %142) #6
  br label %.loopexit.split-lp

1932:                                             ; preds = %1922
  %1933 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %143) #6
  br label %.loopexit.split-lp

1934:                                             ; preds = %1924
  %1935 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %144) #6
  br label %.loopexit.split-lp

1936:                                             ; preds = %1915
  %1937 = 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 %1938 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1938:                                             ; preds = %1936
  %1939 = 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 %1940 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1940:                                             ; preds = %1938
  %1941 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %1939)
  %1942 = 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 %1943 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1943:                                             ; preds = %1940
  %1944 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %1942)
  %1945 = zext i1 %1944 to i32
  %1946 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef %1945)
          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.sp1930

1947:                                             ; preds = %1943
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %145) #6
  %1948 = 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 %1949 unwind label %1987

1949:                                             ; preds = %1947
  %1950 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %1948)
          to label %1951 unwind label %1987

1951:                                             ; preds = %1949
  %1952 = icmp ne i64 %1950, 0
  %1953 = zext i1 %1952 to i8
  store i8 %1953, ptr %145, align 1, !tbaa !5
  %1954 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %838, ptr noundef nonnull align 1 dereferenceable(1) %145)
          to label %1955 unwind label %1987

1955:                                             ; preds = %1951
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %145) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %146) #6
  %1956 = 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 %1957 unwind label %1989

1957:                                             ; preds = %1955
  %1958 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %1956)
          to label %1959 unwind label %1989

1959:                                             ; preds = %1957
  %1960 = icmp ne i64 %1958, 0
  %1961 = zext i1 %1960 to i8
  store i8 %1961, ptr %146, align 1, !tbaa !5
  %1962 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %841, ptr noundef nonnull align 1 dereferenceable(1) %146)
          to label %1963 unwind label %1989

1963:                                             ; preds = %1959
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %146) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %147) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %147, i32 noundef 8)
          to label %1964 unwind label %1991

1964:                                             ; preds = %1963
  %1965 = 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) %147)
          to label %1966 unwind label %1993

1966:                                             ; preds = %1964
  %1967 = 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) %1965)
          to label %1968 unwind label %1993

1968:                                             ; preds = %1966
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %147) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %147) #6
  %1969 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1970 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1970:                                             ; preds = %1968
  %1971 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %1972 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1972:                                             ; preds = %1970
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %148) #6
  store i8 1, ptr %148, align 1, !tbaa !5
  %1973 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %148)
          to label %1974 unwind label %1996

1974:                                             ; preds = %1972
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %148) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %149) #6
  store i8 1, ptr %149, align 1, !tbaa !5
  %1975 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %149)
          to label %1976 unwind label %1998

1976:                                             ; preds = %1974
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %149) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1906 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1906:                                   ; preds = %1976, %2002
  %1977 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %1978 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1908

1978:                                             ; preds = %.preheader1906
  %1979 = 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) %1977)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %150) #6
  store i8 0, ptr %150, align 1, !tbaa !5
  %1980 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %150)
          to label %1981 unwind label %2000

1981:                                             ; preds = %1978
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %150) #6
  %1982 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %1983 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1908

1983:                                             ; preds = %1981
  %1984 = load i8, ptr %1982, align 1, !tbaa !5, !range !9, !noundef !10
  %1985 = trunc nuw i8 %1984 to i1
  br i1 %1985, label %1986, label %2002

1986:                                             ; preds = %1983
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2003 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

1987:                                             ; preds = %1951, %1949, %1947
  %1988 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %145) #6
  br label %.loopexit.split-lp

1989:                                             ; preds = %1959, %1957, %1955
  %1990 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %146) #6
  br label %.loopexit.split-lp

1991:                                             ; preds = %1963
  %1992 = landingpad { ptr, i32 }
          cleanup
  br label %1995

1993:                                             ; preds = %1966, %1964
  %1994 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %147) #6
  br label %1995

1995:                                             ; preds = %1993, %1991
  %.pn595 = phi { ptr, i32 } [ %1994, %1993 ], [ %1992, %1991 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %147) #6
  br label %.loopexit.split-lp

1996:                                             ; preds = %1972
  %1997 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %148) #6
  br label %.loopexit.split-lp

1998:                                             ; preds = %1974
  %1999 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %149) #6
  br label %.loopexit.split-lp

2000:                                             ; preds = %1978
  %2001 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %150) #6
  br label %.loopexit.split-lp

2002:                                             ; preds = %1983
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1906 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1908, !llvm.loop !39

2003:                                             ; preds = %1986
  %2004 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1756)
          to label %2005 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2005:                                             ; preds = %2003
  %2006 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %2004, i32 noundef 2)
          to label %2007 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2007:                                             ; preds = %2005
  %2008 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2006)
          to label %2009 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2009:                                             ; preds = %2007
  %.not597 = icmp eq i64 %2008, 0
  br i1 %.not597, label %2012, label %2010

2010:                                             ; preds = %2009
  %2011 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 254)
          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.sp1930

2012:                                             ; preds = %2009
  %2013 = 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 %2014

2014:                                             ; preds = %2010, %2012
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2015 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2015:                                             ; preds = %2014
  %2016 = 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 %2017 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2017:                                             ; preds = %2015
  %2018 = 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) %2016)
  %2019 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %28)
  %2020 = trunc i64 %2019 to i32
  switch i32 %2020, label %.invoke2315 [
    i32 193, label %2021
    i32 1, label %2337
    i32 194, label %2474
    i32 201, label %2474
    i32 205, label %2474
    i32 209, label %2480
    i32 7, label %2487
    i32 59, label %2729
    i32 208, label %3424
    i32 9, label %3783
    i32 210, label %5088
    i32 176, label %6000
    i32 10, label %7137
  ]

2021:                                             ; preds = %2017
  %2022 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1178 = icmp eq i64 %2022, 3
  br i1 %.not1178, label %2023, label %.invoke2315

2023:                                             ; preds = %2021
  %2024 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %.not1179 = icmp eq i64 %2024, 0
  br i1 %.not1179, label %2025, label %.invoke2315

2025:                                             ; preds = %2023
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %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.sp1930

2026:                                             ; preds = %2025
  %2027 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef 1)
          to label %2028 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2028:                                             ; preds = %2026
  %2029 = 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 %151) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %152, i32 noundef 0)
          to label %2030 unwind label %2071

2030:                                             ; preds = %2028
  %2031 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %152, ptr noundef nonnull align 8 dereferenceable(8) %23)
          to label %2032 unwind label %2073

2032:                                             ; preds = %2030
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %153) #6
  %2033 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1760)
          to label %2034 unwind label %2075

2034:                                             ; preds = %2032
  invoke void @_ZN5sc_dt6sc_intILi4EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %153, ptr noundef nonnull align 8 dereferenceable(24) %2033)
          to label %2035 unwind label %2075

2035:                                             ; preds = %2034
  %2036 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2031, ptr noundef nonnull align 8 dereferenceable(8) %153)
          to label %2037 unwind label %2077

2037:                                             ; preds = %2035
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %154) #6
  %2038 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1759)
          to label %2039 unwind label %2079

2039:                                             ; preds = %2037
  %2040 = load i8, ptr %2038, align 1, !tbaa !5, !range !9, !noundef !10
  %2041 = zext nneg i8 %2040 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %154, i32 noundef %2041)
          to label %2042 unwind label %2079

2042:                                             ; preds = %2039
  %2043 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2036, ptr noundef nonnull align 8 dereferenceable(8) %154)
          to label %2044 unwind label %2081

2044:                                             ; preds = %2042
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %151, ptr noundef nonnull align 1 dereferenceable(1) %2043)
          to label %2045 unwind label %2081

2045:                                             ; preds = %2044
  %2046 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %151)
          to label %2047 unwind label %2083

2047:                                             ; preds = %2045
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %151) #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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %152) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %152) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %151) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %155) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %156, i32 noundef 10)
          to label %2048 unwind label %2091

2048:                                             ; preds = %2047
  %2049 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %156, ptr noundef nonnull align 8 dereferenceable(8) %24)
          to label %2050 unwind label %2093

2050:                                             ; preds = %2048
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %157) #6
  %2051 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1762)
          to label %2052 unwind label %2095

2052:                                             ; preds = %2050
  %2053 = load i8, ptr %2051, align 1, !tbaa !5, !range !9, !noundef !10
  %2054 = zext nneg i8 %2053 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %157, i32 noundef %2054)
          to label %2055 unwind label %2095

2055:                                             ; preds = %2052
  %2056 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2049, ptr noundef nonnull align 8 dereferenceable(8) %157)
          to label %2057 unwind label %2097

2057:                                             ; preds = %2055
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %155, ptr noundef nonnull align 1 dereferenceable(1) %2056)
          to label %2058 unwind label %2097

2058:                                             ; preds = %2057
  %2059 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %155)
          to label %2060 unwind label %2099

2060:                                             ; preds = %2058
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %155) #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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %156) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %156) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %155) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %158) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %158, i32 noundef -4)
          to label %2061 unwind label %2105

2061:                                             ; preds = %2060
  %2062 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %158)
          to label %2063 unwind label %2107

2063:                                             ; preds = %2061
  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 @llvm.lifetime.start.p0(i64 1, ptr nonnull %159) #6
  store i8 1, ptr %159, align 1, !tbaa !5
  %2064 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %159)
          to label %2065 unwind label %2110

2065:                                             ; preds = %2063
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %159) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1314 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1314:                                   ; preds = %2065, %2070
  %2066 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %2067 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2067:                                             ; preds = %.preheader1314
  %2068 = load i8, ptr %2066, align 1, !tbaa !5, !range !9, !noundef !10
  %2069 = trunc nuw i8 %2068 to i1
  br i1 %2069, label %2112, label %2070

2070:                                             ; preds = %2067
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1314 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2071:                                             ; preds = %2028
  %2072 = landingpad { ptr, i32 }
          cleanup
  br label %2090

2073:                                             ; preds = %2030
  %2074 = landingpad { ptr, i32 }
          cleanup
  br label %2089

2075:                                             ; preds = %2034, %2032
  %2076 = landingpad { ptr, i32 }
          cleanup
  br label %2088

2077:                                             ; preds = %2035
  %2078 = landingpad { ptr, i32 }
          cleanup
  br label %2087

2079:                                             ; preds = %2039, %2037
  %2080 = landingpad { ptr, i32 }
          cleanup
  br label %2086

2081:                                             ; preds = %2044, %2042
  %2082 = landingpad { ptr, i32 }
          cleanup
  br label %2085

2083:                                             ; preds = %2045
  %2084 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %151) #6
  br label %2085

2085:                                             ; preds = %2083, %2081
  %.pn1180 = phi { ptr, i32 } [ %2084, %2083 ], [ %2082, %2081 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %154) #6
  br label %2086

2086:                                             ; preds = %2085, %2079
  %.pn1180.pn = phi { ptr, i32 } [ %.pn1180, %2085 ], [ %2080, %2079 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %154) #6
  br label %2087

2087:                                             ; preds = %2086, %2077
  %.pn1180.pn.pn = phi { ptr, i32 } [ %.pn1180.pn, %2086 ], [ %2078, %2077 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %153) #6
  br label %2088

2088:                                             ; preds = %2087, %2075
  %.pn1180.pn.pn.pn = phi { ptr, i32 } [ %.pn1180.pn.pn, %2087 ], [ %2076, %2075 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %153) #6
  br label %2089

2089:                                             ; preds = %2088, %2073
  %.pn1180.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1180.pn.pn.pn, %2088 ], [ %2074, %2073 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %152) #6
  br label %2090

2090:                                             ; preds = %2089, %2071
  %.pn1180.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1180.pn.pn.pn.pn, %2089 ], [ %2072, %2071 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %152) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %151) #6
  br label %.loopexit.split-lp

2091:                                             ; preds = %2047
  %2092 = landingpad { ptr, i32 }
          cleanup
  br label %2104

2093:                                             ; preds = %2048
  %2094 = landingpad { ptr, i32 }
          cleanup
  br label %2103

2095:                                             ; preds = %2052, %2050
  %2096 = landingpad { ptr, i32 }
          cleanup
  br label %2102

2097:                                             ; preds = %2057, %2055
  %2098 = landingpad { ptr, i32 }
          cleanup
  br label %2101

2099:                                             ; preds = %2058
  %2100 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %155) #6
  br label %2101

2101:                                             ; preds = %2099, %2097
  %.pn1187 = phi { ptr, i32 } [ %2100, %2099 ], [ %2098, %2097 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %157) #6
  br label %2102

2102:                                             ; preds = %2101, %2095
  %.pn1187.pn = phi { ptr, i32 } [ %.pn1187, %2101 ], [ %2096, %2095 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %157) #6
  br label %2103

2103:                                             ; preds = %2102, %2093
  %.pn1187.pn.pn = phi { ptr, i32 } [ %.pn1187.pn, %2102 ], [ %2094, %2093 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %156) #6
  br label %2104

2104:                                             ; preds = %2103, %2091
  %.pn1187.pn.pn.pn = phi { ptr, i32 } [ %.pn1187.pn.pn, %2103 ], [ %2092, %2091 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %156) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %155) #6
  br label %.loopexit.split-lp

2105:                                             ; preds = %2060
  %2106 = landingpad { ptr, i32 }
          cleanup
  br label %2109

2107:                                             ; preds = %2061
  %2108 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %158) #6
  br label %2109

2109:                                             ; preds = %2107, %2105
  %.pn1192 = phi { ptr, i32 } [ %2108, %2107 ], [ %2106, %2105 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %158) #6
  br label %.loopexit.split-lp

2110:                                             ; preds = %2063
  %2111 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %159) #6
  br label %.loopexit.split-lp

2112:                                             ; preds = %2067
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2113 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2113:                                             ; preds = %2112
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %160) #6
  store i8 0, ptr %160, align 1, !tbaa !5
  %2114 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %160)
          to label %2115 unwind label %2138

2115:                                             ; preds = %2113
  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 %2116 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2116:                                             ; preds = %2115
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %161) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %161, i32 noundef 272)
          to label %2117 unwind label %2140

2117:                                             ; preds = %2116
  %2118 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %161)
          to label %2119 unwind label %2142

2119:                                             ; preds = %2117
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %161) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %161) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %162) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %163) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %163, i32 noundef 0)
          to label %2120 unwind label %2145

2120:                                             ; preds = %2119
  %2121 = 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) %163)
          to label %2122 unwind label %2147

2122:                                             ; preds = %2120
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %162, ptr noundef nonnull align 1 dereferenceable(1) %2121)
          to label %2123 unwind label %2147

2123:                                             ; preds = %2122
  %2124 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %162)
          to label %2125 unwind label %2149

2125:                                             ; preds = %2123
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %162) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %163) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %163) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %162) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %164, i32 noundef 1)
          to label %2126 unwind label %2153

2126:                                             ; preds = %2125
  %2127 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %164)
          to label %2128 unwind label %2155

2128:                                             ; preds = %2126
  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
  %2129 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2130 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2130:                                             ; preds = %2128
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %165) #6
  store i8 1, ptr %165, align 1, !tbaa !5
  %2131 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %165)
          to label %2132 unwind label %2158

2132:                                             ; preds = %2130
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %165) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1310 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1310:                                   ; preds = %2132, %2137
  %2133 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %2134 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2134:                                             ; preds = %.preheader1310
  %2135 = load i8, ptr %2133, align 1, !tbaa !5, !range !9, !noundef !10
  %2136 = trunc nuw i8 %2135 to i1
  br i1 %2136, label %2160, label %2137

2137:                                             ; preds = %2134
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1310 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2138:                                             ; preds = %2113
  %2139 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %160) #6
  br label %.loopexit.split-lp

2140:                                             ; preds = %2116
  %2141 = landingpad { ptr, i32 }
          cleanup
  br label %2144

2142:                                             ; preds = %2117
  %2143 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %161) #6
  br label %2144

2144:                                             ; preds = %2142, %2140
  %.pn1194 = phi { ptr, i32 } [ %2143, %2142 ], [ %2141, %2140 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %161) #6
  br label %.loopexit.split-lp

2145:                                             ; preds = %2119
  %2146 = landingpad { ptr, i32 }
          cleanup
  br label %2152

2147:                                             ; preds = %2122, %2120
  %2148 = landingpad { ptr, i32 }
          cleanup
  br label %2151

2149:                                             ; preds = %2123
  %2150 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %162) #6
  br label %2151

2151:                                             ; preds = %2149, %2147
  %.pn1196 = phi { ptr, i32 } [ %2150, %2149 ], [ %2148, %2147 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %163) #6
  br label %2152

2152:                                             ; preds = %2151, %2145
  %.pn1196.pn = phi { ptr, i32 } [ %.pn1196, %2151 ], [ %2146, %2145 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %163) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %162) #6
  br label %.loopexit.split-lp

2153:                                             ; preds = %2125
  %2154 = landingpad { ptr, i32 }
          cleanup
  br label %2157

2155:                                             ; preds = %2126
  %2156 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %164) #6
  br label %2157

2157:                                             ; preds = %2155, %2153
  %.pn1199 = phi { ptr, i32 } [ %2156, %2155 ], [ %2154, %2153 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %164) #6
  br label %.loopexit.split-lp

2158:                                             ; preds = %2130
  %2159 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %165) #6
  br label %.loopexit.split-lp

2160:                                             ; preds = %2134
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2161 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2161:                                             ; preds = %2160
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %166) #6
  store i8 0, ptr %166, align 1, !tbaa !5
  %2162 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %166)
          to label %2163 unwind label %2186

2163:                                             ; preds = %2161
  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 %2164 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2164:                                             ; preds = %2163
  %2165 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef -2)
          to label %2166 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2166:                                             ; preds = %2164
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %167) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %167, i32 noundef -8192)
          to label %2167 unwind label %2188

2167:                                             ; preds = %2166
  %2168 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %167)
          to label %2169 unwind label %2190

2169:                                             ; preds = %2167
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %167) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %167) #6
  %2170 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2171 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2171:                                             ; preds = %2169
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %168) #6
  store i8 1, ptr %168, align 1, !tbaa !5
  %2172 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %168)
          to label %2173 unwind label %2193

2173:                                             ; preds = %2171
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %169) #6
  store i8 1, ptr %169, align 1, !tbaa !5
  %2174 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %169)
          to label %2175 unwind label %2195

2175:                                             ; preds = %2173
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %169) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1307 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1307:                                   ; preds = %2175, %2199
  %2176 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %2177 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2177:                                             ; preds = %.preheader1307
  %2178 = 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) %2176)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %170) #6
  store i8 0, ptr %170, align 1, !tbaa !5
  %2179 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %170)
          to label %2180 unwind label %2197

2180:                                             ; preds = %2177
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %170) #6
  %2181 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %2182 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2182:                                             ; preds = %2180
  %2183 = load i8, ptr %2181, align 1, !tbaa !5, !range !9, !noundef !10
  %2184 = trunc nuw i8 %2183 to i1
  br i1 %2184, label %2185, label %2199

2185:                                             ; preds = %2182
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2200 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2186:                                             ; preds = %2161
  %2187 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %166) #6
  br label %.loopexit.split-lp

2188:                                             ; preds = %2166
  %2189 = landingpad { ptr, i32 }
          cleanup
  br label %2192

2190:                                             ; preds = %2167
  %2191 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %167) #6
  br label %2192

2192:                                             ; preds = %2190, %2188
  %.pn1201 = phi { ptr, i32 } [ %2191, %2190 ], [ %2189, %2188 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %167) #6
  br label %.loopexit.split-lp

2193:                                             ; preds = %2171
  %2194 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %168) #6
  br label %.loopexit.split-lp

2195:                                             ; preds = %2173
  %2196 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %169) #6
  br label %.loopexit.split-lp

2197:                                             ; preds = %2177
  %2198 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %170) #6
  br label %.loopexit.split-lp

2199:                                             ; preds = %2182
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1307 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2200:                                             ; preds = %2185
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %171) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %172) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %172, i32 noundef 0)
          to label %2201 unwind label %2244

2201:                                             ; preds = %2200
  %2202 = 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 %2203 unwind label %2246

2203:                                             ; preds = %2201
  %2204 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %172, ptr noundef nonnull align 8 dereferenceable(8) %2202)
          to label %2205 unwind label %2246

2205:                                             ; preds = %2203
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %173) #6
  %2206 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1760)
          to label %2207 unwind label %2248

2207:                                             ; preds = %2205
  invoke void @_ZN5sc_dt6sc_intILi4EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %173, ptr noundef nonnull align 8 dereferenceable(24) %2206)
          to label %2208 unwind label %2248

2208:                                             ; preds = %2207
  %2209 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2204, ptr noundef nonnull align 8 dereferenceable(8) %173)
          to label %2210 unwind label %2250

2210:                                             ; preds = %2208
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %174) #6
  %2211 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1759)
          to label %2212 unwind label %2252

2212:                                             ; preds = %2210
  %2213 = load i8, ptr %2211, align 1, !tbaa !5, !range !9, !noundef !10
  %2214 = zext nneg i8 %2213 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %174, i32 noundef %2214)
          to label %2215 unwind label %2252

2215:                                             ; preds = %2212
  %2216 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2209, ptr noundef nonnull align 8 dereferenceable(8) %174)
          to label %2217 unwind label %2254

2217:                                             ; preds = %2215
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %171, ptr noundef nonnull align 1 dereferenceable(1) %2216)
          to label %2218 unwind label %2254

2218:                                             ; preds = %2217
  %2219 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %171)
          to label %2220 unwind label %2256

2220:                                             ; preds = %2218
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %171) #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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %172) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %172) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %171) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %175) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %176, i32 noundef 11)
          to label %2221 unwind label %2264

2221:                                             ; preds = %2220
  %2222 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %176, ptr noundef nonnull align 8 dereferenceable(8) %25)
          to label %2223 unwind label %2266

2223:                                             ; preds = %2221
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %177) #6
  %2224 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1762)
          to label %2225 unwind label %2268

2225:                                             ; preds = %2223
  %2226 = load i8, ptr %2224, align 1, !tbaa !5, !range !9, !noundef !10
  %2227 = zext nneg i8 %2226 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %177, i32 noundef %2227)
          to label %2228 unwind label %2268

2228:                                             ; preds = %2225
  %2229 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2222, ptr noundef nonnull align 8 dereferenceable(8) %177)
          to label %2230 unwind label %2270

2230:                                             ; preds = %2228
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %175, ptr noundef nonnull align 1 dereferenceable(1) %2229)
          to label %2231 unwind label %2270

2231:                                             ; preds = %2230
  %2232 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %175)
          to label %2233 unwind label %2272

2233:                                             ; preds = %2231
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %175) #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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %176) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %176) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %175) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %178) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %178, i32 noundef -4)
          to label %2234 unwind label %2278

2234:                                             ; preds = %2233
  %2235 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %178)
          to label %2236 unwind label %2280

2236:                                             ; preds = %2234
  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 @llvm.lifetime.start.p0(i64 1, ptr nonnull %179) #6
  store i8 1, ptr %179, align 1, !tbaa !5
  %2237 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %179)
          to label %2238 unwind label %2283

2238:                                             ; preds = %2236
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %179) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1303 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1303:                                   ; preds = %2238, %2243
  %2239 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %2240 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2240:                                             ; preds = %.preheader1303
  %2241 = load i8, ptr %2239, align 1, !tbaa !5, !range !9, !noundef !10
  %2242 = trunc nuw i8 %2241 to i1
  br i1 %2242, label %2285, label %2243

2243:                                             ; preds = %2240
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1303 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2244:                                             ; preds = %2200
  %2245 = landingpad { ptr, i32 }
          cleanup
  br label %2263

2246:                                             ; preds = %2203, %2201
  %2247 = landingpad { ptr, i32 }
          cleanup
  br label %2262

2248:                                             ; preds = %2207, %2205
  %2249 = landingpad { ptr, i32 }
          cleanup
  br label %2261

2250:                                             ; preds = %2208
  %2251 = landingpad { ptr, i32 }
          cleanup
  br label %2260

2252:                                             ; preds = %2212, %2210
  %2253 = landingpad { ptr, i32 }
          cleanup
  br label %2259

2254:                                             ; preds = %2217, %2215
  %2255 = landingpad { ptr, i32 }
          cleanup
  br label %2258

2256:                                             ; preds = %2218
  %2257 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %171) #6
  br label %2258

2258:                                             ; preds = %2256, %2254
  %.pn1203 = phi { ptr, i32 } [ %2257, %2256 ], [ %2255, %2254 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %174) #6
  br label %2259

2259:                                             ; preds = %2258, %2252
  %.pn1203.pn = phi { ptr, i32 } [ %.pn1203, %2258 ], [ %2253, %2252 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %174) #6
  br label %2260

2260:                                             ; preds = %2259, %2250
  %.pn1203.pn.pn = phi { ptr, i32 } [ %.pn1203.pn, %2259 ], [ %2251, %2250 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %173) #6
  br label %2261

2261:                                             ; preds = %2260, %2248
  %.pn1203.pn.pn.pn = phi { ptr, i32 } [ %.pn1203.pn.pn, %2260 ], [ %2249, %2248 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %173) #6
  br label %2262

2262:                                             ; preds = %2261, %2246
  %.pn1203.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1203.pn.pn.pn, %2261 ], [ %2247, %2246 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %172) #6
  br label %2263

2263:                                             ; preds = %2262, %2244
  %.pn1203.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1203.pn.pn.pn.pn, %2262 ], [ %2245, %2244 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %172) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %171) #6
  br label %.loopexit.split-lp

2264:                                             ; preds = %2220
  %2265 = landingpad { ptr, i32 }
          cleanup
  br label %2277

2266:                                             ; preds = %2221
  %2267 = landingpad { ptr, i32 }
          cleanup
  br label %2276

2268:                                             ; preds = %2225, %2223
  %2269 = landingpad { ptr, i32 }
          cleanup
  br label %2275

2270:                                             ; preds = %2230, %2228
  %2271 = landingpad { ptr, i32 }
          cleanup
  br label %2274

2272:                                             ; preds = %2231
  %2273 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %175) #6
  br label %2274

2274:                                             ; preds = %2272, %2270
  %.pn1210 = phi { ptr, i32 } [ %2273, %2272 ], [ %2271, %2270 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %177) #6
  br label %2275

2275:                                             ; preds = %2274, %2268
  %.pn1210.pn = phi { ptr, i32 } [ %.pn1210, %2274 ], [ %2269, %2268 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %177) #6
  br label %2276

2276:                                             ; preds = %2275, %2266
  %.pn1210.pn.pn = phi { ptr, i32 } [ %.pn1210.pn, %2275 ], [ %2267, %2266 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %176) #6
  br label %2277

2277:                                             ; preds = %2276, %2264
  %.pn1210.pn.pn.pn = phi { ptr, i32 } [ %.pn1210.pn.pn, %2276 ], [ %2265, %2264 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %176) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %175) #6
  br label %.loopexit.split-lp

2278:                                             ; preds = %2233
  %2279 = landingpad { ptr, i32 }
          cleanup
  br label %2282

2280:                                             ; preds = %2234
  %2281 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %178) #6
  br label %2282

2282:                                             ; preds = %2280, %2278
  %.pn1215 = phi { ptr, i32 } [ %2281, %2280 ], [ %2279, %2278 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %178) #6
  br label %.loopexit.split-lp

2283:                                             ; preds = %2236
  %2284 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %179) #6
  br label %.loopexit.split-lp

2285:                                             ; preds = %2240
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2286 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2286:                                             ; preds = %2285
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %180) #6
  store i8 0, ptr %180, align 1, !tbaa !5
  %2287 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %180)
          to label %2288 unwind label %2312

2288:                                             ; preds = %2286
  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 %2289 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2289:                                             ; preds = %2288
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %181) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %181, i32 noundef 288)
          to label %2290 unwind label %2314

2290:                                             ; preds = %2289
  %2291 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %181)
          to label %2292 unwind label %2316

2292:                                             ; preds = %2290
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %181) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %181) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %182) #6
  %2293 = 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 %2294 unwind label %2319

2294:                                             ; preds = %2292
  %2295 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8) %2293, i1 noundef zeroext false)
          to label %2296 unwind label %2319

2296:                                             ; preds = %2294
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %182, ptr noundef nonnull align 1 dereferenceable(1) %2295)
          to label %2297 unwind label %2319

2297:                                             ; preds = %2296
  %2298 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %182)
          to label %2299 unwind label %2321

2299:                                             ; preds = %2297
  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
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %183, i32 noundef 1)
          to label %2300 unwind label %2324

2300:                                             ; preds = %2299
  %2301 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %183)
          to label %2302 unwind label %2326

2302:                                             ; preds = %2300
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %183) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %183) #6
  %2303 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2304 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2304:                                             ; preds = %2302
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %184) #6
  store i8 1, ptr %184, align 1, !tbaa !5
  %2305 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %184)
          to label %2306 unwind label %2329

2306:                                             ; preds = %2304
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %184) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1300 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1300:                                   ; preds = %2306, %2311
  %2307 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %2308 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2308:                                             ; preds = %.preheader1300
  %2309 = load i8, ptr %2307, align 1, !tbaa !5, !range !9, !noundef !10
  %2310 = trunc nuw i8 %2309 to i1
  br i1 %2310, label %2331, label %2311

2311:                                             ; preds = %2308
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1300 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.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

2312:                                             ; preds = %2286
  %2313 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %180) #6
  br label %.loopexit.split-lp

2314:                                             ; preds = %2289
  %2315 = landingpad { ptr, i32 }
          cleanup
  br label %2318

2316:                                             ; preds = %2290
  %2317 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %181) #6
  br label %2318

2318:                                             ; preds = %2316, %2314
  %.pn1217 = phi { ptr, i32 } [ %2317, %2316 ], [ %2315, %2314 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %181) #6
  br label %.loopexit.split-lp

2319:                                             ; preds = %2296, %2294, %2292
  %2320 = landingpad { ptr, i32 }
          cleanup
  br label %2323

2321:                                             ; preds = %2297
  %2322 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %182) #6
  br label %2323

2323:                                             ; preds = %2321, %2319
  %.pn1219 = phi { ptr, i32 } [ %2322, %2321 ], [ %2320, %2319 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %182) #6
  br label %.loopexit.split-lp

2324:                                             ; preds = %2299
  %2325 = landingpad { ptr, i32 }
          cleanup
  br label %2328

2326:                                             ; preds = %2300
  %2327 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %183) #6
  br label %2328

2328:                                             ; preds = %2326, %2324
  %.pn1221 = phi { ptr, i32 } [ %2327, %2326 ], [ %2325, %2324 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %183) #6
  br label %.loopexit.split-lp

2329:                                             ; preds = %2304
  %2330 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %184) #6
  br label %.loopexit.split-lp

2331:                                             ; preds = %2308
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2332 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2332:                                             ; preds = %2331
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %185) #6
  store i8 0, ptr %185, align 1, !tbaa !5
  %2333 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %185)
          to label %2334 unwind label %2335

2334:                                             ; preds = %2332
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %185) #6
  br label %.invoke2295

2335:                                             ; preds = %2332
  %2336 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %185) #6
  br label %.loopexit.split-lp

2337:                                             ; preds = %2017
  %2338 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1172 = icmp eq i64 %2338, 3
  br i1 %.not1172, label %2339, label %.invoke2315

2339:                                             ; preds = %2337
  %2340 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %.not1173 = icmp eq i64 %2340, 1
  br i1 %.not1173, label %2341, label %.invoke2315

2341:                                             ; preds = %2339
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2342 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2342:                                             ; preds = %2341
  %2343 = 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 %186) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %186, i32 noundef 10)
          to label %2344 unwind label %2367

2344:                                             ; preds = %2342
  %2345 = 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) %186)
          to label %2346 unwind label %2369

2346:                                             ; preds = %2344
  %2347 = 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) %2345)
          to label %2348 unwind label %2369

2348:                                             ; preds = %2346
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %186) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %186) #6
  %2349 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2350 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2350:                                             ; preds = %2348
  %2351 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2352 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2352:                                             ; preds = %2350
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %187) #6
  store i8 1, ptr %187, align 1, !tbaa !5
  %2353 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %187)
          to label %2354 unwind label %2372

2354:                                             ; preds = %2352
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %187) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %188) #6
  store i8 1, ptr %188, align 1, !tbaa !5
  %2355 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %188)
          to label %2356 unwind label %2374

2356:                                             ; preds = %2354
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %188) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1328 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1328:                                   ; preds = %2356, %2378
  %2357 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          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

2358:                                             ; preds = %.preheader1328
  %2359 = 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) %2357)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %189) #6
  store i8 0, ptr %189, align 1, !tbaa !5
  %2360 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %189)
          to label %2361 unwind label %2376

2361:                                             ; preds = %2358
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %189) #6
  %2362 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %2363 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2363:                                             ; preds = %2361
  %2364 = load i8, ptr %2362, align 1, !tbaa !5, !range !9, !noundef !10
  %2365 = trunc nuw i8 %2364 to i1
  br i1 %2365, label %2366, label %2378

2366:                                             ; preds = %2363
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2367:                                             ; preds = %2342
  %2368 = landingpad { ptr, i32 }
          cleanup
  br label %2371

2369:                                             ; preds = %2346, %2344
  %2370 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %186) #6
  br label %2371

2371:                                             ; preds = %2369, %2367
  %.pn1174 = phi { ptr, i32 } [ %2370, %2369 ], [ %2368, %2367 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %186) #6
  br label %.loopexit.split-lp

2372:                                             ; preds = %2352
  %2373 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %187) #6
  br label %.loopexit.split-lp

2374:                                             ; preds = %2354
  %2375 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %188) #6
  br label %.loopexit.split-lp

2376:                                             ; preds = %2358
  %2377 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %189) #6
  br label %.loopexit.split-lp

2378:                                             ; preds = %2363
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1328 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2379:                                             ; preds = %2366
  %2380 = 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 %2381 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2381:                                             ; preds = %2379
  %2382 = 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) %2380)
  %2383 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %24)
  %2384 = add nsw i64 %2383, 1
  %2385 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef %2384)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %190) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %190, i32 noundef 11)
          to label %2386 unwind label %2409

2386:                                             ; preds = %2381
  %2387 = 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) %190)
          to label %2388 unwind label %2411

2388:                                             ; preds = %2386
  %2389 = 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) %2387)
          to label %2390 unwind label %2411

2390:                                             ; preds = %2388
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %190) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %190) #6
  %2391 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2392 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2392:                                             ; preds = %2390
  %2393 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2394 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2394:                                             ; preds = %2392
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %191) #6
  store i8 1, ptr %191, align 1, !tbaa !5
  %2395 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %191)
          to label %2396 unwind label %2414

2396:                                             ; preds = %2394
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %191) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %192) #6
  store i8 1, ptr %192, align 1, !tbaa !5
  %2397 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %192)
          to label %2398 unwind label %2416

2398:                                             ; preds = %2396
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %192) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1324 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1324:                                   ; preds = %2398, %2420
  %2399 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %2400 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2400:                                             ; preds = %.preheader1324
  %2401 = 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) %2399)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %193) #6
  store i8 0, ptr %193, align 1, !tbaa !5
  %2402 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %193)
          to label %2403 unwind label %2418

2403:                                             ; preds = %2400
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %193) #6
  %2404 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %2405 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2405:                                             ; preds = %2403
  %2406 = load i8, ptr %2404, align 1, !tbaa !5, !range !9, !noundef !10
  %2407 = trunc nuw i8 %2406 to i1
  br i1 %2407, label %2408, label %2420

2408:                                             ; preds = %2405
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2409:                                             ; preds = %2381
  %2410 = landingpad { ptr, i32 }
          cleanup
  br label %2413

2411:                                             ; preds = %2388, %2386
  %2412 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %190) #6
  br label %2413

2413:                                             ; preds = %2411, %2409
  %.pn1176 = phi { ptr, i32 } [ %2412, %2411 ], [ %2410, %2409 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %190) #6
  br label %.loopexit.split-lp

2414:                                             ; preds = %2394
  %2415 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %191) #6
  br label %.loopexit.split-lp

2416:                                             ; preds = %2396
  %2417 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %192) #6
  br label %.loopexit.split-lp

2418:                                             ; preds = %2400
  %2419 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %193) #6
  br label %.loopexit.split-lp

2420:                                             ; preds = %2405
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1324 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2421:                                             ; preds = %2408
  %2422 = 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)
  %2423 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 9)
          to label %2424 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2424:                                             ; preds = %2421
  %2425 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2426 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2426:                                             ; preds = %2424
  %2427 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %2428 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2428:                                             ; preds = %2426
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %194) #6
  store i8 0, ptr %194, align 1, !tbaa !5
  %2429 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %194)
          to label %2430 unwind label %2440

2430:                                             ; preds = %2428
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %194) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %195) #6
  store i8 1, ptr %195, align 1, !tbaa !5
  %2431 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %195)
          to label %2432 unwind label %2442

2432:                                             ; preds = %2430
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %195) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1321 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1321:                                   ; preds = %2432, %2446
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %196) #6
  store i8 0, ptr %196, align 1, !tbaa !5
  %2433 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %196)
          to label %2434 unwind label %2444

2434:                                             ; preds = %.preheader1321
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %196) #6
  %2435 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %2436 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2436:                                             ; preds = %2434
  %2437 = load i8, ptr %2435, align 1, !tbaa !5, !range !9, !noundef !10
  %2438 = trunc nuw i8 %2437 to i1
  br i1 %2438, label %2439, label %2446

2439:                                             ; preds = %2436
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2447 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2440:                                             ; preds = %2428
  %2441 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %194) #6
  br label %.loopexit.split-lp

2442:                                             ; preds = %2430
  %2443 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %195) #6
  br label %.loopexit.split-lp

2444:                                             ; preds = %.preheader1321
  %2445 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %196) #6
  br label %.loopexit.split-lp

2446:                                             ; preds = %2436
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1321 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2447:                                             ; preds = %2439
  %2448 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %2)
  %2449 = add nsw i64 %2448, 32
  %2450 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %2, i64 noundef %2449)
  %2451 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 17)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2452:                                             ; preds = %2447
  %2453 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2454 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2454:                                             ; preds = %2452
  %2455 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %2456 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2456:                                             ; preds = %2454
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %197) #6
  store i8 0, ptr %197, align 1, !tbaa !5
  %2457 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %197)
          to label %2458 unwind label %2467

2458:                                             ; preds = %2456
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %197) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %198) #6
  store i8 1, ptr %198, align 1, !tbaa !5
  %2459 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %198)
          to label %2460 unwind label %2469

2460:                                             ; preds = %2458
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %198) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1317 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1317:                                   ; preds = %2460, %2473
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %199) #6
  store i8 0, ptr %199, align 1, !tbaa !5
  %2461 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %199)
          to label %2462 unwind label %2471

2462:                                             ; preds = %.preheader1317
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %199) #6
  %2463 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %2464 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2464:                                             ; preds = %2462
  %2465 = load i8, ptr %2463, align 1, !tbaa !5, !range !9, !noundef !10
  %2466 = trunc nuw i8 %2465 to i1
  br i1 %2466, label %.invoke2294, label %2473

2467:                                             ; preds = %2456
  %2468 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %197) #6
  br label %.loopexit.split-lp

2469:                                             ; preds = %2458
  %2470 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %198) #6
  br label %.loopexit.split-lp

2471:                                             ; preds = %.preheader1317
  %2472 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %199) #6
  br label %.loopexit.split-lp

2473:                                             ; preds = %2464
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1317 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2474:                                             ; preds = %2017, %2017, %2017
  %2475 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1170 = icmp eq i64 %2475, 3
  br i1 %.not1170, label %2476, label %.invoke2315

2476:                                             ; preds = %2474
  %2477 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %.not1171 = icmp eq i64 %2477, 0
  br i1 %.not1171, label %2478, label %.invoke2315

2478:                                             ; preds = %2476
  %2479 = 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 %.invoke2294

2480:                                             ; preds = %2017
  %2481 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1169 = icmp eq i64 %2481, 3
  br i1 %.not1169, label %2482, label %.invoke2315

2482:                                             ; preds = %2480
  %2483 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %2484 = icmp eq i64 %2483, 0
  br i1 %2484, label %.invoke2315, label %2485

2485:                                             ; preds = %2482
  %2486 = 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 %.invoke2294

2487:                                             ; preds = %2017
  %2488 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1141 = icmp eq i64 %2488, 3
  br i1 %.not1141, label %2489, label %.invoke2315

2489:                                             ; preds = %2487
  %2490 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %2491 = icmp eq i64 %2490, 0
  br i1 %2491, label %.invoke2315, label %2492

2492:                                             ; preds = %2489
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2493 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2493:                                             ; preds = %2492
  %2494 = 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)
  %2495 = 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 %2496 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2496:                                             ; preds = %2493
  %2497 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2495)
          to label %2498 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2498:                                             ; preds = %2496
  %2499 = icmp eq i64 %2497, 1
  br i1 %2499, label %2500, label %2502

2500:                                             ; preds = %2498
  %2501 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 10)
          to label %.invoke2308 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2502:                                             ; preds = %2498
  %2503 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 11)
          to label %.invoke2308 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.invoke2308:                                      ; preds = %2502, %2500
  %2504 = phi i32 [ 272, %2500 ], [ 288, %2502 ]
  %2505 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef %2504)
          to label %2506 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2506:                                             ; preds = %.invoke2308
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %201) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %201, i32 noundef 0)
          to label %2507 unwind label %2535

2507:                                             ; preds = %2506
  %2508 = 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) %201)
          to label %2509 unwind label %2537

2509:                                             ; preds = %2507
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %200, ptr noundef nonnull align 1 dereferenceable(1) %2508)
          to label %2510 unwind label %2537

2510:                                             ; preds = %2509
  %2511 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %200)
          to label %2512 unwind label %2539

2512:                                             ; preds = %2510
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %200) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %201) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %201) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %202) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %202, i32 noundef 0)
          to label %2513 unwind label %2543

2513:                                             ; preds = %2512
  %2514 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %202)
          to label %2515 unwind label %2545

2515:                                             ; preds = %2513
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %202) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %202) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %203) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %204, i32 noundef 0)
          to label %2516 unwind label %2548

2516:                                             ; preds = %2515
  %2517 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %204, ptr noundef nonnull align 8 dereferenceable(8) %11)
          to label %2518 unwind label %2550

2518:                                             ; preds = %2516
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %205) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %205, i32 noundef 0)
          to label %2519 unwind label %2552

2519:                                             ; preds = %2518
  %2520 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2517, ptr noundef nonnull align 8 dereferenceable(8) %205)
          to label %2521 unwind label %2554

2521:                                             ; preds = %2519
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %203, ptr noundef nonnull align 1 dereferenceable(1) %2520)
          to label %2522 unwind label %2554

2522:                                             ; preds = %2521
  %2523 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %203)
          to label %2524 unwind label %2556

2524:                                             ; preds = %2522
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %203) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %205) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %205) #6
  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.end.p0(i64 24, ptr nonnull %203) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %206) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %206, i32 noundef -3)
          to label %2525 unwind label %2562

2525:                                             ; preds = %2524
  %2526 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %206)
          to label %2527 unwind label %2564

2527:                                             ; preds = %2525
  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.start.p0(i64 1, ptr nonnull %207) #6
  store i8 1, ptr %207, align 1, !tbaa !5
  %2528 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %207)
          to label %2529 unwind label %2567

2529:                                             ; preds = %2527
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %207) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1345 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1345:                                   ; preds = %2529, %2534
  %2530 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %2531 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2531:                                             ; preds = %.preheader1345
  %2532 = load i8, ptr %2530, align 1, !tbaa !5, !range !9, !noundef !10
  %2533 = trunc nuw i8 %2532 to i1
  br i1 %2533, label %2569, label %2534

2534:                                             ; preds = %2531
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1345 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2535:                                             ; preds = %2506
  %2536 = landingpad { ptr, i32 }
          cleanup
  br label %2542

2537:                                             ; preds = %2509, %2507
  %2538 = landingpad { ptr, i32 }
          cleanup
  br label %2541

2539:                                             ; preds = %2510
  %2540 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %200) #6
  br label %2541

2541:                                             ; preds = %2539, %2537
  %.pn1142 = phi { ptr, i32 } [ %2540, %2539 ], [ %2538, %2537 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %201) #6
  br label %2542

2542:                                             ; preds = %2541, %2535
  %.pn1142.pn = phi { ptr, i32 } [ %.pn1142, %2541 ], [ %2536, %2535 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %201) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %200) #6
  br label %.loopexit.split-lp

2543:                                             ; preds = %2512
  %2544 = landingpad { ptr, i32 }
          cleanup
  br label %2547

2545:                                             ; preds = %2513
  %2546 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %202) #6
  br label %2547

2547:                                             ; preds = %2545, %2543
  %.pn1145 = phi { ptr, i32 } [ %2546, %2545 ], [ %2544, %2543 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %202) #6
  br label %.loopexit.split-lp

2548:                                             ; preds = %2515
  %2549 = landingpad { ptr, i32 }
          cleanup
  br label %2561

2550:                                             ; preds = %2516
  %2551 = landingpad { ptr, i32 }
          cleanup
  br label %2560

2552:                                             ; preds = %2518
  %2553 = landingpad { ptr, i32 }
          cleanup
  br label %2559

2554:                                             ; preds = %2521, %2519
  %2555 = landingpad { ptr, i32 }
          cleanup
  br label %2558

2556:                                             ; preds = %2522
  %2557 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %203) #6
  br label %2558

2558:                                             ; preds = %2556, %2554
  %.pn1147 = phi { ptr, i32 } [ %2557, %2556 ], [ %2555, %2554 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %205) #6
  br label %2559

2559:                                             ; preds = %2558, %2552
  %.pn1147.pn = phi { ptr, i32 } [ %.pn1147, %2558 ], [ %2553, %2552 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %205) #6
  br label %2560

2560:                                             ; preds = %2559, %2550
  %.pn1147.pn.pn = phi { ptr, i32 } [ %.pn1147.pn, %2559 ], [ %2551, %2550 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %204) #6
  br label %2561

2561:                                             ; preds = %2560, %2548
  %.pn1147.pn.pn.pn = phi { ptr, i32 } [ %.pn1147.pn.pn, %2560 ], [ %2549, %2548 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %204) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %203) #6
  br label %.loopexit.split-lp

2562:                                             ; preds = %2524
  %2563 = landingpad { ptr, i32 }
          cleanup
  br label %2566

2564:                                             ; preds = %2525
  %2565 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %206) #6
  br label %2566

2566:                                             ; preds = %2564, %2562
  %.pn1152 = phi { ptr, i32 } [ %2565, %2564 ], [ %2563, %2562 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %206) #6
  br label %.loopexit.split-lp

2567:                                             ; preds = %2527
  %2568 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %207) #6
  br label %.loopexit.split-lp

2569:                                             ; preds = %2531
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2570 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2570:                                             ; preds = %2569
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %208) #6
  store i8 0, ptr %208, align 1, !tbaa !5
  %2571 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %208)
          to label %2572 unwind label %2592

2572:                                             ; preds = %2570
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %208) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2573 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2573:                                             ; preds = %2572
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %209) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %209, i32 noundef 451)
          to label %2574 unwind label %2594

2574:                                             ; preds = %2573
  %2575 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %209)
          to label %2576 unwind label %2596

2576:                                             ; preds = %2574
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %209) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %209) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %210) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %210, i32 noundef 0)
          to label %2577 unwind label %2599

2577:                                             ; preds = %2576
  %2578 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %210)
          to label %2579 unwind label %2601

2579:                                             ; preds = %2577
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %210) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %210) #6
  %2580 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %2581 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2581:                                             ; preds = %2579
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %211) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %211, i32 noundef -2)
          to label %2582 unwind label %2604

2582:                                             ; preds = %2581
  %2583 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %211)
          to label %2584 unwind label %2606

2584:                                             ; preds = %2582
  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 1, ptr nonnull %212) #6
  store i8 1, ptr %212, align 1, !tbaa !5
  %2585 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %212)
          to label %2586 unwind label %2609

2586:                                             ; preds = %2584
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %212) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1342 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1342:                                   ; preds = %2586, %2591
  %2587 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %2588 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2588:                                             ; preds = %.preheader1342
  %2589 = load i8, ptr %2587, align 1, !tbaa !5, !range !9, !noundef !10
  %2590 = trunc nuw i8 %2589 to i1
  br i1 %2590, label %2611, label %2591

2591:                                             ; preds = %2588
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1342 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2592:                                             ; preds = %2570
  %2593 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %208) #6
  br label %.loopexit.split-lp

2594:                                             ; preds = %2573
  %2595 = landingpad { ptr, i32 }
          cleanup
  br label %2598

2596:                                             ; preds = %2574
  %2597 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %209) #6
  br label %2598

2598:                                             ; preds = %2596, %2594
  %.pn1154 = phi { ptr, i32 } [ %2597, %2596 ], [ %2595, %2594 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %209) #6
  br label %.loopexit.split-lp

2599:                                             ; preds = %2576
  %2600 = landingpad { ptr, i32 }
          cleanup
  br label %2603

2601:                                             ; preds = %2577
  %2602 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %210) #6
  br label %2603

2603:                                             ; preds = %2601, %2599
  %.pn1156 = phi { ptr, i32 } [ %2602, %2601 ], [ %2600, %2599 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %210) #6
  br label %.loopexit.split-lp

2604:                                             ; preds = %2581
  %2605 = landingpad { ptr, i32 }
          cleanup
  br label %2608

2606:                                             ; preds = %2582
  %2607 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %211) #6
  br label %2608

2608:                                             ; preds = %2606, %2604
  %.pn1158 = phi { ptr, i32 } [ %2607, %2606 ], [ %2605, %2604 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %211) #6
  br label %.loopexit.split-lp

2609:                                             ; preds = %2584
  %2610 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %212) #6
  br label %.loopexit.split-lp

2611:                                             ; preds = %2588
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2612 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2612:                                             ; preds = %2611
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %213) #6
  store i8 0, ptr %213, align 1, !tbaa !5
  %2613 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %213)
          to label %2614 unwind label %2638

2614:                                             ; preds = %2612
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %213) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2615 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2615:                                             ; preds = %2614
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %214) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %214, i32 noundef 11)
          to label %2616 unwind label %2640

2616:                                             ; preds = %2615
  %2617 = 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) %214)
          to label %2618 unwind label %2642

2618:                                             ; preds = %2616
  %2619 = 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) %2617)
          to label %2620 unwind label %2642

2620:                                             ; preds = %2618
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %214) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %214) #6
  %2621 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 1)
          to label %2622 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2622:                                             ; preds = %2620
  %2623 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2624 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2624:                                             ; preds = %2622
  %2625 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %2626 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2626:                                             ; preds = %2624
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %215) #6
  store i8 0, ptr %215, align 1, !tbaa !5
  %2627 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %215)
          to label %2628 unwind label %2645

2628:                                             ; preds = %2626
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %215) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %216) #6
  store i8 1, ptr %216, align 1, !tbaa !5
  %2629 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %216)
          to label %2630 unwind label %2647

2630:                                             ; preds = %2628
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %216) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1338 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1338:                                   ; preds = %2630, %2651
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %217) #6
  store i8 0, ptr %217, align 1, !tbaa !5
  %2631 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %217)
          to label %2632 unwind label %2649

2632:                                             ; preds = %.preheader1338
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %217) #6
  %2633 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %2634 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2634:                                             ; preds = %2632
  %2635 = load i8, ptr %2633, align 1, !tbaa !5, !range !9, !noundef !10
  %2636 = trunc nuw i8 %2635 to i1
  br i1 %2636, label %2637, label %2651

2637:                                             ; preds = %2634
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2652 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2638:                                             ; preds = %2612
  %2639 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %213) #6
  br label %.loopexit.split-lp

2640:                                             ; preds = %2615
  %2641 = landingpad { ptr, i32 }
          cleanup
  br label %2644

2642:                                             ; preds = %2618, %2616
  %2643 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %214) #6
  br label %2644

2644:                                             ; preds = %2642, %2640
  %.pn1160 = phi { ptr, i32 } [ %2643, %2642 ], [ %2641, %2640 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %214) #6
  br label %.loopexit.split-lp

2645:                                             ; preds = %2626
  %2646 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %215) #6
  br label %.loopexit.split-lp

2647:                                             ; preds = %2628
  %2648 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %216) #6
  br label %.loopexit.split-lp

2649:                                             ; preds = %.preheader1338
  %2650 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %217) #6
  br label %.loopexit.split-lp

2651:                                             ; preds = %2634
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1338 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2652:                                             ; preds = %2637
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %218) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %218, i32 noundef 12)
          to label %2653 unwind label %2675

2653:                                             ; preds = %2652
  %2654 = 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) %218)
          to label %2655 unwind label %2677

2655:                                             ; preds = %2653
  %2656 = 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) %2654)
          to label %2657 unwind label %2677

2657:                                             ; preds = %2655
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %218) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %218) #6
  %2658 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %2659 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2659:                                             ; preds = %2657
  %2660 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2661 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2661:                                             ; preds = %2659
  %2662 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %2663 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2663:                                             ; preds = %2661
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %219) #6
  store i8 0, ptr %219, align 1, !tbaa !5
  %2664 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %219)
          to label %2665 unwind label %2680

2665:                                             ; preds = %2663
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %219) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %220) #6
  store i8 1, ptr %220, align 1, !tbaa !5
  %2666 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %220)
          to label %2667 unwind label %2682

2667:                                             ; preds = %2665
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %220) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1335 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1335:                                   ; preds = %2667, %2686
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %221) #6
  store i8 0, ptr %221, align 1, !tbaa !5
  %2668 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %221)
          to label %2669 unwind label %2684

2669:                                             ; preds = %.preheader1335
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %221) #6
  %2670 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %2671 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2671:                                             ; preds = %2669
  %2672 = load i8, ptr %2670, align 1, !tbaa !5, !range !9, !noundef !10
  %2673 = trunc nuw i8 %2672 to i1
  br i1 %2673, label %2674, label %2686

2674:                                             ; preds = %2671
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2675:                                             ; preds = %2652
  %2676 = landingpad { ptr, i32 }
          cleanup
  br label %2679

2677:                                             ; preds = %2655, %2653
  %2678 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %218) #6
  br label %2679

2679:                                             ; preds = %2677, %2675
  %.pn1162 = phi { ptr, i32 } [ %2678, %2677 ], [ %2676, %2675 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %218) #6
  br label %.loopexit.split-lp

2680:                                             ; preds = %2663
  %2681 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %219) #6
  br label %.loopexit.split-lp

2682:                                             ; preds = %2665
  %2683 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %220) #6
  br label %.loopexit.split-lp

2684:                                             ; preds = %.preheader1335
  %2685 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %221) #6
  br label %.loopexit.split-lp

2686:                                             ; preds = %2671
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1335 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2687:                                             ; preds = %2674
  %2688 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %2689 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2689:                                             ; preds = %2687
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %222) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %223) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %223, i32 noundef 0)
          to label %2690 unwind label %2708

2690:                                             ; preds = %2689
  %2691 = 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) %223)
          to label %2692 unwind label %2710

2692:                                             ; preds = %2690
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %222, ptr noundef nonnull align 1 dereferenceable(1) %2691)
          to label %2693 unwind label %2710

2693:                                             ; preds = %2692
  %2694 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %222)
          to label %2695 unwind label %2712

2695:                                             ; preds = %2693
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %222) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %223) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %223) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %222) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %224, i32 noundef 1)
          to label %2696 unwind label %2716

2696:                                             ; preds = %2695
  %2697 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %224)
          to label %2698 unwind label %2718

2698:                                             ; preds = %2696
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %224) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %224) #6
  %2699 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2700 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2700:                                             ; preds = %2698
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %225) #6
  store i8 1, ptr %225, align 1, !tbaa !5
  %2701 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %225)
          to label %2702 unwind label %2721

2702:                                             ; preds = %2700
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %225) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1331 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1331:                                   ; preds = %2702, %2707
  %2703 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %2704 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2704:                                             ; preds = %.preheader1331
  %2705 = load i8, ptr %2703, align 1, !tbaa !5, !range !9, !noundef !10
  %2706 = trunc nuw i8 %2705 to i1
  br i1 %2706, label %2723, label %2707

2707:                                             ; preds = %2704
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1331 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2708:                                             ; preds = %2689
  %2709 = landingpad { ptr, i32 }
          cleanup
  br label %2715

2710:                                             ; preds = %2692, %2690
  %2711 = landingpad { ptr, i32 }
          cleanup
  br label %2714

2712:                                             ; preds = %2693
  %2713 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %222) #6
  br label %2714

2714:                                             ; preds = %2712, %2710
  %.pn1164 = phi { ptr, i32 } [ %2713, %2712 ], [ %2711, %2710 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %223) #6
  br label %2715

2715:                                             ; preds = %2714, %2708
  %.pn1164.pn = phi { ptr, i32 } [ %.pn1164, %2714 ], [ %2709, %2708 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %223) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %222) #6
  br label %.loopexit.split-lp

2716:                                             ; preds = %2695
  %2717 = landingpad { ptr, i32 }
          cleanup
  br label %2720

2718:                                             ; preds = %2696
  %2719 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %224) #6
  br label %2720

2720:                                             ; preds = %2718, %2716
  %.pn1167 = phi { ptr, i32 } [ %2719, %2718 ], [ %2717, %2716 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %224) #6
  br label %.loopexit.split-lp

2721:                                             ; preds = %2700
  %2722 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %225) #6
  br label %.loopexit.split-lp

2723:                                             ; preds = %2704
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2724 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2724:                                             ; preds = %2723
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %226) #6
  store i8 0, ptr %226, align 1, !tbaa !5
  %2725 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %226)
          to label %2726 unwind label %2727

2726:                                             ; preds = %2724
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %226) #6
  br label %.invoke2295

2727:                                             ; preds = %2724
  %2728 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %226) #6
  br label %.loopexit.split-lp

2729:                                             ; preds = %2017
  %2730 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1060 = icmp eq i64 %2730, 3
  br i1 %.not1060, label %2731, label %2734

2731:                                             ; preds = %2729
  %2732 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %2733 = icmp eq i64 %2732, 0
  br i1 %2733, label %2734, label %2737

2734:                                             ; preds = %2731, %2729
  %2735 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 1)
          to label %2736 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2736:                                             ; preds = %2734
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2737:                                             ; preds = %2731
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2738 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2738:                                             ; preds = %2737
  %2739 = 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 %227) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %227, i32 noundef 10)
          to label %2740 unwind label %2763

2740:                                             ; preds = %2738
  %2741 = 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) %227)
          to label %2742 unwind label %2765

2742:                                             ; preds = %2740
  %2743 = 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) %2741)
          to label %2744 unwind label %2765

2744:                                             ; preds = %2742
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %227) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %227) #6
  %2745 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2746 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2746:                                             ; preds = %2744
  %2747 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2748 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2748:                                             ; preds = %2746
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %228) #6
  store i8 1, ptr %228, align 1, !tbaa !5
  %2749 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %228)
          to label %2750 unwind label %2768

2750:                                             ; preds = %2748
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %229) #6
  store i8 1, ptr %229, align 1, !tbaa !5
  %2751 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %229)
          to label %2752 unwind label %2770

2752:                                             ; preds = %2750
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %229) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1433 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1433:                                   ; preds = %2752, %2774
  %2753 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          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

2754:                                             ; preds = %.preheader1433
  %2755 = 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) %2753)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %230) #6
  store i8 0, ptr %230, align 1, !tbaa !5
  %2756 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %230)
          to label %2757 unwind label %2772

2757:                                             ; preds = %2754
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %230) #6
  %2758 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %2759 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2759:                                             ; preds = %2757
  %2760 = load i8, ptr %2758, align 1, !tbaa !5, !range !9, !noundef !10
  %2761 = trunc nuw i8 %2760 to i1
  br i1 %2761, label %2762, label %2774

2762:                                             ; preds = %2759
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2763:                                             ; preds = %2738
  %2764 = landingpad { ptr, i32 }
          cleanup
  br label %2767

2765:                                             ; preds = %2742, %2740
  %2766 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %227) #6
  br label %2767

2767:                                             ; preds = %2765, %2763
  %.pn1061 = phi { ptr, i32 } [ %2766, %2765 ], [ %2764, %2763 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %227) #6
  br label %.loopexit.split-lp

2768:                                             ; preds = %2748
  %2769 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %228) #6
  br label %.loopexit.split-lp

2770:                                             ; preds = %2750
  %2771 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %229) #6
  br label %.loopexit.split-lp

2772:                                             ; preds = %2754
  %2773 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %230) #6
  br label %.loopexit.split-lp

2774:                                             ; preds = %2759
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1433 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2775:                                             ; preds = %2762
  %2776 = 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 %2777 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2777:                                             ; preds = %2775
  %2778 = 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) %2776)
  %2779 = 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 %2780 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2780:                                             ; preds = %2777
  %2781 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2779)
          to label %2782 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2782:                                             ; preds = %2780
  %2783 = icmp eq i64 %2781, 1
  br i1 %2783, label %2784, label %2812

2784:                                             ; preds = %2782
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %231) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %231, i32 noundef 2)
          to label %2785 unwind label %2802

2785:                                             ; preds = %2784
  %2786 = 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 %2787 unwind label %2804

2787:                                             ; preds = %2785
  %2788 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %231, ptr noundef nonnull align 8 dereferenceable(8) %2786)
          to label %2789 unwind label %2804

2789:                                             ; preds = %2787
  %2790 = 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) %2788)
          to label %2791 unwind label %2804

2791:                                             ; preds = %2789
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %231) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %231) #6
  %2792 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 10)
          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.sp1930

2793:                                             ; preds = %2791
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %232) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %232, i32 noundef 4)
          to label %2794 unwind label %2807

2794:                                             ; preds = %2793
  %2795 = 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 %2796 unwind label %2809

2796:                                             ; preds = %2794
  %2797 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %232, ptr noundef nonnull align 8 dereferenceable(8) %2795)
          to label %2798 unwind label %2809

2798:                                             ; preds = %2796
  %2799 = 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) %2797)
          to label %2800 unwind label %2809

2800:                                             ; preds = %2798
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %232) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %232) #6
  %2801 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef 9)
          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.sp1930

2802:                                             ; preds = %2784
  %2803 = landingpad { ptr, i32 }
          cleanup
  br label %2806

2804:                                             ; preds = %2789, %2787, %2785
  %2805 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %231) #6
  br label %2806

2806:                                             ; preds = %2804, %2802
  %.pn1067 = phi { ptr, i32 } [ %2805, %2804 ], [ %2803, %2802 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %231) #6
  br label %.loopexit.split-lp

2807:                                             ; preds = %2793
  %2808 = landingpad { ptr, i32 }
          cleanup
  br label %2811

2809:                                             ; preds = %2798, %2796, %2794
  %2810 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %232) #6
  br label %2811

2811:                                             ; preds = %2809, %2807
  %.pn1069 = phi { ptr, i32 } [ %2810, %2809 ], [ %2808, %2807 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %232) #6
  br label %.loopexit.split-lp

2812:                                             ; preds = %2782
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %233) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %233, i32 noundef 3)
          to label %2813 unwind label %2832

2813:                                             ; preds = %2812
  %2814 = 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 %2815 unwind label %2834

2815:                                             ; preds = %2813
  %2816 = 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) %2814)
          to label %2817 unwind label %2834

2817:                                             ; preds = %2815
  %2818 = 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) %2816)
          to label %2819 unwind label %2834

2819:                                             ; preds = %2817
  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
  %2820 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 11)
          to label %2821 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2821:                                             ; preds = %2819
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %234) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %234, i32 noundef 5)
          to label %2822 unwind label %2837

2822:                                             ; preds = %2821
  %2823 = 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 %2824 unwind label %2839

2824:                                             ; preds = %2822
  %2825 = 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) %2823)
          to label %2826 unwind label %2839

2826:                                             ; preds = %2824
  %2827 = 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) %2825)
          to label %2828 unwind label %2839

2828:                                             ; preds = %2826
  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
  %2829 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef 17)
          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.sp1930

.invoke2307:                                      ; preds = %2828, %2800
  %2830 = phi i32 [ 272, %2800 ], [ 288, %2828 ]
  %2831 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef %2830)
          to label %2842 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2832:                                             ; preds = %2812
  %2833 = landingpad { ptr, i32 }
          cleanup
  br label %2836

2834:                                             ; preds = %2817, %2815, %2813
  %2835 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %233) #6
  br label %2836

2836:                                             ; preds = %2834, %2832
  %.pn1063 = phi { ptr, i32 } [ %2835, %2834 ], [ %2833, %2832 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %233) #6
  br label %.loopexit.split-lp

2837:                                             ; preds = %2821
  %2838 = landingpad { ptr, i32 }
          cleanup
  br label %2841

2839:                                             ; preds = %2826, %2824, %2822
  %2840 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %234) #6
  br label %2841

2841:                                             ; preds = %2839, %2837
  %.pn1065 = phi { ptr, i32 } [ %2840, %2839 ], [ %2838, %2837 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %234) #6
  br label %.loopexit.split-lp

2842:                                             ; preds = %.invoke2307
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %235) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %235, i32 noundef 11)
          to label %2843 unwind label %2866

2843:                                             ; preds = %2842
  %2844 = 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) %235)
          to label %2845 unwind label %2868

2845:                                             ; preds = %2843
  %2846 = 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) %2844)
          to label %2847 unwind label %2868

2847:                                             ; preds = %2845
  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
  %2848 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2849 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2849:                                             ; preds = %2847
  %2850 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2851 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2851:                                             ; preds = %2849
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %236) #6
  store i8 1, ptr %236, align 1, !tbaa !5
  %2852 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %236)
          to label %2853 unwind label %2871

2853:                                             ; preds = %2851
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %237) #6
  store i8 1, ptr %237, align 1, !tbaa !5
  %2854 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %237)
          to label %2855 unwind label %2873

2855:                                             ; preds = %2853
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %237) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1429 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1429:                                   ; preds = %2855, %2877
  %2856 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %2857 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2857:                                             ; preds = %.preheader1429
  %2858 = 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) %2856)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %238) #6
  store i8 0, ptr %238, align 1, !tbaa !5
  %2859 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %238)
          to label %2860 unwind label %2875

2860:                                             ; preds = %2857
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %238) #6
  %2861 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %2862 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2862:                                             ; preds = %2860
  %2863 = load i8, ptr %2861, align 1, !tbaa !5, !range !9, !noundef !10
  %2864 = trunc nuw i8 %2863 to i1
  br i1 %2864, label %2865, label %2877

2865:                                             ; preds = %2862
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2866:                                             ; preds = %2842
  %2867 = landingpad { ptr, i32 }
          cleanup
  br label %2870

2868:                                             ; preds = %2845, %2843
  %2869 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %235) #6
  br label %2870

2870:                                             ; preds = %2868, %2866
  %.pn1071 = phi { ptr, i32 } [ %2869, %2868 ], [ %2867, %2866 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %235) #6
  br label %.loopexit.split-lp

2871:                                             ; preds = %2851
  %2872 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %236) #6
  br label %.loopexit.split-lp

2873:                                             ; preds = %2853
  %2874 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %237) #6
  br label %.loopexit.split-lp

2875:                                             ; preds = %2857
  %2876 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %238) #6
  br label %.loopexit.split-lp

2877:                                             ; preds = %2862
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1429 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2878:                                             ; preds = %2865, %2736
  %.0 = phi i1 [ true, %2736 ], [ false, %2865 ]
  %2879 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %3)
  %2880 = trunc i64 %2879 to i32
  %2881 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi32EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %29, i32 noundef %2880)
          to label %2882 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2882:                                             ; preds = %2878
  %2883 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %29)
  %2884 = trunc i64 %2883 to i32
  switch i32 %2884, label %3422 [
    i32 1, label %2885
    i32 2, label %2946
    i32 3, label %3007
    i32 4, label %3067
  ]

2885:                                             ; preds = %2882
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %239) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %239, i32 noundef 0)
          to label %2886 unwind label %2909

2886:                                             ; preds = %2885
  %2887 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %239, ptr noundef nonnull align 8 dereferenceable(8) %21)
          to label %2888 unwind label %2911

2888:                                             ; preds = %2886
  %2889 = 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) %2887)
          to label %2890 unwind label %2911

2890:                                             ; preds = %2888
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %239) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %239) #6
  %2891 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2892 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2892:                                             ; preds = %2890
  %2893 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          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.sp1930

2894:                                             ; preds = %2892
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %240) #6
  store i8 1, ptr %240, align 1, !tbaa !5
  %2895 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %240)
          to label %2896 unwind label %2914

2896:                                             ; preds = %2894
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %241) #6
  store i8 1, ptr %241, align 1, !tbaa !5
  %2897 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %241)
          to label %2898 unwind label %2916

2898:                                             ; preds = %2896
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %241) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1380 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1380:                                   ; preds = %2898, %2920
  %2899 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %2900 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2900:                                             ; preds = %.preheader1380
  %2901 = 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) %2899)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %242) #6
  store i8 0, ptr %242, align 1, !tbaa !5
  %2902 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %242)
          to label %2903 unwind label %2918

2903:                                             ; preds = %2900
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %242) #6
  %2904 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %2905 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2905:                                             ; preds = %2903
  %2906 = load i8, ptr %2904, align 1, !tbaa !5, !range !9, !noundef !10
  %2907 = trunc nuw i8 %2906 to i1
  br i1 %2907, label %2908, label %2920

2908:                                             ; preds = %2905
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2909:                                             ; preds = %2885
  %2910 = landingpad { ptr, i32 }
          cleanup
  br label %2913

2911:                                             ; preds = %2888, %2886
  %2912 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %239) #6
  br label %2913

2913:                                             ; preds = %2911, %2909
  %.pn1108 = phi { ptr, i32 } [ %2912, %2911 ], [ %2910, %2909 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %239) #6
  br label %.loopexit.split-lp

2914:                                             ; preds = %2894
  %2915 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %240) #6
  br label %.loopexit.split-lp

2916:                                             ; preds = %2896
  %2917 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %241) #6
  br label %.loopexit.split-lp

2918:                                             ; preds = %2900
  %2919 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %242) #6
  br label %.loopexit.split-lp

2920:                                             ; preds = %2905
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1380 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2921:                                             ; preds = %2908
  %2922 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %3)
  %2923 = or i64 %2922, 2
  %2924 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %2, i64 noundef %2923)
  %2925 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2926 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2926:                                             ; preds = %2921
  %2927 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %2928 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2928:                                             ; preds = %2926
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %243) #6
  store i8 0, ptr %243, align 1, !tbaa !5
  %2929 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %243)
          to label %2930 unwind label %2939

2930:                                             ; preds = %2928
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %243) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %244) #6
  store i8 1, ptr %244, align 1, !tbaa !5
  %2931 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %244)
          to label %2932 unwind label %2941

2932:                                             ; preds = %2930
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %244) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1377 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1377:                                   ; preds = %2932, %2945
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %245) #6
  store i8 0, ptr %245, align 1, !tbaa !5
  %2933 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %245)
          to label %2934 unwind label %2943

2934:                                             ; preds = %.preheader1377
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %245) #6
  %2935 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %2936 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2936:                                             ; preds = %2934
  %2937 = load i8, ptr %2935, align 1, !tbaa !5, !range !9, !noundef !10
  %2938 = trunc nuw i8 %2937 to i1
  br i1 %2938, label %.invoke2305, label %2945

2939:                                             ; preds = %2928
  %2940 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %243) #6
  br label %.loopexit.split-lp

2941:                                             ; preds = %2930
  %2942 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %244) #6
  br label %.loopexit.split-lp

2943:                                             ; preds = %.preheader1377
  %2944 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %245) #6
  br label %.loopexit.split-lp

2945:                                             ; preds = %2936
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1377 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2946:                                             ; preds = %2882
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %246) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %246, i32 noundef 0)
          to label %2947 unwind label %2970

2947:                                             ; preds = %2946
  %2948 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %246, ptr noundef nonnull align 8 dereferenceable(8) %21)
          to label %2949 unwind label %2972

2949:                                             ; preds = %2947
  %2950 = 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) %2948)
          to label %2951 unwind label %2972

2951:                                             ; preds = %2949
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %246) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %246) #6
  %2952 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2953 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2953:                                             ; preds = %2951
  %2954 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2955 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2955:                                             ; preds = %2953
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %247) #6
  store i8 1, ptr %247, align 1, !tbaa !5
  %2956 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %247)
          to label %2957 unwind label %2975

2957:                                             ; preds = %2955
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %247) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %248) #6
  store i8 1, ptr %248, align 1, !tbaa !5
  %2958 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %248)
          to label %2959 unwind label %2977

2959:                                             ; preds = %2957
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %248) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1387 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1387:                                   ; preds = %2959, %2981
  %2960 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %2961 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2961:                                             ; preds = %.preheader1387
  %2962 = 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) %2960)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %249) #6
  store i8 0, ptr %249, align 1, !tbaa !5
  %2963 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %249)
          to label %2964 unwind label %2979

2964:                                             ; preds = %2961
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %249) #6
  %2965 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %2966 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2966:                                             ; preds = %2964
  %2967 = load i8, ptr %2965, align 1, !tbaa !5, !range !9, !noundef !10
  %2968 = trunc nuw i8 %2967 to i1
  br i1 %2968, label %2969, label %2981

2969:                                             ; preds = %2966
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2970:                                             ; preds = %2946
  %2971 = landingpad { ptr, i32 }
          cleanup
  br label %2974

2972:                                             ; preds = %2949, %2947
  %2973 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %246) #6
  br label %2974

2974:                                             ; preds = %2972, %2970
  %.pn1106 = phi { ptr, i32 } [ %2973, %2972 ], [ %2971, %2970 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %246) #6
  br label %.loopexit.split-lp

2975:                                             ; preds = %2955
  %2976 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %247) #6
  br label %.loopexit.split-lp

2977:                                             ; preds = %2957
  %2978 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %248) #6
  br label %.loopexit.split-lp

2979:                                             ; preds = %2961
  %2980 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %249) #6
  br label %.loopexit.split-lp

2981:                                             ; preds = %2966
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1387 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

2982:                                             ; preds = %2969
  %2983 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %3)
  %2984 = and i64 %2983, -3
  %2985 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %2, i64 noundef %2984)
  %2986 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2987 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2987:                                             ; preds = %2982
  %2988 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %2989 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

2989:                                             ; preds = %2987
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %250) #6
  store i8 0, ptr %250, align 1, !tbaa !5
  %2990 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %250)
          to label %2991 unwind label %3000

2991:                                             ; preds = %2989
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %250) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %251) #6
  store i8 1, ptr %251, align 1, !tbaa !5
  %2992 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %251)
          to label %2993 unwind label %3002

2993:                                             ; preds = %2991
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %251) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1384 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1384:                                   ; preds = %2993, %3006
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %252) #6
  store i8 0, ptr %252, align 1, !tbaa !5
  %2994 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %252)
          to label %2995 unwind label %3004

2995:                                             ; preds = %.preheader1384
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %252) #6
  %2996 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %2997 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2997:                                             ; preds = %2995
  %2998 = load i8, ptr %2996, align 1, !tbaa !5, !range !9, !noundef !10
  %2999 = trunc nuw i8 %2998 to i1
  br i1 %2999, label %.invoke2305, label %3006

3000:                                             ; preds = %2989
  %3001 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %250) #6
  br label %.loopexit.split-lp

3002:                                             ; preds = %2991
  %3003 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %251) #6
  br label %.loopexit.split-lp

3004:                                             ; preds = %.preheader1384
  %3005 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %252) #6
  br label %.loopexit.split-lp

3006:                                             ; preds = %2997
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1384 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3007:                                             ; preds = %2882
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %253) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %253, i32 noundef 12)
          to label %3008 unwind label %3031

3008:                                             ; preds = %3007
  %3009 = 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) %253)
          to label %3010 unwind label %3033

3010:                                             ; preds = %3008
  %3011 = 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) %3009)
          to label %3012 unwind label %3033

3012:                                             ; preds = %3010
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %253) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %253) #6
  %3013 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3014 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3014:                                             ; preds = %3012
  %3015 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3016 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3016:                                             ; preds = %3014
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %254) #6
  store i8 1, ptr %254, align 1, !tbaa !5
  %3017 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %254)
          to label %3018 unwind label %3036

3018:                                             ; preds = %3016
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %254) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %255) #6
  store i8 1, ptr %255, align 1, !tbaa !5
  %3019 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %255)
          to label %3020 unwind label %3038

3020:                                             ; preds = %3018
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %255) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1394 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1394:                                   ; preds = %3020, %3042
  %3021 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %3022 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3022:                                             ; preds = %.preheader1394
  %3023 = 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) %3021)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %256) #6
  store i8 0, ptr %256, align 1, !tbaa !5
  %3024 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %256)
          to label %3025 unwind label %3040

3025:                                             ; preds = %3022
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %256) #6
  %3026 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %3027 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3027:                                             ; preds = %3025
  %3028 = load i8, ptr %3026, align 1, !tbaa !5, !range !9, !noundef !10
  %3029 = trunc nuw i8 %3028 to i1
  br i1 %3029, label %3030, label %3042

3030:                                             ; preds = %3027
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3031:                                             ; preds = %3007
  %3032 = landingpad { ptr, i32 }
          cleanup
  br label %3035

3033:                                             ; preds = %3010, %3008
  %3034 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %253) #6
  br label %3035

3035:                                             ; preds = %3033, %3031
  %.pn1104 = phi { ptr, i32 } [ %3034, %3033 ], [ %3032, %3031 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %253) #6
  br label %.loopexit.split-lp

3036:                                             ; preds = %3016
  %3037 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %254) #6
  br label %.loopexit.split-lp

3038:                                             ; preds = %3018
  %3039 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %255) #6
  br label %.loopexit.split-lp

3040:                                             ; preds = %3022
  %3041 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %256) #6
  br label %.loopexit.split-lp

3042:                                             ; preds = %3027
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1394 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3043:                                             ; preds = %3030
  %3044 = 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)
  %3045 = 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)
  %3046 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3047 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3047:                                             ; preds = %3043
  %3048 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3049 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3049:                                             ; preds = %3047
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %257) #6
  store i8 0, ptr %257, align 1, !tbaa !5
  %3050 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %257)
          to label %3051 unwind label %3060

3051:                                             ; preds = %3049
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %257) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %258) #6
  store i8 1, ptr %258, align 1, !tbaa !5
  %3052 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %258)
          to label %3053 unwind label %3062

3053:                                             ; preds = %3051
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %258) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1391 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1391:                                   ; preds = %3053, %3066
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %259) #6
  store i8 0, ptr %259, align 1, !tbaa !5
  %3054 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %259)
          to label %3055 unwind label %3064

3055:                                             ; preds = %.preheader1391
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %259) #6
  %3056 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %3057 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3057:                                             ; preds = %3055
  %3058 = load i8, ptr %3056, align 1, !tbaa !5, !range !9, !noundef !10
  %3059 = trunc nuw i8 %3058 to i1
  br i1 %3059, label %.invoke2305, label %3066

3060:                                             ; preds = %3049
  %3061 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %257) #6
  br label %.loopexit.split-lp

3062:                                             ; preds = %3051
  %3063 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %258) #6
  br label %.loopexit.split-lp

3064:                                             ; preds = %.preheader1391
  %3065 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %259) #6
  br label %.loopexit.split-lp

3066:                                             ; preds = %3057
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1391 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3067:                                             ; preds = %2882
  %3068 = 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)
  %3069 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3070 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3070:                                             ; preds = %3067
  %3071 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3072 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3072:                                             ; preds = %3070
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %260) #6
  store i8 1, ptr %260, align 1, !tbaa !5
  %3073 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %260)
          to label %3074 unwind label %3087

3074:                                             ; preds = %3072
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %261) #6
  store i8 1, ptr %261, align 1, !tbaa !5
  %3075 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %261)
          to label %3076 unwind label %3089

3076:                                             ; preds = %3074
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %261) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1426 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1426:                                   ; preds = %3076, %3093
  %3077 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %3078 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3078:                                             ; preds = %.preheader1426
  %3079 = 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) %3077)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %262) #6
  store i8 0, ptr %262, align 1, !tbaa !5
  %3080 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %262)
          to label %3081 unwind label %3091

3081:                                             ; preds = %3078
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %262) #6
  %3082 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %3083 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3083:                                             ; preds = %3081
  %3084 = load i8, ptr %3082, align 1, !tbaa !5, !range !9, !noundef !10
  %3085 = trunc nuw i8 %3084 to i1
  br i1 %3085, label %3086, label %3093

3086:                                             ; preds = %3083
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3087:                                             ; preds = %3072
  %3088 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %260) #6
  br label %.loopexit.split-lp

3089:                                             ; preds = %3074
  %3090 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %261) #6
  br label %.loopexit.split-lp

3091:                                             ; preds = %3078
  %3092 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %262) #6
  br label %.loopexit.split-lp

3093:                                             ; preds = %3083
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1426 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3094:                                             ; preds = %3086
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %263) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %264, i32 noundef 0)
          to label %3095 unwind label %3123

3095:                                             ; preds = %3094
  %3096 = 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) %264)
          to label %3097 unwind label %3125

3097:                                             ; preds = %3095
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %263, ptr noundef nonnull align 1 dereferenceable(1) %3096)
          to label %3098 unwind label %3125

3098:                                             ; preds = %3097
  %3099 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %263)
          to label %3100 unwind label %3127

3100:                                             ; preds = %3098
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %263) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %264) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %264) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %263) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %265) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %265, i32 noundef 0)
          to label %3101 unwind label %3131

3101:                                             ; preds = %3100
  %3102 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %265)
          to label %3103 unwind label %3133

3103:                                             ; preds = %3101
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %265) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %265) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %266) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %267) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %267, i32 noundef 0)
          to label %3104 unwind label %3136

3104:                                             ; preds = %3103
  %3105 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %267, ptr noundef nonnull align 8 dereferenceable(8) %11)
          to label %3106 unwind label %3138

3106:                                             ; preds = %3104
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %268) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %268, i32 noundef 0)
          to label %3107 unwind label %3140

3107:                                             ; preds = %3106
  %3108 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %3105, ptr noundef nonnull align 8 dereferenceable(8) %268)
          to label %3109 unwind label %3142

3109:                                             ; preds = %3107
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %266, ptr noundef nonnull align 1 dereferenceable(1) %3108)
          to label %3110 unwind label %3142

3110:                                             ; preds = %3109
  %3111 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %266)
          to label %3112 unwind label %3144

3112:                                             ; preds = %3110
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %266) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %268) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %268) #6
  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.end.p0(i64 24, ptr nonnull %266) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %269) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %269, i32 noundef -3)
          to label %3113 unwind label %3150

3113:                                             ; preds = %3112
  %3114 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %269)
          to label %3115 unwind label %3152

3115:                                             ; preds = %3113
  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.start.p0(i64 1, ptr nonnull %270) #6
  store i8 1, ptr %270, align 1, !tbaa !5
  %3116 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %270)
          to label %3117 unwind label %3155

3117:                                             ; preds = %3115
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %270) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1422 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1422:                                   ; preds = %3117, %3122
  %3118 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %3119 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3119:                                             ; preds = %.preheader1422
  %3120 = load i8, ptr %3118, align 1, !tbaa !5, !range !9, !noundef !10
  %3121 = trunc nuw i8 %3120 to i1
  br i1 %3121, label %3157, label %3122

3122:                                             ; preds = %3119
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1422 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3123:                                             ; preds = %3094
  %3124 = landingpad { ptr, i32 }
          cleanup
  br label %3130

3125:                                             ; preds = %3097, %3095
  %3126 = landingpad { ptr, i32 }
          cleanup
  br label %3129

3127:                                             ; preds = %3098
  %3128 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %263) #6
  br label %3129

3129:                                             ; preds = %3127, %3125
  %.pn1073 = phi { ptr, i32 } [ %3128, %3127 ], [ %3126, %3125 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %264) #6
  br label %3130

3130:                                             ; preds = %3129, %3123
  %.pn1073.pn = phi { ptr, i32 } [ %.pn1073, %3129 ], [ %3124, %3123 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %264) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %263) #6
  br label %.loopexit.split-lp

3131:                                             ; preds = %3100
  %3132 = landingpad { ptr, i32 }
          cleanup
  br label %3135

3133:                                             ; preds = %3101
  %3134 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %265) #6
  br label %3135

3135:                                             ; preds = %3133, %3131
  %.pn1076 = phi { ptr, i32 } [ %3134, %3133 ], [ %3132, %3131 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %265) #6
  br label %.loopexit.split-lp

3136:                                             ; preds = %3103
  %3137 = landingpad { ptr, i32 }
          cleanup
  br label %3149

3138:                                             ; preds = %3104
  %3139 = landingpad { ptr, i32 }
          cleanup
  br label %3148

3140:                                             ; preds = %3106
  %3141 = landingpad { ptr, i32 }
          cleanup
  br label %3147

3142:                                             ; preds = %3109, %3107
  %3143 = landingpad { ptr, i32 }
          cleanup
  br label %3146

3144:                                             ; preds = %3110
  %3145 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %266) #6
  br label %3146

3146:                                             ; preds = %3144, %3142
  %.pn1078 = phi { ptr, i32 } [ %3145, %3144 ], [ %3143, %3142 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %268) #6
  br label %3147

3147:                                             ; preds = %3146, %3140
  %.pn1078.pn = phi { ptr, i32 } [ %.pn1078, %3146 ], [ %3141, %3140 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %268) #6
  br label %3148

3148:                                             ; preds = %3147, %3138
  %.pn1078.pn.pn = phi { ptr, i32 } [ %.pn1078.pn, %3147 ], [ %3139, %3138 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %267) #6
  br label %3149

3149:                                             ; preds = %3148, %3136
  %.pn1078.pn.pn.pn = phi { ptr, i32 } [ %.pn1078.pn.pn, %3148 ], [ %3137, %3136 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %267) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %266) #6
  br label %.loopexit.split-lp

3150:                                             ; preds = %3112
  %3151 = landingpad { ptr, i32 }
          cleanup
  br label %3154

3152:                                             ; preds = %3113
  %3153 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %269) #6
  br label %3154

3154:                                             ; preds = %3152, %3150
  %.pn1083 = phi { ptr, i32 } [ %3153, %3152 ], [ %3151, %3150 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %269) #6
  br label %.loopexit.split-lp

3155:                                             ; preds = %3115
  %3156 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %270) #6
  br label %.loopexit.split-lp

3157:                                             ; preds = %3119
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3158 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3158:                                             ; preds = %3157
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %271) #6
  store i8 0, ptr %271, align 1, !tbaa !5
  %3159 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %271)
          to label %3160 unwind label %3180

3160:                                             ; preds = %3158
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %271) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3161 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3161:                                             ; preds = %3160
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %272, i32 noundef 3779)
          to label %3162 unwind label %3182

3162:                                             ; preds = %3161
  %3163 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %272)
          to label %3164 unwind label %3184

3164:                                             ; preds = %3162
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %272) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %273) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %273, i32 noundef 0)
          to label %3165 unwind label %3187

3165:                                             ; preds = %3164
  %3166 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %273)
          to label %3167 unwind label %3189

3167:                                             ; preds = %3165
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %273) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %273) #6
  %3168 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %3169 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3169:                                             ; preds = %3167
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %274) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %274, i32 noundef -2)
          to label %3170 unwind label %3192

3170:                                             ; preds = %3169
  %3171 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %274)
          to label %3172 unwind label %3194

3172:                                             ; preds = %3170
  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 1, ptr nonnull %275) #6
  store i8 1, ptr %275, align 1, !tbaa !5
  %3173 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %275)
          to label %3174 unwind label %3197

3174:                                             ; preds = %3172
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %275) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1419 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1419:                                   ; preds = %3174, %3179
  %3175 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %3176 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3176:                                             ; preds = %.preheader1419
  %3177 = load i8, ptr %3175, align 1, !tbaa !5, !range !9, !noundef !10
  %3178 = trunc nuw i8 %3177 to i1
  br i1 %3178, label %3199, label %3179

3179:                                             ; preds = %3176
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1419 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3180:                                             ; preds = %3158
  %3181 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %271) #6
  br label %.loopexit.split-lp

3182:                                             ; preds = %3161
  %3183 = landingpad { ptr, i32 }
          cleanup
  br label %3186

3184:                                             ; preds = %3162
  %3185 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %272) #6
  br label %3186

3186:                                             ; preds = %3184, %3182
  %.pn1085 = phi { ptr, i32 } [ %3185, %3184 ], [ %3183, %3182 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %272) #6
  br label %.loopexit.split-lp

3187:                                             ; preds = %3164
  %3188 = landingpad { ptr, i32 }
          cleanup
  br label %3191

3189:                                             ; preds = %3165
  %3190 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %273) #6
  br label %3191

3191:                                             ; preds = %3189, %3187
  %.pn1087 = phi { ptr, i32 } [ %3190, %3189 ], [ %3188, %3187 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %273) #6
  br label %.loopexit.split-lp

3192:                                             ; preds = %3169
  %3193 = landingpad { ptr, i32 }
          cleanup
  br label %3196

3194:                                             ; preds = %3170
  %3195 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %274) #6
  br label %3196

3196:                                             ; preds = %3194, %3192
  %.pn1089 = phi { ptr, i32 } [ %3195, %3194 ], [ %3193, %3192 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %274) #6
  br label %.loopexit.split-lp

3197:                                             ; preds = %3172
  %3198 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %275) #6
  br label %.loopexit.split-lp

3199:                                             ; preds = %3176
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3200 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3200:                                             ; preds = %3199
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %276) #6
  store i8 0, ptr %276, align 1, !tbaa !5
  %3201 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %276)
          to label %3202 unwind label %3232

3202:                                             ; preds = %3200
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %276) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3203 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3203:                                             ; preds = %3202
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %277) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %277, i32 noundef 10)
          to label %3204 unwind label %3234

3204:                                             ; preds = %3203
  %3205 = 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) %277)
          to label %3206 unwind label %3236

3206:                                             ; preds = %3204
  %3207 = 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) %3205)
          to label %3208 unwind label %3236

3208:                                             ; preds = %3206
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %277) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %277) #6
  %3209 = 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 %3210 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3210:                                             ; preds = %3208
  %3211 = 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 %3212 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3212:                                             ; preds = %3210
  %3213 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %3209, ptr noundef nonnull align 8 dereferenceable(8) %3211)
          to label %3214 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3214:                                             ; preds = %3212
  %3215 = 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) %3213)
          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.sp1930

3216:                                             ; preds = %3214
  %3217 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3218 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3218:                                             ; preds = %3216
  %3219 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3220 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3220:                                             ; preds = %3218
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %278) #6
  store i8 0, ptr %278, align 1, !tbaa !5
  %3221 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %278)
          to label %3222 unwind label %3239

3222:                                             ; preds = %3220
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %278) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %279) #6
  store i8 1, ptr %279, align 1, !tbaa !5
  %3223 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %279)
          to label %3224 unwind label %3241

3224:                                             ; preds = %3222
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %279) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1415 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1415:                                   ; preds = %3224, %3245
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %280) #6
  store i8 0, ptr %280, align 1, !tbaa !5
  %3225 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %280)
          to label %3226 unwind label %3243

3226:                                             ; preds = %.preheader1415
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %280) #6
  %3227 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          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

3228:                                             ; preds = %3226
  %3229 = load i8, ptr %3227, align 1, !tbaa !5, !range !9, !noundef !10
  %3230 = trunc nuw i8 %3229 to i1
  br i1 %3230, label %3231, label %3245

3231:                                             ; preds = %3228
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3246 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3232:                                             ; preds = %3200
  %3233 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %276) #6
  br label %.loopexit.split-lp

3234:                                             ; preds = %3203
  %3235 = landingpad { ptr, i32 }
          cleanup
  br label %3238

3236:                                             ; preds = %3206, %3204
  %3237 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %277) #6
  br label %3238

3238:                                             ; preds = %3236, %3234
  %.pn1091 = phi { ptr, i32 } [ %3237, %3236 ], [ %3235, %3234 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %277) #6
  br label %.loopexit.split-lp

3239:                                             ; preds = %3220
  %3240 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %278) #6
  br label %.loopexit.split-lp

3241:                                             ; preds = %3222
  %3242 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %279) #6
  br label %.loopexit.split-lp

3243:                                             ; preds = %.preheader1415
  %3244 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %280) #6
  br label %.loopexit.split-lp

3245:                                             ; preds = %3228
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1415 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3246:                                             ; preds = %3231
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %281) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %281, i32 noundef 0)
          to label %3247 unwind label %3270

3247:                                             ; preds = %3246
  %3248 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %281, ptr noundef nonnull align 8 dereferenceable(8) %21)
          to label %3249 unwind label %3272

3249:                                             ; preds = %3247
  %3250 = 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) %3248)
          to label %3251 unwind label %3272

3251:                                             ; preds = %3249
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %281) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %281) #6
  %3252 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3253 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3253:                                             ; preds = %3251
  %3254 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3255 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3255:                                             ; preds = %3253
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %282) #6
  store i8 1, ptr %282, align 1, !tbaa !5
  %3256 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %282)
          to label %3257 unwind label %3275

3257:                                             ; preds = %3255
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %282) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %283) #6
  store i8 1, ptr %283, align 1, !tbaa !5
  %3258 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %283)
          to label %3259 unwind label %3277

3259:                                             ; preds = %3257
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %283) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1412 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1412:                                   ; preds = %3259, %3281
  %3260 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %3261 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3261:                                             ; preds = %.preheader1412
  %3262 = 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) %3260)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %284) #6
  store i8 0, ptr %284, align 1, !tbaa !5
  %3263 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %284)
          to label %3264 unwind label %3279

3264:                                             ; preds = %3261
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %284) #6
  %3265 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %3266 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3266:                                             ; preds = %3264
  %3267 = load i8, ptr %3265, align 1, !tbaa !5, !range !9, !noundef !10
  %3268 = trunc nuw i8 %3267 to i1
  br i1 %3268, label %3269, label %3281

3269:                                             ; preds = %3266
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3270:                                             ; preds = %3246
  %3271 = landingpad { ptr, i32 }
          cleanup
  br label %3274

3272:                                             ; preds = %3249, %3247
  %3273 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %281) #6
  br label %3274

3274:                                             ; preds = %3272, %3270
  %.pn1093 = phi { ptr, i32 } [ %3273, %3272 ], [ %3271, %3270 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %281) #6
  br label %.loopexit.split-lp

3275:                                             ; preds = %3255
  %3276 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %282) #6
  br label %.loopexit.split-lp

3277:                                             ; preds = %3257
  %3278 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %283) #6
  br label %.loopexit.split-lp

3279:                                             ; preds = %3261
  %3280 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %284) #6
  br label %.loopexit.split-lp

3281:                                             ; preds = %3266
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1412 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3282:                                             ; preds = %3269
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %285) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %285, i32 noundef 11)
          to label %3283 unwind label %3291

3283:                                             ; preds = %3282
  %3284 = 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) %285)
          to label %3285 unwind label %3293

3285:                                             ; preds = %3283
  %3286 = 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) %3284)
          to label %3287 unwind label %3293

3287:                                             ; preds = %3285
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %285) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %285) #6
  %3288 = 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 %.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.sp1930

.invoke2306:                                      ; preds = %3287
  %3289 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %3288)
  %not.2316 = xor i1 %3289, true
  %.2311 = zext i1 %not.2316 to i32
  %3290 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef %.2311)
          to label %3296 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3291:                                             ; preds = %3282
  %3292 = landingpad { ptr, i32 }
          cleanup
  br label %3295

3293:                                             ; preds = %3285, %3283
  %3294 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %285) #6
  br label %3295

3295:                                             ; preds = %3293, %3291
  %.pn1095 = phi { ptr, i32 } [ %3294, %3293 ], [ %3292, %3291 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %285) #6
  br label %.loopexit.split-lp

3296:                                             ; preds = %.invoke2306
  %3297 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp1930

3298:                                             ; preds = %3296
  %3299 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3300 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3300:                                             ; preds = %3298
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %286) #6
  store i8 0, ptr %286, align 1, !tbaa !5
  %3301 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %286)
          to label %3302 unwind label %3312

3302:                                             ; preds = %3300
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %286) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %287) #6
  store i8 1, ptr %287, align 1, !tbaa !5
  %3303 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %287)
          to label %3304 unwind label %3314

3304:                                             ; preds = %3302
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %287) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1408 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1408:                                   ; preds = %3304, %3318
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %288) #6
  store i8 0, ptr %288, align 1, !tbaa !5
  %3305 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %288)
          to label %3306 unwind label %3316

3306:                                             ; preds = %.preheader1408
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %288) #6
  %3307 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %3308 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3308:                                             ; preds = %3306
  %3309 = load i8, ptr %3307, align 1, !tbaa !5, !range !9, !noundef !10
  %3310 = trunc nuw i8 %3309 to i1
  br i1 %3310, label %3311, label %3318

3311:                                             ; preds = %3308
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3319 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3312:                                             ; preds = %3300
  %3313 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %286) #6
  br label %.loopexit.split-lp

3314:                                             ; preds = %3302
  %3315 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %287) #6
  br label %.loopexit.split-lp

3316:                                             ; preds = %.preheader1408
  %3317 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %288) #6
  br label %.loopexit.split-lp

3318:                                             ; preds = %3308
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1408 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3319:                                             ; preds = %3311
  %3320 = 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)
  %3321 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3322 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3322:                                             ; preds = %3319
  %3323 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3324:                                             ; preds = %3322
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %289) #6
  store i8 1, ptr %289, align 1, !tbaa !5
  %3325 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %289)
          to label %3326 unwind label %3339

3326:                                             ; preds = %3324
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %289) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %290) #6
  store i8 1, ptr %290, align 1, !tbaa !5
  %3327 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %290)
          to label %3328 unwind label %3341

3328:                                             ; preds = %3326
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %290) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1405 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1405:                                   ; preds = %3328, %3345
  %3329 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %3330 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3330:                                             ; preds = %.preheader1405
  %3331 = 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) %3329)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %291) #6
  store i8 0, ptr %291, align 1, !tbaa !5
  %3332 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %291)
          to label %3333 unwind label %3343

3333:                                             ; preds = %3330
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %291) #6
  %3334 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          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

3335:                                             ; preds = %3333
  %3336 = load i8, ptr %3334, align 1, !tbaa !5, !range !9, !noundef !10
  %3337 = trunc nuw i8 %3336 to i1
  br i1 %3337, label %3338, label %3345

3338:                                             ; preds = %3335
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3339:                                             ; preds = %3324
  %3340 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %289) #6
  br label %.loopexit.split-lp

3341:                                             ; preds = %3326
  %3342 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %290) #6
  br label %.loopexit.split-lp

3343:                                             ; preds = %3330
  %3344 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %291) #6
  br label %.loopexit.split-lp

3345:                                             ; preds = %3335
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1405 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3346:                                             ; preds = %3338
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %292) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %292, i32 noundef 12)
          to label %3347 unwind label %3368

3347:                                             ; preds = %3346
  %3348 = 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) %292)
          to label %3349 unwind label %3370

3349:                                             ; preds = %3347
  %3350 = 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) %3348)
          to label %3351 unwind label %3370

3351:                                             ; preds = %3349
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %292) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %292) #6
  %3352 = 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)
  %3353 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3354 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3354:                                             ; preds = %3351
  %3355 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3356 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3356:                                             ; preds = %3354
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %293) #6
  store i8 0, ptr %293, align 1, !tbaa !5
  %3357 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %293)
          to label %3358 unwind label %3373

3358:                                             ; preds = %3356
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %293) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %294) #6
  store i8 1, ptr %294, align 1, !tbaa !5
  %3359 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %294)
          to label %3360 unwind label %3375

3360:                                             ; preds = %3358
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %294) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1401 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1401:                                   ; preds = %3360, %3379
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %295) #6
  store i8 0, ptr %295, align 1, !tbaa !5
  %3361 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %295)
          to label %3362 unwind label %3377

3362:                                             ; preds = %.preheader1401
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %295) #6
  %3363 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %3364 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3364:                                             ; preds = %3362
  %3365 = load i8, ptr %3363, align 1, !tbaa !5, !range !9, !noundef !10
  %3366 = trunc nuw i8 %3365 to i1
  br i1 %3366, label %3367, label %3379

3367:                                             ; preds = %3364
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3368:                                             ; preds = %3346
  %3369 = landingpad { ptr, i32 }
          cleanup
  br label %3372

3370:                                             ; preds = %3349, %3347
  %3371 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %292) #6
  br label %3372

3372:                                             ; preds = %3370, %3368
  %.pn1097 = phi { ptr, i32 } [ %3371, %3370 ], [ %3369, %3368 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %292) #6
  br label %.loopexit.split-lp

3373:                                             ; preds = %3356
  %3374 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %293) #6
  br label %.loopexit.split-lp

3375:                                             ; preds = %3358
  %3376 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %294) #6
  br label %.loopexit.split-lp

3377:                                             ; preds = %.preheader1401
  %3378 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %295) #6
  br label %.loopexit.split-lp

3379:                                             ; preds = %3364
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1401 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3380:                                             ; preds = %3367
  %3381 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3382 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3382:                                             ; preds = %3380
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %296) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %297) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %297, i32 noundef 0)
          to label %3383 unwind label %3401

3383:                                             ; preds = %3382
  %3384 = 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) %297)
          to label %3385 unwind label %3403

3385:                                             ; preds = %3383
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %296, ptr noundef nonnull align 1 dereferenceable(1) %3384)
          to label %3386 unwind label %3403

3386:                                             ; preds = %3385
  %3387 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %296)
          to label %3388 unwind label %3405

3388:                                             ; preds = %3386
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %296) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %297) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %297) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %296) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %298) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %298, i32 noundef 1)
          to label %3389 unwind label %3409

3389:                                             ; preds = %3388
  %3390 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %298)
          to label %3391 unwind label %3411

3391:                                             ; preds = %3389
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %298) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %298) #6
  %3392 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3393 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3393:                                             ; preds = %3391
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %299) #6
  store i8 1, ptr %299, align 1, !tbaa !5
  %3394 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %299)
          to label %3395 unwind label %3414

3395:                                             ; preds = %3393
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %299) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1398 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1398:                                   ; preds = %3395, %3400
  %3396 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %3397 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3397:                                             ; preds = %.preheader1398
  %3398 = load i8, ptr %3396, align 1, !tbaa !5, !range !9, !noundef !10
  %3399 = trunc nuw i8 %3398 to i1
  br i1 %3399, label %3416, label %3400

3400:                                             ; preds = %3397
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1398 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3401:                                             ; preds = %3382
  %3402 = landingpad { ptr, i32 }
          cleanup
  br label %3408

3403:                                             ; preds = %3385, %3383
  %3404 = landingpad { ptr, i32 }
          cleanup
  br label %3407

3405:                                             ; preds = %3386
  %3406 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %296) #6
  br label %3407

3407:                                             ; preds = %3405, %3403
  %.pn1099 = phi { ptr, i32 } [ %3406, %3405 ], [ %3404, %3403 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %297) #6
  br label %3408

3408:                                             ; preds = %3407, %3401
  %.pn1099.pn = phi { ptr, i32 } [ %.pn1099, %3407 ], [ %3402, %3401 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %297) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %296) #6
  br label %.loopexit.split-lp

3409:                                             ; preds = %3388
  %3410 = landingpad { ptr, i32 }
          cleanup
  br label %3413

3411:                                             ; preds = %3389
  %3412 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %298) #6
  br label %3413

3413:                                             ; preds = %3411, %3409
  %.pn1102 = phi { ptr, i32 } [ %3412, %3411 ], [ %3410, %3409 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %298) #6
  br label %.loopexit.split-lp

3414:                                             ; preds = %3393
  %3415 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %299) #6
  br label %.loopexit.split-lp

3416:                                             ; preds = %3397
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3417 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3417:                                             ; preds = %3416
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %300) #6
  store i8 0, ptr %300, align 1, !tbaa !5
  %3418 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %300)
          to label %3419 unwind label %3420

3419:                                             ; preds = %3417
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %300) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3424 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3420:                                             ; preds = %3417
  %3421 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %300) #6
  br label %.loopexit.split-lp

3422:                                             ; preds = %2882
  %3423 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef -4)
          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.sp1930

.invoke2305:                                      ; preds = %3057, %2997, %2936, %3422
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3424 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3424:                                             ; preds = %.invoke2305, %3419, %2017
  %.1 = phi i1 [ false, %2017 ], [ %.0, %3419 ], [ true, %.invoke2305 ]
  %3425 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1110 = icmp eq i64 %3425, 3
  br i1 %.not1110, label %3426, label %.invoke2315

3426:                                             ; preds = %3424
  %3427 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %3428 = icmp eq i64 %3427, 0
  br i1 %3428, label %.invoke2315, label %3429

3429:                                             ; preds = %3426
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3430 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3430:                                             ; preds = %3429
  %3431 = 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 %301) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %301, i32 noundef 24)
          to label %3432 unwind label %3455

3432:                                             ; preds = %3430
  %3433 = 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) %301)
          to label %3434 unwind label %3457

3434:                                             ; preds = %3432
  %3435 = 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) %3433)
          to label %3436 unwind label %3457

3436:                                             ; preds = %3434
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %301) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %301) #6
  %3437 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3438 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3438:                                             ; preds = %3436
  %3439 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          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.sp1930

3440:                                             ; preds = %3438
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %302) #6
  store i8 1, ptr %302, align 1, !tbaa !5
  %3441 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %302)
          to label %3442 unwind label %3460

3442:                                             ; preds = %3440
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %302) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %303) #6
  store i8 1, ptr %303, align 1, !tbaa !5
  %3443 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %303)
          to label %3444 unwind label %3462

3444:                                             ; preds = %3442
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %303) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1373 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1373:                                   ; preds = %3444, %3466
  %3445 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          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

3446:                                             ; preds = %.preheader1373
  %3447 = 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) %3445)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %304) #6
  store i8 0, ptr %304, align 1, !tbaa !5
  %3448 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %304)
          to label %3449 unwind label %3464

3449:                                             ; preds = %3446
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %304) #6
  %3450 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %3451 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3451:                                             ; preds = %3449
  %3452 = load i8, ptr %3450, align 1, !tbaa !5, !range !9, !noundef !10
  %3453 = trunc nuw i8 %3452 to i1
  br i1 %3453, label %3454, label %3466

3454:                                             ; preds = %3451
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3455:                                             ; preds = %3430
  %3456 = landingpad { ptr, i32 }
          cleanup
  br label %3459

3457:                                             ; preds = %3434, %3432
  %3458 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %301) #6
  br label %3459

3459:                                             ; preds = %3457, %3455
  %.pn1111 = phi { ptr, i32 } [ %3458, %3457 ], [ %3456, %3455 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %301) #6
  br label %.loopexit.split-lp

3460:                                             ; preds = %3440
  %3461 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %302) #6
  br label %.loopexit.split-lp

3462:                                             ; preds = %3442
  %3463 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %303) #6
  br label %.loopexit.split-lp

3464:                                             ; preds = %3446
  %3465 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %304) #6
  br label %.loopexit.split-lp

3466:                                             ; preds = %3451
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1373 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3467:                                             ; preds = %3454
  %3468 = 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 %3469 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3469:                                             ; preds = %3467
  %3470 = 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) %3468)
  %3471 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %19)
  %3472 = add nsw i64 %3471, 2
  %3473 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %3472)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %305) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %305, i32 noundef 8)
          to label %3474 unwind label %3495

3474:                                             ; preds = %3469
  %3475 = 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) %305)
          to label %3476 unwind label %3497

3476:                                             ; preds = %3474
  %3477 = 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) %3475)
          to label %3478 unwind label %3497

3478:                                             ; preds = %3476
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %305) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %305) #6
  %3479 = 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)
  %3480 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3481 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3481:                                             ; preds = %3478
  %3482 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          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.sp1930

3483:                                             ; preds = %3481
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %306) #6
  store i8 0, ptr %306, align 1, !tbaa !5
  %3484 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %306)
          to label %3485 unwind label %3500

3485:                                             ; preds = %3483
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %306) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %307) #6
  store i8 1, ptr %307, align 1, !tbaa !5
  %3486 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %307)
          to label %3487 unwind label %3502

3487:                                             ; preds = %3485
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %307) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1370 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1370:                                   ; preds = %3487, %3506
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %308) #6
  store i8 0, ptr %308, align 1, !tbaa !5
  %3488 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %308)
          to label %3489 unwind label %3504

3489:                                             ; preds = %.preheader1370
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %308) #6
  %3490 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %3491 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3491:                                             ; preds = %3489
  %3492 = load i8, ptr %3490, align 1, !tbaa !5, !range !9, !noundef !10
  %3493 = trunc nuw i8 %3492 to i1
  br i1 %3493, label %3494, label %3506

3494:                                             ; preds = %3491
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3495:                                             ; preds = %3469
  %3496 = landingpad { ptr, i32 }
          cleanup
  br label %3499

3497:                                             ; preds = %3476, %3474
  %3498 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %305) #6
  br label %3499

3499:                                             ; preds = %3497, %3495
  %.pn1113 = phi { ptr, i32 } [ %3498, %3497 ], [ %3496, %3495 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %305) #6
  br label %.loopexit.split-lp

3500:                                             ; preds = %3483
  %3501 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %306) #6
  br label %.loopexit.split-lp

3502:                                             ; preds = %3485
  %3503 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %307) #6
  br label %.loopexit.split-lp

3504:                                             ; preds = %.preheader1370
  %3505 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %308) #6
  br label %.loopexit.split-lp

3506:                                             ; preds = %3491
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1370 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3507:                                             ; preds = %3494
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %309) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %309, i32 noundef 25)
          to label %3508 unwind label %3531

3508:                                             ; preds = %3507
  %3509 = 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) %309)
          to label %3510 unwind label %3533

3510:                                             ; preds = %3508
  %3511 = 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) %3509)
          to label %3512 unwind label %3533

3512:                                             ; preds = %3510
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %309) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %309) #6
  %3513 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3514 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3514:                                             ; preds = %3512
  %3515 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3516 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3516:                                             ; preds = %3514
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %310) #6
  store i8 1, ptr %310, align 1, !tbaa !5
  %3517 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %310)
          to label %3518 unwind label %3536

3518:                                             ; preds = %3516
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %310) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %311) #6
  store i8 1, ptr %311, align 1, !tbaa !5
  %3519 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %311)
          to label %3520 unwind label %3538

3520:                                             ; preds = %3518
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %311) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1366 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1366:                                   ; preds = %3520, %3542
  %3521 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %3522 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3522:                                             ; preds = %.preheader1366
  %3523 = 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) %3521)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %312) #6
  store i8 0, ptr %312, align 1, !tbaa !5
  %3524 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %312)
          to label %3525 unwind label %3540

3525:                                             ; preds = %3522
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %312) #6
  %3526 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %3527 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3527:                                             ; preds = %3525
  %3528 = load i8, ptr %3526, align 1, !tbaa !5, !range !9, !noundef !10
  %3529 = trunc nuw i8 %3528 to i1
  br i1 %3529, label %3530, label %3542

3530:                                             ; preds = %3527
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3531:                                             ; preds = %3507
  %3532 = landingpad { ptr, i32 }
          cleanup
  br label %3535

3533:                                             ; preds = %3510, %3508
  %3534 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %309) #6
  br label %3535

3535:                                             ; preds = %3533, %3531
  %.pn1115 = phi { ptr, i32 } [ %3534, %3533 ], [ %3532, %3531 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %309) #6
  br label %.loopexit.split-lp

3536:                                             ; preds = %3516
  %3537 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %310) #6
  br label %.loopexit.split-lp

3538:                                             ; preds = %3518
  %3539 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %311) #6
  br label %.loopexit.split-lp

3540:                                             ; preds = %3522
  %3541 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %312) #6
  br label %.loopexit.split-lp

3542:                                             ; preds = %3527
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1366 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3543:                                             ; preds = %3530
  %3544 = 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 %3545 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3545:                                             ; preds = %3543
  %3546 = 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) %3544)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %313) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %313, i32 noundef 9)
          to label %3547 unwind label %3568

3547:                                             ; preds = %3545
  %3548 = 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) %313)
          to label %3549 unwind label %3570

3549:                                             ; preds = %3547
  %3550 = 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) %3548)
          to label %3551 unwind label %3570

3551:                                             ; preds = %3549
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %313) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %313) #6
  %3552 = 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)
  %3553 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3554 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3554:                                             ; preds = %3551
  %3555 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3556 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3556:                                             ; preds = %3554
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %314) #6
  store i8 0, ptr %314, align 1, !tbaa !5
  %3557 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %314)
          to label %3558 unwind label %3573

3558:                                             ; preds = %3556
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %314) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %315) #6
  store i8 1, ptr %315, align 1, !tbaa !5
  %3559 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %315)
          to label %3560 unwind label %3575

3560:                                             ; preds = %3558
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %315) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1363 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1363:                                   ; preds = %3560, %3579
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %316) #6
  store i8 0, ptr %316, align 1, !tbaa !5
  %3561 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %316)
          to label %3562 unwind label %3577

3562:                                             ; preds = %.preheader1363
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %316) #6
  %3563 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %3564 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3564:                                             ; preds = %3562
  %3565 = load i8, ptr %3563, align 1, !tbaa !5, !range !9, !noundef !10
  %3566 = trunc nuw i8 %3565 to i1
  br i1 %3566, label %3567, label %3579

3567:                                             ; preds = %3564
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3568:                                             ; preds = %3545
  %3569 = landingpad { ptr, i32 }
          cleanup
  br label %3572

3570:                                             ; preds = %3549, %3547
  %3571 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %313) #6
  br label %3572

3572:                                             ; preds = %3570, %3568
  %.pn1117 = phi { ptr, i32 } [ %3571, %3570 ], [ %3569, %3568 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %313) #6
  br label %.loopexit.split-lp

3573:                                             ; preds = %3556
  %3574 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %314) #6
  br label %.loopexit.split-lp

3575:                                             ; preds = %3558
  %3576 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %315) #6
  br label %.loopexit.split-lp

3577:                                             ; preds = %.preheader1363
  %3578 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %316) #6
  br label %.loopexit.split-lp

3579:                                             ; preds = %3564
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1363 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3580:                                             ; preds = %3567
  %3581 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %13)
  %3582 = shl i64 %3581, 1
  %3583 = add nsw i64 %3582, 32
  %3584 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %3583)
  %3585 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %12, i32 noundef 6)
          to label %3586 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3586:                                             ; preds = %3580
  %3587 = 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 %3588 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3588:                                             ; preds = %3586
  %3589 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %3587)
          to label %3590 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3590:                                             ; preds = %3588
  %.not1119 = icmp eq i64 %3589, 0
  br i1 %.not1119, label %3593, label %3591

3591:                                             ; preds = %3590
  %3592 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 10)
          to label %.invoke2304 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3593:                                             ; preds = %3590
  %3594 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 11)
          to label %.invoke2304 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.invoke2304:                                      ; preds = %3593, %3591
  %3595 = phi i32 [ 272, %3591 ], [ 288, %3593 ]
  %3596 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef %3595)
          to label %3597 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3597:                                             ; preds = %.invoke2304
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %317) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %317, i32 noundef 0)
          to label %3598 unwind label %3624

3598:                                             ; preds = %3597
  %3599 = 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) %317)
          to label %3600 unwind label %3626

3600:                                             ; preds = %3598
  %3601 = 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) %3599)
          to label %3602 unwind label %3626

3602:                                             ; preds = %3600
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %317) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %317) #6
  %3603 = 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 %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.sp1930

3604:                                             ; preds = %3602
  %3605 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %3603, ptr noundef nonnull align 8 dereferenceable(8) %11)
          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.sp1930

3606:                                             ; preds = %3604
  %3607 = 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) %3605)
          to label %3608 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3608:                                             ; preds = %3606
  %3609 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3610 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3610:                                             ; preds = %3608
  %3611 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3612 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3612:                                             ; preds = %3610
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %318) #6
  store i8 0, ptr %318, align 1, !tbaa !5
  %3613 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %318)
          to label %3614 unwind label %3629

3614:                                             ; preds = %3612
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %318) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %319) #6
  store i8 1, ptr %319, align 1, !tbaa !5
  %3615 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %319)
          to label %3616 unwind label %3631

3616:                                             ; preds = %3614
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %319) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1359 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1359:                                   ; preds = %3616, %3635
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %320) #6
  store i8 0, ptr %320, align 1, !tbaa !5
  %3617 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %320)
          to label %3618 unwind label %3633

3618:                                             ; preds = %.preheader1359
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %320) #6
  %3619 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          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

3620:                                             ; preds = %3618
  %3621 = load i8, ptr %3619, align 1, !tbaa !5, !range !9, !noundef !10
  %3622 = trunc nuw i8 %3621 to i1
  br i1 %3622, label %3623, label %3635

3623:                                             ; preds = %3620
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3624:                                             ; preds = %3597
  %3625 = landingpad { ptr, i32 }
          cleanup
  br label %3628

3626:                                             ; preds = %3600, %3598
  %3627 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %317) #6
  br label %3628

3628:                                             ; preds = %3626, %3624
  %.pn1120 = phi { ptr, i32 } [ %3627, %3626 ], [ %3625, %3624 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %317) #6
  br label %.loopexit.split-lp

3629:                                             ; preds = %3612
  %3630 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %318) #6
  br label %.loopexit.split-lp

3631:                                             ; preds = %3614
  %3632 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %319) #6
  br label %.loopexit.split-lp

3633:                                             ; preds = %.preheader1359
  %3634 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %320) #6
  br label %.loopexit.split-lp

3635:                                             ; preds = %3620
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1359 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3636:                                             ; preds = %3623
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %321) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %321, i32 noundef 1)
          to label %3637 unwind label %3662

3637:                                             ; preds = %3636
  %3638 = 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) %321)
          to label %3639 unwind label %3664

3639:                                             ; preds = %3637
  %3640 = 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) %3638)
          to label %3641 unwind label %3664

3641:                                             ; preds = %3639
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %321) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %321) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %322) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %322, i32 noundef 0)
          to label %3642 unwind label %3667

3642:                                             ; preds = %3641
  %3643 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %322, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %3644 unwind label %3669

3644:                                             ; preds = %3642
  %3645 = 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) %3643)
          to label %3646 unwind label %3669

3646:                                             ; preds = %3644
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %322) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %322) #6
  %3647 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3648 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3648:                                             ; preds = %3646
  %3649 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3650 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3650:                                             ; preds = %3648
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %323) #6
  store i8 0, ptr %323, align 1, !tbaa !5
  %3651 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %323)
          to label %3652 unwind label %3672

3652:                                             ; preds = %3650
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %323) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %324) #6
  store i8 1, ptr %324, align 1, !tbaa !5
  %3653 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %324)
          to label %3654 unwind label %3674

3654:                                             ; preds = %3652
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %324) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1356 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1356:                                   ; preds = %3654, %3678
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %325) #6
  store i8 0, ptr %325, align 1, !tbaa !5
  %3655 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %325)
          to label %3656 unwind label %3676

3656:                                             ; preds = %.preheader1356
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %325) #6
  %3657 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %3658 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3658:                                             ; preds = %3656
  %3659 = load i8, ptr %3657, align 1, !tbaa !5, !range !9, !noundef !10
  %3660 = trunc nuw i8 %3659 to i1
  br i1 %3660, label %3661, label %3678

3661:                                             ; preds = %3658
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3679 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3662:                                             ; preds = %3636
  %3663 = landingpad { ptr, i32 }
          cleanup
  br label %3666

3664:                                             ; preds = %3639, %3637
  %3665 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %321) #6
  br label %3666

3666:                                             ; preds = %3664, %3662
  %.pn1122 = phi { ptr, i32 } [ %3665, %3664 ], [ %3663, %3662 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %321) #6
  br label %.loopexit.split-lp

3667:                                             ; preds = %3641
  %3668 = landingpad { ptr, i32 }
          cleanup
  br label %3671

3669:                                             ; preds = %3644, %3642
  %3670 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %322) #6
  br label %3671

3671:                                             ; preds = %3669, %3667
  %.pn1124 = phi { ptr, i32 } [ %3670, %3669 ], [ %3668, %3667 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %322) #6
  br label %.loopexit.split-lp

3672:                                             ; preds = %3650
  %3673 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %323) #6
  br label %.loopexit.split-lp

3674:                                             ; preds = %3652
  %3675 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %324) #6
  br label %.loopexit.split-lp

3676:                                             ; preds = %.preheader1356
  %3677 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %325) #6
  br label %.loopexit.split-lp

3678:                                             ; preds = %3658
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1356 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3679:                                             ; preds = %3661
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %326) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %327) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %327, i32 noundef 26)
          to label %3680 unwind label %3707

3680:                                             ; preds = %3679
  %3681 = 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) %327)
          to label %3682 unwind label %3709

3682:                                             ; preds = %3680
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %326, ptr noundef nonnull align 1 dereferenceable(1) %3681)
          to label %3683 unwind label %3709

3683:                                             ; preds = %3682
  %3684 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %326)
          to label %3685 unwind label %3711

3685:                                             ; preds = %3683
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %326) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %327) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %327) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %326) #6
  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_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %329, i32 noundef 10)
          to label %3686 unwind label %3715

3686:                                             ; preds = %3685
  %3687 = 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 %3688 unwind label %3717

3688:                                             ; preds = %3686
  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) %3687)
          to label %3689 unwind label %3717

3689:                                             ; preds = %3688
  %3690 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %328)
          to label %3691 unwind label %3719

3691:                                             ; preds = %3689
  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
  invoke void @_ZN5sc_dt6sc_intILi7EEC2ERKNS_11sc_int_baseE(ptr noundef nonnull align 8 dereferenceable(24) %330, ptr noundef nonnull align 8 dereferenceable(24) %19)
          to label %3692 unwind label %3723

3692:                                             ; preds = %3691
  %3693 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %330)
          to label %3694 unwind label %3725

3694:                                             ; preds = %3692
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %330) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %330) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %331) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %331, i32 noundef 3)
          to label %3695 unwind label %3728

3695:                                             ; preds = %3694
  %3696 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %331)
          to label %3697 unwind label %3730

3697:                                             ; preds = %3695
  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
  %3698 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3699 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3699:                                             ; preds = %3697
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %332) #6
  store i8 1, ptr %332, align 1, !tbaa !5
  %3700 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %332)
          to label %3701 unwind label %3733

3701:                                             ; preds = %3699
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %332) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1352 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1352:                                   ; preds = %3701, %3706
  %3702 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %3703 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3703:                                             ; preds = %.preheader1352
  %3704 = load i8, ptr %3702, align 1, !tbaa !5, !range !9, !noundef !10
  %3705 = trunc nuw i8 %3704 to i1
  br i1 %3705, label %3735, label %3706

3706:                                             ; preds = %3703
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1352 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3707:                                             ; preds = %3679
  %3708 = landingpad { ptr, i32 }
          cleanup
  br label %3714

3709:                                             ; preds = %3682, %3680
  %3710 = landingpad { ptr, i32 }
          cleanup
  br label %3713

3711:                                             ; preds = %3683
  %3712 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %326) #6
  br label %3713

3713:                                             ; preds = %3711, %3709
  %.pn1126 = phi { ptr, i32 } [ %3712, %3711 ], [ %3710, %3709 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %327) #6
  br label %3714

3714:                                             ; preds = %3713, %3707
  %.pn1126.pn = phi { ptr, i32 } [ %.pn1126, %3713 ], [ %3708, %3707 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %327) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %326) #6
  br label %.loopexit.split-lp

3715:                                             ; preds = %3685
  %3716 = landingpad { ptr, i32 }
          cleanup
  br label %3722

3717:                                             ; preds = %3688, %3686
  %3718 = landingpad { ptr, i32 }
          cleanup
  br label %3721

3719:                                             ; preds = %3689
  %3720 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %328) #6
  br label %3721

3721:                                             ; preds = %3719, %3717
  %.pn1129 = phi { ptr, i32 } [ %3720, %3719 ], [ %3718, %3717 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %329) #6
  br label %3722

3722:                                             ; preds = %3721, %3715
  %.pn1129.pn = phi { ptr, i32 } [ %.pn1129, %3721 ], [ %3716, %3715 ]
  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

3723:                                             ; preds = %3691
  %3724 = landingpad { ptr, i32 }
          cleanup
  br label %3727

3725:                                             ; preds = %3692
  %3726 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %330) #6
  br label %3727

3727:                                             ; preds = %3725, %3723
  %.pn1132 = phi { ptr, i32 } [ %3726, %3725 ], [ %3724, %3723 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %330) #6
  br label %.loopexit.split-lp

3728:                                             ; preds = %3694
  %3729 = landingpad { ptr, i32 }
          cleanup
  br label %3732

3730:                                             ; preds = %3695
  %3731 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %331) #6
  br label %3732

3732:                                             ; preds = %3730, %3728
  %.pn1134 = phi { ptr, i32 } [ %3731, %3730 ], [ %3729, %3728 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %331) #6
  br label %.loopexit.split-lp

3733:                                             ; preds = %3699
  %3734 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %332) #6
  br label %.loopexit.split-lp

3735:                                             ; preds = %3703
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3736 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3736:                                             ; preds = %3735
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %333) #6
  store i8 0, ptr %333, align 1, !tbaa !5
  %3737 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %333)
          to label %3738 unwind label %3760

3738:                                             ; preds = %3736
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %333) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3739 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3739:                                             ; preds = %3738
  %3740 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %3741 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3741:                                             ; preds = %3739
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %334) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %335) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %335, i32 noundef 0)
          to label %3742 unwind label %3762

3742:                                             ; preds = %3741
  %3743 = 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) %335)
          to label %3744 unwind label %3764

3744:                                             ; preds = %3742
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %334, ptr noundef nonnull align 1 dereferenceable(1) %3743)
          to label %3745 unwind label %3764

3745:                                             ; preds = %3744
  %3746 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %334)
          to label %3747 unwind label %3766

3747:                                             ; preds = %3745
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %334) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %335) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %335) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %334) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %336) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %336, i32 noundef 1)
          to label %3748 unwind label %3770

3748:                                             ; preds = %3747
  %3749 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %336)
          to label %3750 unwind label %3772

3750:                                             ; preds = %3748
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %336) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %336) #6
  %3751 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          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.sp1930

3752:                                             ; preds = %3750
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %337) #6
  store i8 1, ptr %337, align 1, !tbaa !5
  %3753 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %337)
          to label %3754 unwind label %3775

3754:                                             ; preds = %3752
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %337) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1349 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1349:                                   ; preds = %3754, %3759
  %3755 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %3756 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3756:                                             ; preds = %.preheader1349
  %3757 = load i8, ptr %3755, align 1, !tbaa !5, !range !9, !noundef !10
  %3758 = trunc nuw i8 %3757 to i1
  br i1 %3758, label %3777, label %3759

3759:                                             ; preds = %3756
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1349 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3760:                                             ; preds = %3736
  %3761 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %333) #6
  br label %.loopexit.split-lp

3762:                                             ; preds = %3741
  %3763 = landingpad { ptr, i32 }
          cleanup
  br label %3769

3764:                                             ; preds = %3744, %3742
  %3765 = landingpad { ptr, i32 }
          cleanup
  br label %3768

3766:                                             ; preds = %3745
  %3767 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %334) #6
  br label %3768

3768:                                             ; preds = %3766, %3764
  %.pn1136 = phi { ptr, i32 } [ %3767, %3766 ], [ %3765, %3764 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %335) #6
  br label %3769

3769:                                             ; preds = %3768, %3762
  %.pn1136.pn = phi { ptr, i32 } [ %.pn1136, %3768 ], [ %3763, %3762 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %335) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %334) #6
  br label %.loopexit.split-lp

3770:                                             ; preds = %3747
  %3771 = landingpad { ptr, i32 }
          cleanup
  br label %3774

3772:                                             ; preds = %3748
  %3773 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %336) #6
  br label %3774

3774:                                             ; preds = %3772, %3770
  %.pn1139 = phi { ptr, i32 } [ %3773, %3772 ], [ %3771, %3770 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %336) #6
  br label %.loopexit.split-lp

3775:                                             ; preds = %3752
  %3776 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %337) #6
  br label %.loopexit.split-lp

3777:                                             ; preds = %3756
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3778 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3778:                                             ; preds = %3777
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %338) #6
  store i8 0, ptr %338, align 1, !tbaa !5
  %3779 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %338)
          to label %3780 unwind label %3781

3780:                                             ; preds = %3778
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %338) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.loopexit1293 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3781:                                             ; preds = %3778
  %3782 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %338) #6
  br label %.loopexit.split-lp

3783:                                             ; preds = %2017
  %3784 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not927 = icmp eq i64 %3784, 3
  br i1 %.not927, label %3785, label %.invoke2315

3785:                                             ; preds = %3783
  %3786 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %3787 = icmp eq i64 %3786, 0
  br i1 %3787, label %.invoke2315, label %3788

3788:                                             ; preds = %3785
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3789 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3789:                                             ; preds = %3788
  %3790 = 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)
  %3791 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %13, i32 noundef -32)
          to label %3792 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3792:                                             ; preds = %3789
  %3793 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %12, i32 noundef 5)
          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.sp1930

3794:                                             ; preds = %3792
  %3795 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 2)
          to label %3796 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3796:                                             ; preds = %3794
  %3797 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %17, i32 noundef 0)
          to label %3798 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3798:                                             ; preds = %3796
  %3799 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %19, i32 noundef 3)
          to label %3800 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3800:                                             ; preds = %3798
  %3801 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %20, i32 noundef 9)
          to label %3802 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3802:                                             ; preds = %3800
  %3803 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi4EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 0)
          to label %3804 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3804:                                             ; preds = %3802
  %3805 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %3806 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3806:                                             ; preds = %3804
  %3807 = 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 %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.sp1930

3808:                                             ; preds = %3806
  %3809 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %3807)
          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.sp1930

3810:                                             ; preds = %3808
  %.not928 = icmp eq i64 %3809, 0
  br i1 %.not928, label %3813, label %3811

3811:                                             ; preds = %3810
  %3812 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 10)
          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.sp1930

3813:                                             ; preds = %3810
  %3814 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 11)
          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.sp1930

.invoke2303:                                      ; preds = %3813, %3811
  %3815 = phi i32 [ 272, %3811 ], [ 288, %3813 ]
  %3816 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef %3815)
          to label %3817 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3817:                                             ; preds = %.invoke2303
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %339) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %339, i32 noundef 10)
          to label %3818 unwind label %3841

3818:                                             ; preds = %3817
  %3819 = 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) %339)
          to label %3820 unwind label %3843

3820:                                             ; preds = %3818
  %3821 = 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) %3819)
          to label %3822 unwind label %3843

3822:                                             ; preds = %3820
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %339) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %339) #6
  %3823 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp1930

3824:                                             ; preds = %3822
  %3825 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          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.sp1930

3826:                                             ; preds = %3824
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %340) #6
  store i8 1, ptr %340, align 1, !tbaa !5
  %3827 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %340)
          to label %3828 unwind label %3846

3828:                                             ; preds = %3826
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %340) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %341) #6
  store i8 1, ptr %341, align 1, !tbaa !5
  %3829 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %341)
          to label %3830 unwind label %3848

3830:                                             ; preds = %3828
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %341) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1562 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1562:                                   ; preds = %3830, %3852
  %3831 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %3832 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1564

3832:                                             ; preds = %.preheader1562
  %3833 = 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) %3831)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %342) #6
  store i8 0, ptr %342, align 1, !tbaa !5
  %3834 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %342)
          to label %3835 unwind label %3850

3835:                                             ; preds = %3832
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %342) #6
  %3836 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %3837 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1564

3837:                                             ; preds = %3835
  %3838 = load i8, ptr %3836, align 1, !tbaa !5, !range !9, !noundef !10
  %3839 = trunc nuw i8 %3838 to i1
  br i1 %3839, label %3840, label %3852

3840:                                             ; preds = %3837
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.sp1930

3841:                                             ; preds = %3817
  %3842 = landingpad { ptr, i32 }
          cleanup
  br label %3845

3843:                                             ; preds = %3820, %3818
  %3844 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %339) #6
  br label %3845

3845:                                             ; preds = %3843, %3841
  %.pn929 = phi { ptr, i32 } [ %3844, %3843 ], [ %3842, %3841 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %339) #6
  br label %.loopexit.split-lp

3846:                                             ; preds = %3826
  %3847 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %340) #6
  br label %.loopexit.split-lp

3848:                                             ; preds = %3828
  %3849 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %341) #6
  br label %.loopexit.split-lp

3850:                                             ; preds = %3832
  %3851 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %342) #6
  br label %.loopexit.split-lp

3852:                                             ; preds = %3837
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1562 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1564, !llvm.loop !79

3853:                                             ; preds = %3840
  %3854 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1756)
          to label %3855 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3855:                                             ; preds = %3853
  %3856 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %3854, i32 noundef 3)
          to label %3857 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3857:                                             ; preds = %3855
  %3858 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %3856)
          to label %3859 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3859:                                             ; preds = %3857
  %.not931 = icmp eq i64 %3858, 0
  br i1 %.not931, label %3862, label %3860

3860:                                             ; preds = %3859
  %3861 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 4096)
          to label %3864 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3862:                                             ; preds = %3859
  %3863 = 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 %3864

3864:                                             ; preds = %3860, %3862
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3865 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3865:                                             ; preds = %3864
  %3866 = 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)
  %3867 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %30)
  %3868 = trunc i64 %3867 to i32
  switch i32 %3868, label %4924 [
    i32 0, label %3869
    i32 1, label %3915
    i32 2, label %3949
    i32 3, label %3983
    i32 4, label %4031
    i32 5, label %4103
    i32 6, label %4175
    i32 7, label %4247
    i32 8, label %4336
    i32 9, label %4408
    i32 10, label %4466
    i32 -1, label %4547
  ]

3869:                                             ; preds = %3865
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %343) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %343, i32 noundef 24)
          to label %3870 unwind label %3898

3870:                                             ; preds = %3869
  %3871 = 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) %343)
          to label %3872 unwind label %3900

3872:                                             ; preds = %3870
  %3873 = 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) %3871)
          to label %3874 unwind label %3900

3874:                                             ; preds = %3872
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %343) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %343) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %344) #6
  invoke void @_ZN5sc_dt6sc_intILi10EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %344, i32 noundef 256)
          to label %3875 unwind label %3903

3875:                                             ; preds = %3874
  %3876 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1759)
          to label %3877 unwind label %3905

3877:                                             ; preds = %3875
  %3878 = load i8, ptr %3876, align 1, !tbaa !5, !range !9, !noundef !10
  %3879 = trunc nuw i8 %3878 to i1
  %3880 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8) %344, i1 noundef zeroext %3879)
          to label %3881 unwind label %3905

3881:                                             ; preds = %3877
  %3882 = 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) %3880)
          to label %3883 unwind label %3905

3883:                                             ; preds = %3881
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %344) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %344) #6
  %3884 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3885 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3885:                                             ; preds = %3883
  %3886 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3887 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3887:                                             ; preds = %3885
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %345) #6
  store i8 0, ptr %345, align 1, !tbaa !5
  %3888 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %345)
          to label %3889 unwind label %3908

3889:                                             ; preds = %3887
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %345) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %346) #6
  store i8 1, ptr %346, align 1, !tbaa !5
  %3890 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %346)
          to label %3891 unwind label %3910

3891:                                             ; preds = %3889
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %346) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1447 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1447:                                   ; preds = %3891, %3914
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %347) #6
  store i8 0, ptr %347, align 1, !tbaa !5
  %3892 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %347)
          to label %3893 unwind label %3912

3893:                                             ; preds = %.preheader1447
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %347) #6
  %3894 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %3895 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3895:                                             ; preds = %3893
  %3896 = load i8, ptr %3894, align 1, !tbaa !5, !range !9, !noundef !10
  %3897 = trunc nuw i8 %3896 to i1
  br i1 %3897, label %.invoke2301, label %3914

3898:                                             ; preds = %3869
  %3899 = landingpad { ptr, i32 }
          cleanup
  br label %3902

3900:                                             ; preds = %3872, %3870
  %3901 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %343) #6
  br label %3902

3902:                                             ; preds = %3900, %3898
  %.pn1033 = phi { ptr, i32 } [ %3901, %3900 ], [ %3899, %3898 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %343) #6
  br label %.loopexit.split-lp

3903:                                             ; preds = %3874
  %3904 = landingpad { ptr, i32 }
          cleanup
  br label %3907

3905:                                             ; preds = %3881, %3877, %3875
  %3906 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %344) #6
  br label %3907

3907:                                             ; preds = %3905, %3903
  %.pn1035 = phi { ptr, i32 } [ %3906, %3905 ], [ %3904, %3903 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %344) #6
  br label %.loopexit.split-lp

3908:                                             ; preds = %3887
  %3909 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %345) #6
  br label %.loopexit.split-lp

3910:                                             ; preds = %3889
  %3911 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %346) #6
  br label %.loopexit.split-lp

3912:                                             ; preds = %.preheader1447
  %3913 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %347) #6
  br label %.loopexit.split-lp

3914:                                             ; preds = %3895
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1447 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3915:                                             ; preds = %3865
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %348) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %348, i32 noundef 24)
          to label %3916 unwind label %3937

3916:                                             ; preds = %3915
  %3917 = 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) %348)
          to label %3918 unwind label %3939

3918:                                             ; preds = %3916
  %3919 = 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) %3917)
          to label %3920 unwind label %3939

3920:                                             ; preds = %3918
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %348) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %348) #6
  %3921 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 3)
          to label %3922 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3922:                                             ; preds = %3920
  %3923 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3924 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3924:                                             ; preds = %3922
  %3925 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3926 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3926:                                             ; preds = %3924
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %349) #6
  store i8 0, ptr %349, align 1, !tbaa !5
  %3927 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %349)
          to label %3928 unwind label %3942

3928:                                             ; preds = %3926
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %349) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %350) #6
  store i8 1, ptr %350, align 1, !tbaa !5
  %3929 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %350)
          to label %3930 unwind label %3944

3930:                                             ; preds = %3928
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %350) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1450 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1450:                                   ; preds = %3930, %3948
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %351) #6
  store i8 0, ptr %351, align 1, !tbaa !5
  %3931 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %351)
          to label %3932 unwind label %3946

3932:                                             ; preds = %.preheader1450
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %351) #6
  %3933 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          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

3934:                                             ; preds = %3932
  %3935 = load i8, ptr %3933, align 1, !tbaa !5, !range !9, !noundef !10
  %3936 = trunc nuw i8 %3935 to i1
  br i1 %3936, label %.invoke2301, label %3948

3937:                                             ; preds = %3915
  %3938 = landingpad { ptr, i32 }
          cleanup
  br label %3941

3939:                                             ; preds = %3918, %3916
  %3940 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %348) #6
  br label %3941

3941:                                             ; preds = %3939, %3937
  %.pn1031 = phi { ptr, i32 } [ %3940, %3939 ], [ %3938, %3937 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %348) #6
  br label %.loopexit.split-lp

3942:                                             ; preds = %3926
  %3943 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %349) #6
  br label %.loopexit.split-lp

3944:                                             ; preds = %3928
  %3945 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %350) #6
  br label %.loopexit.split-lp

3946:                                             ; preds = %.preheader1450
  %3947 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %351) #6
  br label %.loopexit.split-lp

3948:                                             ; preds = %3934
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1450 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3949:                                             ; preds = %3865
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %352) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %352, i32 noundef 24)
          to label %3950 unwind label %3971

3950:                                             ; preds = %3949
  %3951 = 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) %352)
          to label %3952 unwind label %3973

3952:                                             ; preds = %3950
  %3953 = 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) %3951)
          to label %3954 unwind label %3973

3954:                                             ; preds = %3952
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %352) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %352) #6
  %3955 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 32)
          to label %3956 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3956:                                             ; preds = %3954
  %3957 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3958 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3958:                                             ; preds = %3956
  %3959 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3960 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

3960:                                             ; preds = %3958
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %353) #6
  store i8 0, ptr %353, align 1, !tbaa !5
  %3961 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %353)
          to label %3962 unwind label %3976

3962:                                             ; preds = %3960
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %353) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %354) #6
  store i8 1, ptr %354, align 1, !tbaa !5
  %3963 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %354)
          to label %3964 unwind label %3978

3964:                                             ; preds = %3962
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %354) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1454 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1454:                                   ; preds = %3964, %3982
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %355) #6
  store i8 0, ptr %355, align 1, !tbaa !5
  %3965 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %355)
          to label %3966 unwind label %3980

3966:                                             ; preds = %.preheader1454
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %355) #6
  %3967 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          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

3968:                                             ; preds = %3966
  %3969 = load i8, ptr %3967, align 1, !tbaa !5, !range !9, !noundef !10
  %3970 = trunc nuw i8 %3969 to i1
  br i1 %3970, label %.invoke2301, label %3982

3971:                                             ; preds = %3949
  %3972 = landingpad { ptr, i32 }
          cleanup
  br label %3975

3973:                                             ; preds = %3952, %3950
  %3974 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %352) #6
  br label %3975

3975:                                             ; preds = %3973, %3971
  %.pn1029 = phi { ptr, i32 } [ %3974, %3973 ], [ %3972, %3971 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %352) #6
  br label %.loopexit.split-lp

3976:                                             ; preds = %3960
  %3977 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %353) #6
  br label %.loopexit.split-lp

3978:                                             ; preds = %3962
  %3979 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %354) #6
  br label %.loopexit.split-lp

3980:                                             ; preds = %.preheader1454
  %3981 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %355) #6
  br label %.loopexit.split-lp

3982:                                             ; preds = %3968
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1454 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

3983:                                             ; preds = %3865
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %356) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %356, i32 noundef 24)
          to label %3984 unwind label %4014

3984:                                             ; preds = %3983
  %3985 = 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) %356)
          to label %3986 unwind label %4016

3986:                                             ; preds = %3984
  %3987 = 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) %3985)
          to label %3988 unwind label %4016

3988:                                             ; preds = %3986
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %356) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %356) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %357) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %357, i32 noundef 0)
          to label %3989 unwind label %4019

3989:                                             ; preds = %3988
  %3990 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1760)
          to label %3991 unwind label %4021

3991:                                             ; preds = %3989
  %3992 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi2EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1761)
          to label %3993 unwind label %4021

3993:                                             ; preds = %3991
  %3994 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %3990, ptr noundef nonnull align 8 dereferenceable(8) %3992)
          to label %3995 unwind label %4021

3995:                                             ; preds = %3993
  %3996 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %357, ptr noundef nonnull align 8 dereferenceable(8) %3994)
          to label %3997 unwind label %4021

3997:                                             ; preds = %3995
  %3998 = 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) %3996)
          to label %3999 unwind label %4021

3999:                                             ; preds = %3997
  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
  %4000 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4001 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4001:                                             ; preds = %3999
  %4002 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %4003 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4003:                                             ; preds = %4001
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %358) #6
  store i8 0, ptr %358, align 1, !tbaa !5
  %4004 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %358)
          to label %4005 unwind label %4024

4005:                                             ; preds = %4003
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %358) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %359) #6
  store i8 1, ptr %359, align 1, !tbaa !5
  %4006 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %359)
          to label %4007 unwind label %4026

4007:                                             ; preds = %4005
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %359) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1457 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1457:                                   ; preds = %4007, %4030
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %360) #6
  store i8 0, ptr %360, align 1, !tbaa !5
  %4008 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %360)
          to label %4009 unwind label %4028

4009:                                             ; preds = %.preheader1457
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %360) #6
  %4010 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          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

4011:                                             ; preds = %4009
  %4012 = load i8, ptr %4010, align 1, !tbaa !5, !range !9, !noundef !10
  %4013 = trunc nuw i8 %4012 to i1
  br i1 %4013, label %.invoke2301, label %4030

4014:                                             ; preds = %3983
  %4015 = landingpad { ptr, i32 }
          cleanup
  br label %4018

4016:                                             ; preds = %3986, %3984
  %4017 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %356) #6
  br label %4018

4018:                                             ; preds = %4016, %4014
  %.pn1025 = phi { ptr, i32 } [ %4017, %4016 ], [ %4015, %4014 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %356) #6
  br label %.loopexit.split-lp

4019:                                             ; preds = %3988
  %4020 = landingpad { ptr, i32 }
          cleanup
  br label %4023

4021:                                             ; preds = %3997, %3995, %3993, %3991, %3989
  %4022 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %357) #6
  br label %4023

4023:                                             ; preds = %4021, %4019
  %.pn1027 = phi { ptr, i32 } [ %4022, %4021 ], [ %4020, %4019 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %357) #6
  br label %.loopexit.split-lp

4024:                                             ; preds = %4003
  %4025 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %358) #6
  br label %.loopexit.split-lp

4026:                                             ; preds = %4005
  %4027 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %359) #6
  br label %.loopexit.split-lp

4028:                                             ; preds = %.preheader1457
  %4029 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %360) #6
  br label %.loopexit.split-lp

4030:                                             ; preds = %4011
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1457 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

4031:                                             ; preds = %3865
  %4032 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 6)
          to label %4033 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4033:                                             ; preds = %4031
  %4034 = 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 %4035 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4035:                                             ; preds = %4033
  %4036 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4034)
  br i1 %4036, label %4037, label %4046

4037:                                             ; preds = %4035
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %361) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %361, i32 noundef 8)
          to label %4038 unwind label %4041

4038:                                             ; preds = %4037
  %4039 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %361)
          to label %4040 unwind label %4043

4040:                                             ; preds = %4038
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %361) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %361) #6
  br label %4055

4041:                                             ; preds = %4037
  %4042 = landingpad { ptr, i32 }
          cleanup
  br label %4045

4043:                                             ; preds = %4038
  %4044 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %361) #6
  br label %4045

4045:                                             ; preds = %4043, %4041
  %.pn1016 = phi { ptr, i32 } [ %4044, %4043 ], [ %4042, %4041 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %361) #6
  br label %.loopexit.split-lp

4046:                                             ; preds = %4035
  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 16)
          to label %4047 unwind label %4050

4047:                                             ; preds = %4046
  %4048 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %362)
          to label %4049 unwind label %4052

4049:                                             ; preds = %4047
  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 %4055

4050:                                             ; preds = %4046
  %4051 = landingpad { ptr, i32 }
          cleanup
  br label %4054

4052:                                             ; preds = %4047
  %4053 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %362) #6
  br label %4054

4054:                                             ; preds = %4052, %4050
  %.pn1014 = phi { ptr, i32 } [ %4053, %4052 ], [ %4051, %4050 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %362) #6
  br label %.loopexit.split-lp

4055:                                             ; preds = %4049, %4040
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %363) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %364) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %364, i32 noundef 24)
          to label %4056 unwind label %4077

4056:                                             ; preds = %4055
  %4057 = 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) %364)
          to label %4058 unwind label %4079

4058:                                             ; preds = %4056
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %363, ptr noundef nonnull align 1 dereferenceable(1) %4057)
          to label %4059 unwind label %4079

4059:                                             ; preds = %4058
  %4060 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %363)
          to label %4061 unwind label %4081

4061:                                             ; preds = %4059
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %363) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %364) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %364) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %363) #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 3)
          to label %4062 unwind label %4085

4062:                                             ; preds = %4061
  %4063 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %365)
          to label %4064 unwind label %4087

4064:                                             ; preds = %4062
  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.start.p0(i64 24, ptr nonnull %366) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %366, i32 noundef 3)
          to label %4065 unwind label %4090

4065:                                             ; preds = %4064
  %4066 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %366)
          to label %4067 unwind label %4092

4067:                                             ; preds = %4065
  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
  %4068 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4069 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4069:                                             ; preds = %4067
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %367) #6
  store i8 1, ptr %367, align 1, !tbaa !5
  %4070 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %367)
          to label %4071 unwind label %4095

4071:                                             ; preds = %4069
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %367) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1461 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1461:                                   ; preds = %4071, %4076
  %4072 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %4073 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

4073:                                             ; preds = %.preheader1461
  %4074 = load i8, ptr %4072, align 1, !tbaa !5, !range !9, !noundef !10
  %4075 = trunc nuw i8 %4074 to i1
  br i1 %4075, label %4097, label %4076

4076:                                             ; preds = %4073
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1461 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

4077:                                             ; preds = %4055
  %4078 = landingpad { ptr, i32 }
          cleanup
  br label %4084

4079:                                             ; preds = %4058, %4056
  %4080 = landingpad { ptr, i32 }
          cleanup
  br label %4083

4081:                                             ; preds = %4059
  %4082 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %363) #6
  br label %4083

4083:                                             ; preds = %4081, %4079
  %.pn1018 = phi { ptr, i32 } [ %4082, %4081 ], [ %4080, %4079 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %364) #6
  br label %4084

4084:                                             ; preds = %4083, %4077
  %.pn1018.pn = phi { ptr, i32 } [ %.pn1018, %4083 ], [ %4078, %4077 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %364) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %363) #6
  br label %.loopexit.split-lp

4085:                                             ; preds = %4061
  %4086 = landingpad { ptr, i32 }
          cleanup
  br label %4089

4087:                                             ; preds = %4062
  %4088 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %365) #6
  br label %4089

4089:                                             ; preds = %4087, %4085
  %.pn1021 = phi { ptr, i32 } [ %4088, %4087 ], [ %4086, %4085 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %365) #6
  br label %.loopexit.split-lp

4090:                                             ; preds = %4064
  %4091 = landingpad { ptr, i32 }
          cleanup
  br label %4094

4092:                                             ; preds = %4065
  %4093 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %366) #6
  br label %4094

4094:                                             ; preds = %4092, %4090
  %.pn1023 = phi { ptr, i32 } [ %4093, %4092 ], [ %4091, %4090 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %366) #6
  br label %.loopexit.split-lp

4095:                                             ; preds = %4069
  %4096 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %367) #6
  br label %.loopexit.split-lp

4097:                                             ; preds = %4073
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4098 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4098:                                             ; preds = %4097
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %368) #6
  store i8 0, ptr %368, align 1, !tbaa !5
  %4099 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %368)
          to label %4100 unwind label %4101

4100:                                             ; preds = %4098
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %368) #6
  br label %.invoke2301

4101:                                             ; preds = %4098
  %4102 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %368) #6
  br label %.loopexit.split-lp

4103:                                             ; preds = %3865
  %4104 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 64)
          to label %4105 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4105:                                             ; preds = %4103
  %4106 = 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 %4107 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4107:                                             ; preds = %4105
  %4108 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4106)
  br i1 %4108, label %4109, label %4118

4109:                                             ; preds = %4107
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %369) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %369, i32 noundef 64)
          to label %4110 unwind label %4113

4110:                                             ; preds = %4109
  %4111 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %369)
          to label %4112 unwind label %4115

4112:                                             ; preds = %4110
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %369) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %369) #6
  br label %4127

4113:                                             ; preds = %4109
  %4114 = landingpad { ptr, i32 }
          cleanup
  br label %4117

4115:                                             ; preds = %4110
  %4116 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %369) #6
  br label %4117

4117:                                             ; preds = %4115, %4113
  %.pn1005 = phi { ptr, i32 } [ %4116, %4115 ], [ %4114, %4113 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %369) #6
  br label %.loopexit.split-lp

4118:                                             ; preds = %4107
  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 96)
          to label %4119 unwind label %4122

4119:                                             ; preds = %4118
  %4120 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %370)
          to label %4121 unwind label %4124

4121:                                             ; preds = %4119
  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 %4127

4122:                                             ; preds = %4118
  %4123 = landingpad { ptr, i32 }
          cleanup
  br label %4126

4124:                                             ; preds = %4119
  %4125 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %370) #6
  br label %4126

4126:                                             ; preds = %4124, %4122
  %.pn1003 = phi { ptr, i32 } [ %4125, %4124 ], [ %4123, %4122 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %370) #6
  br label %.loopexit.split-lp

4127:                                             ; preds = %4121, %4112
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %371) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %372) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %372, i32 noundef 24)
          to label %4128 unwind label %4149

4128:                                             ; preds = %4127
  %4129 = 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) %372)
          to label %4130 unwind label %4151

4130:                                             ; preds = %4128
  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) %4129)
          to label %4131 unwind label %4151

4131:                                             ; preds = %4130
  %4132 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %371)
          to label %4133 unwind label %4153

4133:                                             ; preds = %4131
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %371) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %372) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %372) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %371) #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 32)
          to label %4134 unwind label %4157

4134:                                             ; preds = %4133
  %4135 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %373)
          to label %4136 unwind label %4159

4136:                                             ; preds = %4134
  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.start.p0(i64 24, ptr nonnull %374) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %374, i32 noundef 3)
          to label %4137 unwind label %4162

4137:                                             ; preds = %4136
  %4138 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %374)
          to label %4139 unwind label %4164

4139:                                             ; preds = %4137
  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
  %4140 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4141 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4141:                                             ; preds = %4139
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %375) #6
  store i8 1, ptr %375, align 1, !tbaa !5
  %4142 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %375)
          to label %4143 unwind label %4167

4143:                                             ; preds = %4141
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %375) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1464 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1464:                                   ; preds = %4143, %4148
  %4144 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %4145 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1466

4145:                                             ; preds = %.preheader1464
  %4146 = load i8, ptr %4144, align 1, !tbaa !5, !range !9, !noundef !10
  %4147 = trunc nuw i8 %4146 to i1
  br i1 %4147, label %4169, label %4148

4148:                                             ; preds = %4145
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1464 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1466, !llvm.loop !85

4149:                                             ; preds = %4127
  %4150 = landingpad { ptr, i32 }
          cleanup
  br label %4156

4151:                                             ; preds = %4130, %4128
  %4152 = landingpad { ptr, i32 }
          cleanup
  br label %4155

4153:                                             ; preds = %4131
  %4154 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %371) #6
  br label %4155

4155:                                             ; preds = %4153, %4151
  %.pn1007 = phi { ptr, i32 } [ %4154, %4153 ], [ %4152, %4151 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %372) #6
  br label %4156

4156:                                             ; preds = %4155, %4149
  %.pn1007.pn = phi { ptr, i32 } [ %.pn1007, %4155 ], [ %4150, %4149 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %372) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %371) #6
  br label %.loopexit.split-lp

4157:                                             ; preds = %4133
  %4158 = landingpad { ptr, i32 }
          cleanup
  br label %4161

4159:                                             ; preds = %4134
  %4160 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %373) #6
  br label %4161

4161:                                             ; preds = %4159, %4157
  %.pn1010 = phi { ptr, i32 } [ %4160, %4159 ], [ %4158, %4157 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %373) #6
  br label %.loopexit.split-lp

4162:                                             ; preds = %4136
  %4163 = landingpad { ptr, i32 }
          cleanup
  br label %4166

4164:                                             ; preds = %4137
  %4165 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %374) #6
  br label %4166

4166:                                             ; preds = %4164, %4162
  %.pn1012 = phi { ptr, i32 } [ %4165, %4164 ], [ %4163, %4162 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %374) #6
  br label %.loopexit.split-lp

4167:                                             ; preds = %4141
  %4168 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %375) #6
  br label %.loopexit.split-lp

4169:                                             ; preds = %4145
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4170 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4170:                                             ; preds = %4169
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %376) #6
  store i8 0, ptr %376, align 1, !tbaa !5
  %4171 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %376)
          to label %4172 unwind label %4173

4172:                                             ; preds = %4170
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %376) #6
  br label %.invoke2301

4173:                                             ; preds = %4170
  %4174 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %376) #6
  br label %.loopexit.split-lp

4175:                                             ; preds = %3865
  %4176 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 64)
          to label %4177 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4177:                                             ; preds = %4175
  %4178 = 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 %4179 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4179:                                             ; preds = %4177
  %4180 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4178)
  br i1 %4180, label %4181, label %4190

4181:                                             ; preds = %4179
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %377) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %377, i32 noundef 128)
          to label %4182 unwind label %4185

4182:                                             ; preds = %4181
  %4183 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %377)
          to label %4184 unwind label %4187

4184:                                             ; preds = %4182
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %377) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %377) #6
  br label %4199

4185:                                             ; preds = %4181
  %4186 = landingpad { ptr, i32 }
          cleanup
  br label %4189

4187:                                             ; preds = %4182
  %4188 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %377) #6
  br label %4189

4189:                                             ; preds = %4187, %4185
  %.pn994 = phi { ptr, i32 } [ %4188, %4187 ], [ %4186, %4185 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %377) #6
  br label %.loopexit.split-lp

4190:                                             ; preds = %4179
  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 160)
          to label %4191 unwind label %4194

4191:                                             ; preds = %4190
  %4192 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %378)
          to label %4193 unwind label %4196

4193:                                             ; preds = %4191
  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 %4199

4194:                                             ; preds = %4190
  %4195 = landingpad { ptr, i32 }
          cleanup
  br label %4198

4196:                                             ; preds = %4191
  %4197 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %378) #6
  br label %4198

4198:                                             ; preds = %4196, %4194
  %.pn992 = phi { ptr, i32 } [ %4197, %4196 ], [ %4195, %4194 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %378) #6
  br label %.loopexit.split-lp

4199:                                             ; preds = %4193, %4184
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %379) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %380) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %380, i32 noundef 24)
          to label %4200 unwind label %4221

4200:                                             ; preds = %4199
  %4201 = 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) %380)
          to label %4202 unwind label %4223

4202:                                             ; preds = %4200
  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) %4201)
          to label %4203 unwind label %4223

4203:                                             ; preds = %4202
  %4204 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %379)
          to label %4205 unwind label %4225

4205:                                             ; preds = %4203
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %379) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %380) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %380) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %379) #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 32)
          to label %4206 unwind label %4229

4206:                                             ; preds = %4205
  %4207 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %381)
          to label %4208 unwind label %4231

4208:                                             ; preds = %4206
  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.start.p0(i64 24, ptr nonnull %382) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %382, i32 noundef 3)
          to label %4209 unwind label %4234

4209:                                             ; preds = %4208
  %4210 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %382)
          to label %4211 unwind label %4236

4211:                                             ; preds = %4209
  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
  %4212 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4213 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4213:                                             ; preds = %4211
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %383) #6
  store i8 1, ptr %383, align 1, !tbaa !5
  %4214 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %383)
          to label %4215 unwind label %4239

4215:                                             ; preds = %4213
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %383) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1472 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1472:                                   ; preds = %4215, %4220
  %4216 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %4217 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1474

4217:                                             ; preds = %.preheader1472
  %4218 = load i8, ptr %4216, align 1, !tbaa !5, !range !9, !noundef !10
  %4219 = trunc nuw i8 %4218 to i1
  br i1 %4219, label %4241, label %4220

4220:                                             ; preds = %4217
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1472 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1474, !llvm.loop !86

4221:                                             ; preds = %4199
  %4222 = landingpad { ptr, i32 }
          cleanup
  br label %4228

4223:                                             ; preds = %4202, %4200
  %4224 = landingpad { ptr, i32 }
          cleanup
  br label %4227

4225:                                             ; preds = %4203
  %4226 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %379) #6
  br label %4227

4227:                                             ; preds = %4225, %4223
  %.pn996 = phi { ptr, i32 } [ %4226, %4225 ], [ %4224, %4223 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %380) #6
  br label %4228

4228:                                             ; preds = %4227, %4221
  %.pn996.pn = phi { ptr, i32 } [ %.pn996, %4227 ], [ %4222, %4221 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %380) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %379) #6
  br label %.loopexit.split-lp

4229:                                             ; preds = %4205
  %4230 = landingpad { ptr, i32 }
          cleanup
  br label %4233

4231:                                             ; preds = %4206
  %4232 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %381) #6
  br label %4233

4233:                                             ; preds = %4231, %4229
  %.pn999 = phi { ptr, i32 } [ %4232, %4231 ], [ %4230, %4229 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %381) #6
  br label %.loopexit.split-lp

4234:                                             ; preds = %4208
  %4235 = landingpad { ptr, i32 }
          cleanup
  br label %4238

4236:                                             ; preds = %4209
  %4237 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %382) #6
  br label %4238

4238:                                             ; preds = %4236, %4234
  %.pn1001 = phi { ptr, i32 } [ %4237, %4236 ], [ %4235, %4234 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %382) #6
  br label %.loopexit.split-lp

4239:                                             ; preds = %4213
  %4240 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %383) #6
  br label %.loopexit.split-lp

4241:                                             ; preds = %4217
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4242 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4242:                                             ; preds = %4241
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %384) #6
  store i8 0, ptr %384, align 1, !tbaa !5
  %4243 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %384)
          to label %4244 unwind label %4245

4244:                                             ; preds = %4242
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %384) #6
  br label %.invoke2301

4245:                                             ; preds = %4242
  %4246 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %384) #6
  br label %.loopexit.split-lp

4247:                                             ; preds = %3865
  %4248 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1759)
          to label %4249 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4249:                                             ; preds = %4247
  %4250 = load i8, ptr %4248, align 1, !tbaa !5, !range !9, !noundef !10
  %4251 = trunc nuw i8 %4250 to i1
  br i1 %4251, label %4263, label %4252

4252:                                             ; preds = %4249
  %4253 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 12)
          to label %4254 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4254:                                             ; preds = %4252
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %385) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %385, i32 noundef 6)
          to label %4255 unwind label %4258

4255:                                             ; preds = %4254
  %4256 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %385)
          to label %4257 unwind label %4260

4257:                                             ; preds = %4255
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %385) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %385) #6
  br label %4274

4258:                                             ; preds = %4254
  %4259 = landingpad { ptr, i32 }
          cleanup
  br label %4262

4260:                                             ; preds = %4255
  %4261 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %385) #6
  br label %4262

4262:                                             ; preds = %4260, %4258
  %.pn979 = phi { ptr, i32 } [ %4261, %4260 ], [ %4259, %4258 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %385) #6
  br label %.loopexit.split-lp

4263:                                             ; preds = %4249
  %4264 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 8)
          to label %4265 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4265:                                             ; preds = %4263
  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 4)
          to label %4266 unwind label %4269

4266:                                             ; preds = %4265
  %4267 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %386)
          to label %4268 unwind label %4271

4268:                                             ; preds = %4266
  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 %4274

4269:                                             ; preds = %4265
  %4270 = landingpad { ptr, i32 }
          cleanup
  br label %4273

4271:                                             ; preds = %4266
  %4272 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %386) #6
  br label %4273

4273:                                             ; preds = %4271, %4269
  %.pn981 = phi { ptr, i32 } [ %4272, %4271 ], [ %4270, %4269 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %386) #6
  br label %.loopexit.split-lp

4274:                                             ; preds = %4268, %4257
  %4275 = 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 %4276 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4276:                                             ; preds = %4274
  %4277 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4275)
  br i1 %4277, label %4278, label %4287

4278:                                             ; preds = %4276
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %387) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %387, i32 noundef 32)
          to label %4279 unwind label %4282

4279:                                             ; preds = %4278
  %4280 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %387)
          to label %4281 unwind label %4284

4281:                                             ; preds = %4279
  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 %4296

4282:                                             ; preds = %4278
  %4283 = landingpad { ptr, i32 }
          cleanup
  br label %4286

4284:                                             ; preds = %4279
  %4285 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %387) #6
  br label %4286

4286:                                             ; preds = %4284, %4282
  %.pn985 = phi { ptr, i32 } [ %4285, %4284 ], [ %4283, %4282 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %387) #6
  br label %.loopexit.split-lp

4287:                                             ; preds = %4276
  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 48)
          to label %4288 unwind label %4291

4288:                                             ; preds = %4287
  %4289 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %388)
          to label %4290 unwind label %4293

4290:                                             ; preds = %4288
  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 %4296

4291:                                             ; preds = %4287
  %4292 = landingpad { ptr, i32 }
          cleanup
  br label %4295

4293:                                             ; preds = %4288
  %4294 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %388) #6
  br label %4295

4295:                                             ; preds = %4293, %4291
  %.pn983 = phi { ptr, i32 } [ %4294, %4293 ], [ %4292, %4291 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %388) #6
  br label %.loopexit.split-lp

4296:                                             ; preds = %4290, %4281
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %389) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %390) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %390, i32 noundef 24)
          to label %4297 unwind label %4315

4297:                                             ; preds = %4296
  %4298 = 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) %390)
          to label %4299 unwind label %4317

4299:                                             ; preds = %4297
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %389, ptr noundef nonnull align 1 dereferenceable(1) %4298)
          to label %4300 unwind label %4317

4300:                                             ; preds = %4299
  %4301 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %389)
          to label %4302 unwind label %4319

4302:                                             ; preds = %4300
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %389) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %390) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %390) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %389) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %391) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %391, i32 noundef 3)
          to label %4303 unwind label %4323

4303:                                             ; preds = %4302
  %4304 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %391)
          to label %4305 unwind label %4325

4305:                                             ; preds = %4303
  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
  %4306 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4307 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4307:                                             ; preds = %4305
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %392) #6
  store i8 1, ptr %392, align 1, !tbaa !5
  %4308 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %392)
          to label %4309 unwind label %4328

4309:                                             ; preds = %4307
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %392) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1479 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1479:                                   ; preds = %4309, %4314
  %4310 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %4311 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1481

4311:                                             ; preds = %.preheader1479
  %4312 = load i8, ptr %4310, align 1, !tbaa !5, !range !9, !noundef !10
  %4313 = trunc nuw i8 %4312 to i1
  br i1 %4313, label %4330, label %4314

4314:                                             ; preds = %4311
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1479 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1481, !llvm.loop !87

4315:                                             ; preds = %4296
  %4316 = landingpad { ptr, i32 }
          cleanup
  br label %4322

4317:                                             ; preds = %4299, %4297
  %4318 = landingpad { ptr, i32 }
          cleanup
  br label %4321

4319:                                             ; preds = %4300
  %4320 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %389) #6
  br label %4321

4321:                                             ; preds = %4319, %4317
  %.pn987 = phi { ptr, i32 } [ %4320, %4319 ], [ %4318, %4317 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %390) #6
  br label %4322

4322:                                             ; preds = %4321, %4315
  %.pn987.pn = phi { ptr, i32 } [ %.pn987, %4321 ], [ %4316, %4315 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %390) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %389) #6
  br label %.loopexit.split-lp

4323:                                             ; preds = %4302
  %4324 = landingpad { ptr, i32 }
          cleanup
  br label %4327

4325:                                             ; preds = %4303
  %4326 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %391) #6
  br label %4327

4327:                                             ; preds = %4325, %4323
  %.pn990 = phi { ptr, i32 } [ %4326, %4325 ], [ %4324, %4323 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %391) #6
  br label %.loopexit.split-lp

4328:                                             ; preds = %4307
  %4329 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %392) #6
  br label %.loopexit.split-lp

4330:                                             ; preds = %4311
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4331 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4331:                                             ; preds = %4330
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %393) #6
  store i8 0, ptr %393, align 1, !tbaa !5
  %4332 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %393)
          to label %4333 unwind label %4334

4333:                                             ; preds = %4331
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %393) #6
  br label %.invoke2301

4334:                                             ; preds = %4331
  %4335 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %393) #6
  br label %.loopexit.split-lp

4336:                                             ; preds = %3865
  %4337 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 2)
          to label %4338 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4338:                                             ; preds = %4336
  %4339 = 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 %4340 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4340:                                             ; preds = %4338
  %4341 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4339)
  br i1 %4341, label %4342, label %4351

4342:                                             ; preds = %4340
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %394) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %394, i32 noundef 2)
          to label %4343 unwind label %4346

4343:                                             ; preds = %4342
  %4344 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %394)
          to label %4345 unwind label %4348

4345:                                             ; preds = %4343
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %394) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %394) #6
  br label %4360

4346:                                             ; preds = %4342
  %4347 = landingpad { ptr, i32 }
          cleanup
  br label %4350

4348:                                             ; preds = %4343
  %4349 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %394) #6
  br label %4350

4350:                                             ; preds = %4348, %4346
  %.pn970 = phi { ptr, i32 } [ %4349, %4348 ], [ %4347, %4346 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %394) #6
  br label %.loopexit.split-lp

4351:                                             ; preds = %4340
  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 4)
          to label %4352 unwind label %4355

4352:                                             ; preds = %4351
  %4353 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %395)
          to label %4354 unwind label %4357

4354:                                             ; preds = %4352
  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 %4360

4355:                                             ; preds = %4351
  %4356 = landingpad { ptr, i32 }
          cleanup
  br label %4359

4357:                                             ; preds = %4352
  %4358 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %395) #6
  br label %4359

4359:                                             ; preds = %4357, %4355
  %.pn968 = phi { ptr, i32 } [ %4358, %4357 ], [ %4356, %4355 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %395) #6
  br label %.loopexit.split-lp

4360:                                             ; preds = %4354, %4345
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %396) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %397) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %397, i32 noundef 24)
          to label %4361 unwind label %4382

4361:                                             ; preds = %4360
  %4362 = 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) %397)
          to label %4363 unwind label %4384

4363:                                             ; preds = %4361
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %396, ptr noundef nonnull align 1 dereferenceable(1) %4362)
          to label %4364 unwind label %4384

4364:                                             ; preds = %4363
  %4365 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %396)
          to label %4366 unwind label %4386

4366:                                             ; preds = %4364
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %396) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %397) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %397) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %396) #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 1)
          to label %4367 unwind label %4390

4367:                                             ; preds = %4366
  %4368 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %398)
          to label %4369 unwind label %4392

4369:                                             ; preds = %4367
  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.start.p0(i64 24, ptr nonnull %399) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %399, i32 noundef 3)
          to label %4370 unwind label %4395

4370:                                             ; preds = %4369
  %4371 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %399)
          to label %4372 unwind label %4397

4372:                                             ; preds = %4370
  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
  %4373 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4374 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4374:                                             ; preds = %4372
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %400) #6
  store i8 1, ptr %400, align 1, !tbaa !5
  %4375 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %400)
          to label %4376 unwind label %4400

4376:                                             ; preds = %4374
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %400) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1487 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1487:                                   ; preds = %4376, %4381
  %4377 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %4378 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1489

4378:                                             ; preds = %.preheader1487
  %4379 = load i8, ptr %4377, align 1, !tbaa !5, !range !9, !noundef !10
  %4380 = trunc nuw i8 %4379 to i1
  br i1 %4380, label %4402, label %4381

4381:                                             ; preds = %4378
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1487 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1489, !llvm.loop !88

4382:                                             ; preds = %4360
  %4383 = landingpad { ptr, i32 }
          cleanup
  br label %4389

4384:                                             ; preds = %4363, %4361
  %4385 = landingpad { ptr, i32 }
          cleanup
  br label %4388

4386:                                             ; preds = %4364
  %4387 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %396) #6
  br label %4388

4388:                                             ; preds = %4386, %4384
  %.pn972 = phi { ptr, i32 } [ %4387, %4386 ], [ %4385, %4384 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %397) #6
  br label %4389

4389:                                             ; preds = %4388, %4382
  %.pn972.pn = phi { ptr, i32 } [ %.pn972, %4388 ], [ %4383, %4382 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %397) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %396) #6
  br label %.loopexit.split-lp

4390:                                             ; preds = %4366
  %4391 = landingpad { ptr, i32 }
          cleanup
  br label %4394

4392:                                             ; preds = %4367
  %4393 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %398) #6
  br label %4394

4394:                                             ; preds = %4392, %4390
  %.pn975 = phi { ptr, i32 } [ %4393, %4392 ], [ %4391, %4390 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %398) #6
  br label %.loopexit.split-lp

4395:                                             ; preds = %4369
  %4396 = landingpad { ptr, i32 }
          cleanup
  br label %4399

4397:                                             ; preds = %4370
  %4398 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %399) #6
  br label %4399

4399:                                             ; preds = %4397, %4395
  %.pn977 = phi { ptr, i32 } [ %4398, %4397 ], [ %4396, %4395 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %399) #6
  br label %.loopexit.split-lp

4400:                                             ; preds = %4374
  %4401 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %400) #6
  br label %.loopexit.split-lp

4402:                                             ; preds = %4378
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4403 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4403:                                             ; preds = %4402
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %401) #6
  store i8 0, ptr %401, align 1, !tbaa !5
  %4404 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %401)
          to label %4405 unwind label %4406

4405:                                             ; preds = %4403
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %401) #6
  br label %.invoke2301

4406:                                             ; preds = %4403
  %4407 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %401) #6
  br label %.loopexit.split-lp

4408:                                             ; preds = %3865
  %4409 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 8)
          to label %4410 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4410:                                             ; preds = %4408
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %402) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %402, i32 noundef 20)
          to label %4411 unwind label %4435

4411:                                             ; preds = %4410
  %4412 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %402)
          to label %4413 unwind label %4437

4413:                                             ; preds = %4411
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %402) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %402) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %403) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %404) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %404, i32 noundef 24)
          to label %4414 unwind label %4440

4414:                                             ; preds = %4413
  %4415 = 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) %404)
          to label %4416 unwind label %4442

4416:                                             ; preds = %4414
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %403, ptr noundef nonnull align 1 dereferenceable(1) %4415)
          to label %4417 unwind label %4442

4417:                                             ; preds = %4416
  %4418 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %403)
          to label %4419 unwind label %4444

4419:                                             ; preds = %4417
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %403) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %404) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %404) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %403) #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 4)
          to label %4420 unwind label %4448

4420:                                             ; preds = %4419
  %4421 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %405)
          to label %4422 unwind label %4450

4422:                                             ; preds = %4420
  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.start.p0(i64 24, ptr nonnull %406) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %406, i32 noundef 3)
          to label %4423 unwind label %4453

4423:                                             ; preds = %4422
  %4424 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %406)
          to label %4425 unwind label %4455

4425:                                             ; preds = %4423
  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
  %4426 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4427 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4427:                                             ; preds = %4425
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %407) #6
  store i8 1, ptr %407, align 1, !tbaa !5
  %4428 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %407)
          to label %4429 unwind label %4458

4429:                                             ; preds = %4427
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %407) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1494 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1494:                                   ; preds = %4429, %4434
  %4430 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %4431 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1496

4431:                                             ; preds = %.preheader1494
  %4432 = load i8, ptr %4430, align 1, !tbaa !5, !range !9, !noundef !10
  %4433 = trunc nuw i8 %4432 to i1
  br i1 %4433, label %4460, label %4434

4434:                                             ; preds = %4431
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1494 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1496, !llvm.loop !89

4435:                                             ; preds = %4410
  %4436 = landingpad { ptr, i32 }
          cleanup
  br label %4439

4437:                                             ; preds = %4411
  %4438 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %402) #6
  br label %4439

4439:                                             ; preds = %4437, %4435
  %.pn959 = phi { ptr, i32 } [ %4438, %4437 ], [ %4436, %4435 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %402) #6
  br label %.loopexit.split-lp

4440:                                             ; preds = %4413
  %4441 = landingpad { ptr, i32 }
          cleanup
  br label %4447

4442:                                             ; preds = %4416, %4414
  %4443 = landingpad { ptr, i32 }
          cleanup
  br label %4446

4444:                                             ; preds = %4417
  %4445 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %403) #6
  br label %4446

4446:                                             ; preds = %4444, %4442
  %.pn961 = phi { ptr, i32 } [ %4445, %4444 ], [ %4443, %4442 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %404) #6
  br label %4447

4447:                                             ; preds = %4446, %4440
  %.pn961.pn = phi { ptr, i32 } [ %.pn961, %4446 ], [ %4441, %4440 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %404) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %403) #6
  br label %.loopexit.split-lp

4448:                                             ; preds = %4419
  %4449 = landingpad { ptr, i32 }
          cleanup
  br label %4452

4450:                                             ; preds = %4420
  %4451 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %405) #6
  br label %4452

4452:                                             ; preds = %4450, %4448
  %.pn964 = phi { ptr, i32 } [ %4451, %4450 ], [ %4449, %4448 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %405) #6
  br label %.loopexit.split-lp

4453:                                             ; preds = %4422
  %4454 = landingpad { ptr, i32 }
          cleanup
  br label %4457

4455:                                             ; preds = %4423
  %4456 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %406) #6
  br label %4457

4457:                                             ; preds = %4455, %4453
  %.pn966 = phi { ptr, i32 } [ %4456, %4455 ], [ %4454, %4453 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %406) #6
  br label %.loopexit.split-lp

4458:                                             ; preds = %4427
  %4459 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %407) #6
  br label %.loopexit.split-lp

4460:                                             ; preds = %4431
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4461 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4461:                                             ; preds = %4460
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %408) #6
  store i8 0, ptr %408, align 1, !tbaa !5
  %4462 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %408)
          to label %4463 unwind label %4464

4463:                                             ; preds = %4461
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %408) #6
  br label %.invoke2301

4464:                                             ; preds = %4461
  %4465 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %408) #6
  br label %.loopexit.split-lp

4466:                                             ; preds = %3865
  %4467 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 2)
          to label %4468 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4468:                                             ; preds = %4466
  %4469 = 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 %.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.sp1930

.invoke2302:                                      ; preds = %4468
  %4470 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4469)
  %not. = xor i1 %4470, true
  %.2312 = zext i1 %not. to i32
  %4471 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef %.2312)
          to label %4472 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4472:                                             ; preds = %.invoke2302
  %4473 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %7)
          to label %4474 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4474:                                             ; preds = %4472
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %409) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %410) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %410, i32 noundef 24)
          to label %4475 unwind label %4496

4475:                                             ; preds = %4474
  %4476 = 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) %410)
          to label %4477 unwind label %4498

4477:                                             ; preds = %4475
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %409, ptr noundef nonnull align 1 dereferenceable(1) %4476)
          to label %4478 unwind label %4498

4478:                                             ; preds = %4477
  %4479 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %409)
          to label %4480 unwind label %4500

4480:                                             ; preds = %4478
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %409) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %410) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %410) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %409) #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 1)
          to label %4481 unwind label %4504

4481:                                             ; preds = %4480
  %4482 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %411)
          to label %4483 unwind label %4506

4483:                                             ; preds = %4481
  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.start.p0(i64 24, ptr nonnull %412) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %412, i32 noundef 3)
          to label %4484 unwind label %4509

4484:                                             ; preds = %4483
  %4485 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %412)
          to label %4486 unwind label %4511

4486:                                             ; preds = %4484
  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
  %4487 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4488 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4488:                                             ; preds = %4486
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %413) #6
  store i8 1, ptr %413, align 1, !tbaa !5
  %4489 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %413)
          to label %4490 unwind label %4514

4490:                                             ; preds = %4488
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %413) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1509 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1509:                                   ; preds = %4490, %4495
  %4491 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %4492 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1511

4492:                                             ; preds = %.preheader1509
  %4493 = load i8, ptr %4491, align 1, !tbaa !5, !range !9, !noundef !10
  %4494 = trunc nuw i8 %4493 to i1
  br i1 %4494, label %4516, label %4495

4495:                                             ; preds = %4492
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1509 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1511, !llvm.loop !90

4496:                                             ; preds = %4474
  %4497 = landingpad { ptr, i32 }
          cleanup
  br label %4503

4498:                                             ; preds = %4477, %4475
  %4499 = landingpad { ptr, i32 }
          cleanup
  br label %4502

4500:                                             ; preds = %4478
  %4501 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %409) #6
  br label %4502

4502:                                             ; preds = %4500, %4498
  %.pn952 = phi { ptr, i32 } [ %4501, %4500 ], [ %4499, %4498 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %410) #6
  br label %4503

4503:                                             ; preds = %4502, %4496
  %.pn952.pn = phi { ptr, i32 } [ %.pn952, %4502 ], [ %4497, %4496 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %410) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %409) #6
  br label %.loopexit.split-lp

4504:                                             ; preds = %4480
  %4505 = landingpad { ptr, i32 }
          cleanup
  br label %4508

4506:                                             ; preds = %4481
  %4507 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %411) #6
  br label %4508

4508:                                             ; preds = %4506, %4504
  %.pn955 = phi { ptr, i32 } [ %4507, %4506 ], [ %4505, %4504 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %411) #6
  br label %.loopexit.split-lp

4509:                                             ; preds = %4483
  %4510 = landingpad { ptr, i32 }
          cleanup
  br label %4513

4511:                                             ; preds = %4484
  %4512 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %412) #6
  br label %4513

4513:                                             ; preds = %4511, %4509
  %.pn957 = phi { ptr, i32 } [ %4512, %4511 ], [ %4510, %4509 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %412) #6
  br label %.loopexit.split-lp

4514:                                             ; preds = %4488
  %4515 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %413) #6
  br label %.loopexit.split-lp

4516:                                             ; preds = %4492
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4517 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4517:                                             ; preds = %4516
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %414) #6
  store i8 0, ptr %414, align 1, !tbaa !5
  %4518 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %414)
          to label %4519 unwind label %4538

4519:                                             ; preds = %4517
  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 %4520 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4520:                                             ; preds = %4519
  %4521 = 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)
  %4522 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %4523 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4523:                                             ; preds = %4520
  %4524 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp1930

4525:                                             ; preds = %4523
  %4526 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %4527 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4527:                                             ; preds = %4525
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %415) #6
  store i8 0, ptr %415, align 1, !tbaa !5
  %4528 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %415)
          to label %4529 unwind label %4540

4529:                                             ; preds = %4527
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %415) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %416) #6
  store i8 1, ptr %416, align 1, !tbaa !5
  %4530 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %416)
          to label %4531 unwind label %4542

4531:                                             ; preds = %4529
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %416) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1502 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1502:                                   ; preds = %4531, %4546
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %417) #6
  store i8 0, ptr %417, align 1, !tbaa !5
  %4532 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %417)
          to label %4533 unwind label %4544

4533:                                             ; preds = %.preheader1502
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %417) #6
  %4534 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          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.sp1504

4535:                                             ; preds = %4533
  %4536 = load i8, ptr %4534, align 1, !tbaa !5, !range !9, !noundef !10
  %4537 = trunc nuw i8 %4536 to i1
  br i1 %4537, label %.invoke2301, label %4546

.invoke2301:                                      ; preds = %4535, %4011, %3968, %3934, %3895, %4100, %4172, %4244, %4333, %4405, %4463
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4927 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4538:                                             ; preds = %4517
  %4539 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %414) #6
  br label %.loopexit.split-lp

4540:                                             ; preds = %4527
  %4541 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %415) #6
  br label %.loopexit.split-lp

4542:                                             ; preds = %4529
  %4543 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %416) #6
  br label %.loopexit.split-lp

4544:                                             ; preds = %.preheader1502
  %4545 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %417) #6
  br label %.loopexit.split-lp

4546:                                             ; preds = %4535
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1502 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1504, !llvm.loop !91

4547:                                             ; preds = %3865
  %4548 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %16, i32 noundef 0)
          to label %4549 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4549:                                             ; preds = %4547
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %418) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %418, i32 noundef 11)
          to label %4550 unwind label %4573

4550:                                             ; preds = %4549
  %4551 = 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) %418)
          to label %4552 unwind label %4575

4552:                                             ; preds = %4550
  %4553 = 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) %4551)
          to label %4554 unwind label %4575

4554:                                             ; preds = %4552
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %418) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %418) #6
  %4555 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4556 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4556:                                             ; preds = %4554
  %4557 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4558 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4558:                                             ; preds = %4556
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %419) #6
  store i8 1, ptr %419, align 1, !tbaa !5
  %4559 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %419)
          to label %4560 unwind label %4578

4560:                                             ; preds = %4558
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %419) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %420) #6
  store i8 1, ptr %420, align 1, !tbaa !5
  %4561 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %420)
          to label %4562 unwind label %4580

4562:                                             ; preds = %4560
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %420) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1554 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1554:                                   ; preds = %4562, %4584
  %4563 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          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.sp1556

4564:                                             ; preds = %.preheader1554
  %4565 = 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) %4563)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %421) #6
  store i8 0, ptr %421, align 1, !tbaa !5
  %4566 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %421)
          to label %4567 unwind label %4582

4567:                                             ; preds = %4564
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %421) #6
  %4568 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %4569 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1556

4569:                                             ; preds = %4567
  %4570 = load i8, ptr %4568, align 1, !tbaa !5, !range !9, !noundef !10
  %4571 = trunc nuw i8 %4570 to i1
  br i1 %4571, label %4572, label %4584

4572:                                             ; preds = %4569
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4585 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4573:                                             ; preds = %4549
  %4574 = landingpad { ptr, i32 }
          cleanup
  br label %4577

4575:                                             ; preds = %4552, %4550
  %4576 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %418) #6
  br label %4577

4577:                                             ; preds = %4575, %4573
  %.pn932 = phi { ptr, i32 } [ %4576, %4575 ], [ %4574, %4573 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %418) #6
  br label %.loopexit.split-lp

4578:                                             ; preds = %4558
  %4579 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %419) #6
  br label %.loopexit.split-lp

4580:                                             ; preds = %4560
  %4581 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %420) #6
  br label %.loopexit.split-lp

4582:                                             ; preds = %4564
  %4583 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %421) #6
  br label %.loopexit.split-lp

4584:                                             ; preds = %4569
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1554 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1556, !llvm.loop !92

4585:                                             ; preds = %4572
  %4586 = 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 %4587 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4587:                                             ; preds = %4585
  %4588 = 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) %4586)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %422) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %422, i32 noundef 24)
          to label %4589 unwind label %4617

4589:                                             ; preds = %4587
  %4590 = 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) %422)
          to label %4591 unwind label %4619

4591:                                             ; preds = %4589
  %4592 = 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) %4590)
          to label %4593 unwind label %4619

4593:                                             ; preds = %4591
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %422) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %422) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %423) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %423, i32 noundef 13)
          to label %4594 unwind label %4622

4594:                                             ; preds = %4593
  %4595 = 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 %4596 unwind label %4624

4596:                                             ; preds = %4594
  %4597 = 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) %4595)
          to label %4598 unwind label %4624

4598:                                             ; preds = %4596
  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
  %4599 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4600 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4600:                                             ; preds = %4598
  %4601 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4602 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4602:                                             ; preds = %4600
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %424) #6
  store i8 1, ptr %424, align 1, !tbaa !5
  %4603 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %424)
          to label %4604 unwind label %4627

4604:                                             ; preds = %4602
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %424) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %425) #6
  store i8 1, ptr %425, align 1, !tbaa !5
  %4605 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %425)
          to label %4606 unwind label %4629

4606:                                             ; preds = %4604
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %425) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1547 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1547:                                   ; preds = %4606, %4633
  %4607 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          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.sp1549

4608:                                             ; preds = %.preheader1547
  %4609 = 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) %4607)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %426) #6
  store i8 0, ptr %426, align 1, !tbaa !5
  %4610 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %426)
          to label %4611 unwind label %4631

4611:                                             ; preds = %4608
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %426) #6
  %4612 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %4613 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1549

4613:                                             ; preds = %4611
  %4614 = load i8, ptr %4612, align 1, !tbaa !5, !range !9, !noundef !10
  %4615 = trunc nuw i8 %4614 to i1
  br i1 %4615, label %4616, label %4633

4616:                                             ; preds = %4613
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4634 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4617:                                             ; preds = %4587
  %4618 = landingpad { ptr, i32 }
          cleanup
  br label %4621

4619:                                             ; preds = %4591, %4589
  %4620 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %422) #6
  br label %4621

4621:                                             ; preds = %4619, %4617
  %.pn934 = phi { ptr, i32 } [ %4620, %4619 ], [ %4618, %4617 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %422) #6
  br label %.loopexit.split-lp

4622:                                             ; preds = %4593
  %4623 = landingpad { ptr, i32 }
          cleanup
  br label %4626

4624:                                             ; preds = %4596, %4594
  %4625 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %423) #6
  br label %4626

4626:                                             ; preds = %4624, %4622
  %.pn936 = phi { ptr, i32 } [ %4625, %4624 ], [ %4623, %4622 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %423) #6
  br label %.loopexit.split-lp

4627:                                             ; preds = %4602
  %4628 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %424) #6
  br label %.loopexit.split-lp

4629:                                             ; preds = %4604
  %4630 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %425) #6
  br label %.loopexit.split-lp

4631:                                             ; preds = %4608
  %4632 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %426) #6
  br label %.loopexit.split-lp

4633:                                             ; preds = %4613
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1547 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1549, !llvm.loop !93

4634:                                             ; preds = %4616
  %4635 = 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 %4636 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4636:                                             ; preds = %4634
  %4637 = 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) %4635)
  %4638 = 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 %4639 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4639:                                             ; preds = %4636
  %4640 = 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) %4638)
  %4641 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef -48)
          to label %.preheader1539 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1539:                                   ; preds = %4639
  %4642 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %4643 = icmp slt i64 %4642, 2
  br i1 %4643, label %._crit_edge2195, label %.lr.ph2194

._crit_edge2195:                                  ; preds = %4803, %.preheader1539
  %.021.lcssa = phi i1 [ false, %.preheader1539 ], [ %.122, %4803 ]
  %4644 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %16, i32 noundef 0)
          to label %4645 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4645:                                             ; preds = %._crit_edge2195
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4812 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.lr.ph2194:                                       ; preds = %.preheader1539, %4803
  %.0202193 = phi i1 [ false, %4803 ], [ true, %.preheader1539 ]
  %.0212192 = phi i1 [ %.122, %4803 ], [ false, %.preheader1539 ]
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4646 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4646:                                             ; preds = %.lr.ph2194
  %4647 = 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 %4647, label %4648, label %4656

4648:                                             ; preds = %4646
  %4649 = 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 %4650 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4650:                                             ; preds = %4648
  %4651 = 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) %4649)
          to label %4652 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4652:                                             ; preds = %4650
  %4653 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %4654 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %4)
  %4655 = sub nsw i64 %4653, %4654
  br label %4663

4656:                                             ; preds = %4646
  %4657 = 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 %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.sp1541

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.sp1541

4660:                                             ; preds = %4658
  %4661 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %4662 = and i64 %4661, 1
  br label %4663

4663:                                             ; preds = %4660, %4652
  %.sink = phi i64 [ %4662, %4660 ], [ %4655, %4652 ]
  %4664 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %.sink)
  %4665 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %7)
          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.sp1541

4666:                                             ; preds = %4663
  %4667 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %8)
          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.sp1541

4668:                                             ; preds = %4666
  %4669 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %4670 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4670:                                             ; preds = %4668
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %427) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %427, i32 noundef 3)
          to label %4671 unwind label %4683

4671:                                             ; preds = %4670
  %4672 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %427)
          to label %4673 unwind label %4685

4673:                                             ; preds = %4671
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %427) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %427) #6
  %4674 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4675 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4675:                                             ; preds = %4673
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %428) #6
  store i8 1, ptr %428, align 1, !tbaa !5
  %4676 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %428)
          to label %4677 unwind label %4688

4677:                                             ; preds = %4675
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %428) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1271 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

.preheader1271:                                   ; preds = %4677, %4682
  %4678 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %4679 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit

4679:                                             ; preds = %.preheader1271
  %4680 = load i8, ptr %4678, align 1, !tbaa !5, !range !9, !noundef !10
  %4681 = trunc nuw i8 %4680 to i1
  br i1 %4681, label %4690, label %4682

4682:                                             ; preds = %4679
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1271 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !94

4683:                                             ; preds = %4670
  %4684 = landingpad { ptr, i32 }
          cleanup
  br label %4687

4685:                                             ; preds = %4671
  %4686 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %427) #6
  br label %4687

4687:                                             ; preds = %4685, %4683
  %.pn938 = phi { ptr, i32 } [ %4686, %4685 ], [ %4684, %4683 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %427) #6
  br label %.loopexit.split-lp

4688:                                             ; preds = %4675
  %4689 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %428) #6
  br label %.loopexit.split-lp

4690:                                             ; preds = %4679
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4691 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4691:                                             ; preds = %4690
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %429) #6
  store i8 0, ptr %429, align 1, !tbaa !5
  %4692 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %429)
          to label %4693 unwind label %4696

4693:                                             ; preds = %4691
  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 %4694 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4694:                                             ; preds = %4693
  br i1 %4647, label %4698, label %4695

4695:                                             ; preds = %4694
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4812 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4696:                                             ; preds = %4691
  %4697 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %429) #6
  br label %.loopexit.split-lp

4698:                                             ; preds = %4694
  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.sp1541

4699:                                             ; preds = %4698
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %430) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %430, i32 noundef -8192)
          to label %4700 unwind label %4719

4700:                                             ; preds = %4699
  %4701 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %430)
          to label %4702 unwind label %4721

4702:                                             ; preds = %4700
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %430) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %430) #6
  %4703 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4704 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4704:                                             ; preds = %4702
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %431) #6
  store i8 1, ptr %431, align 1, !tbaa !5
  %4705 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %431)
          to label %4706 unwind label %4724

4706:                                             ; preds = %4704
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %431) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %432) #6
  store i8 1, ptr %432, align 1, !tbaa !5
  %4707 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %432)
          to label %4708 unwind label %4726

4708:                                             ; preds = %4706
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %432) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1267 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

.preheader1267:                                   ; preds = %4708, %4730
  %4709 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %4710 unwind label %.loopexit.split-lp.loopexit

4710:                                             ; preds = %.preheader1267
  %4711 = 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) %4709)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %433) #6
  store i8 0, ptr %433, align 1, !tbaa !5
  %4712 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %433)
          to label %4713 unwind label %4728

4713:                                             ; preds = %4710
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %433) #6
  %4714 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %4715 unwind label %.loopexit.split-lp.loopexit

4715:                                             ; preds = %4713
  %4716 = load i8, ptr %4714, align 1, !tbaa !5, !range !9, !noundef !10
  %4717 = trunc nuw i8 %4716 to i1
  br i1 %4717, label %4718, label %4730

4718:                                             ; preds = %4715
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4731 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4719:                                             ; preds = %4699
  %4720 = landingpad { ptr, i32 }
          cleanup
  br label %4723

4721:                                             ; preds = %4700
  %4722 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %430) #6
  br label %4723

4723:                                             ; preds = %4721, %4719
  %.pn940 = phi { ptr, i32 } [ %4722, %4721 ], [ %4720, %4719 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %430) #6
  br label %.loopexit.split-lp

4724:                                             ; preds = %4704
  %4725 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %431) #6
  br label %.loopexit.split-lp

4726:                                             ; preds = %4706
  %4727 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %432) #6
  br label %.loopexit.split-lp

4728:                                             ; preds = %4710
  %4729 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %433) #6
  br label %.loopexit.split-lp

4730:                                             ; preds = %4715
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1267 unwind label %.loopexit.split-lp.loopexit, !llvm.loop !95

4731:                                             ; preds = %4718
  br i1 %.0202193, label %4732, label %4739

4732:                                             ; preds = %4731
  %4733 = 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 %4734 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4734:                                             ; preds = %4732
  %4735 = 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) %4733)
          to label %4736 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4736:                                             ; preds = %4734
  %4737 = 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)
  %4738 = 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 %4787 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4739:                                             ; preds = %4731
  %4740 = 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)
  %4741 = 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 %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.sp1541

4742:                                             ; preds = %4739
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %434) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %434, i32 noundef 2)
          to label %4743 unwind label %4770

4743:                                             ; preds = %4742
  %4744 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %4741, ptr noundef nonnull align 8 dereferenceable(8) %434)
          to label %4745 unwind label %4772

4745:                                             ; preds = %4743
  %4746 = 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) %4744)
          to label %4747 unwind label %4772

4747:                                             ; preds = %4745
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %434) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %434) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %435) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %435, i32 noundef -4)
          to label %4748 unwind label %4775

4748:                                             ; preds = %4747
  %4749 = 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 %4750 unwind label %4777

4750:                                             ; preds = %4748
  %4751 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %435, ptr noundef nonnull align 8 dereferenceable(8) %4749)
          to label %4752 unwind label %4777

4752:                                             ; preds = %4750
  %4753 = 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) %4751)
          to label %4754 unwind label %4777

4754:                                             ; preds = %4752
  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
  %4755 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4756 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4756:                                             ; preds = %4754
  %4757 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %4758 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4758:                                             ; preds = %4756
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %436) #6
  store i8 0, ptr %436, align 1, !tbaa !5
  %4759 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %436)
          to label %4760 unwind label %4780

4760:                                             ; preds = %4758
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %436) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %437) #6
  store i8 1, ptr %437, align 1, !tbaa !5
  %4761 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %437)
          to label %4762 unwind label %4782

4762:                                             ; preds = %4760
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %437) #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.sp1541

.preheader:                                       ; preds = %4762, %4786
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %438) #6
  store i8 0, ptr %438, align 1, !tbaa !5
  %4763 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %438)
          to label %4764 unwind label %4784

4764:                                             ; preds = %.preheader
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %438) #6
  %4765 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %4766 unwind label %.loopexit

4766:                                             ; preds = %4764
  %4767 = load i8, ptr %4765, align 1, !tbaa !5, !range !9, !noundef !10
  %4768 = trunc nuw i8 %4767 to i1
  br i1 %4768, label %4769, label %4786

4769:                                             ; preds = %4766
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4787 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4770:                                             ; preds = %4742
  %4771 = landingpad { ptr, i32 }
          cleanup
  br label %4774

4772:                                             ; preds = %4745, %4743
  %4773 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %434) #6
  br label %4774

4774:                                             ; preds = %4772, %4770
  %.pn942 = phi { ptr, i32 } [ %4773, %4772 ], [ %4771, %4770 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %434) #6
  br label %.loopexit.split-lp

4775:                                             ; preds = %4747
  %4776 = landingpad { ptr, i32 }
          cleanup
  br label %4779

4777:                                             ; preds = %4752, %4750, %4748
  %4778 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %435) #6
  br label %4779

4779:                                             ; preds = %4777, %4775
  %.pn944 = phi { ptr, i32 } [ %4778, %4777 ], [ %4776, %4775 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %435) #6
  br label %.loopexit.split-lp

4780:                                             ; preds = %4758
  %4781 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %436) #6
  br label %.loopexit.split-lp

4782:                                             ; preds = %4760
  %4783 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %437) #6
  br label %.loopexit.split-lp

4784:                                             ; preds = %.preheader
  %4785 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %438) #6
  br label %.loopexit.split-lp

4786:                                             ; preds = %4766
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader unwind label %.loopexit, !llvm.loop !96

4787:                                             ; preds = %4769, %4736
  %.122 = phi i1 [ true, %4736 ], [ %.0212192, %4769 ]
  %4788 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef -16)
          to label %4789 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4789:                                             ; preds = %4787
  %4790 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %7)
  %4791 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
  %4792 = add nsw i64 %4791, %4790
  %4793 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %7, i64 noundef %4792)
          to label %4794 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4794:                                             ; preds = %4789
  %4795 = 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 %4796 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4796:                                             ; preds = %4794
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %439) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %439, i32 noundef 8)
          to label %4797 unwind label %4807

4797:                                             ; preds = %4796
  %4798 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %4795, ptr noundef nonnull align 8 dereferenceable(8) %439)
          to label %4799 unwind label %4809

4799:                                             ; preds = %4797
  %4800 = 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) %4798)
          to label %4801 unwind label %4809

4801:                                             ; preds = %4799
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %439) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %439) #6
  %4802 = 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 %4803 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541

4803:                                             ; preds = %4801
  %4804 = 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) %4802)
  %4805 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %4806 = icmp slt i64 %4805, 2
  br i1 %4806, label %._crit_edge2195, label %.lr.ph2194, !llvm.loop !97

4807:                                             ; preds = %4796
  %4808 = landingpad { ptr, i32 }
          cleanup
  br label %4811

4809:                                             ; preds = %4799, %4797
  %4810 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %439) #6
  br label %4811

4811:                                             ; preds = %4809, %4807
  %.pn946 = phi { ptr, i32 } [ %4810, %4809 ], [ %4808, %4807 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %439) #6
  br label %.loopexit.split-lp

4812:                                             ; preds = %4695, %4645
  %.0212157 = phi i1 [ %.0212192, %4695 ], [ %.021.lcssa, %4645 ]
  %.0202133 = phi i1 [ %.0202193, %4695 ], [ %4643, %4645 ]
  %4813 = 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 %4814 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4814:                                             ; preds = %4812
  %4815 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4813)
  br i1 %4815, label %.invoke2300, label %4816

4816:                                             ; preds = %4814
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4817 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4817:                                             ; preds = %4816
  %4818 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %7)
  %4819 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
  %4820 = add nsw i64 %4819, %4818
  %4821 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %5, i64 noundef %4820)
          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.sp1930

4822:                                             ; preds = %4817
  %4823 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4824 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4824:                                             ; preds = %4822
  %4825 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4826 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4826:                                             ; preds = %4824
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %440) #6
  store i8 1, ptr %440, align 1, !tbaa !5
  %4827 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %440)
          to label %4828 unwind label %4841

4828:                                             ; preds = %4826
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %440) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %441) #6
  store i8 1, ptr %441, align 1, !tbaa !5
  %4829 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %441)
          to label %4830 unwind label %4843

4830:                                             ; preds = %4828
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %441) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1532 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1532:                                   ; preds = %4830, %4847
  %4831 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          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.sp1534

4832:                                             ; preds = %.preheader1532
  %4833 = 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) %4831)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %442) #6
  store i8 0, ptr %442, align 1, !tbaa !5
  %4834 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %442)
          to label %4835 unwind label %4845

4835:                                             ; preds = %4832
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %442) #6
  %4836 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %4837 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1534

4837:                                             ; preds = %4835
  %4838 = load i8, ptr %4836, align 1, !tbaa !5, !range !9, !noundef !10
  %4839 = trunc nuw i8 %4838 to i1
  br i1 %4839, label %4840, label %4847

4840:                                             ; preds = %4837
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4848 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4841:                                             ; preds = %4826
  %4842 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %440) #6
  br label %.loopexit.split-lp

4843:                                             ; preds = %4828
  %4844 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %441) #6
  br label %.loopexit.split-lp

4845:                                             ; preds = %4832
  %4846 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %442) #6
  br label %.loopexit.split-lp

4847:                                             ; preds = %4837
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1532 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1534, !llvm.loop !98

4848:                                             ; preds = %4840
  %4849 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %8)
  %4850 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
  %4851 = add nsw i64 %4850, %4849
  %4852 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %5, i64 noundef %4851)
          to label %4853 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4853:                                             ; preds = %4848
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %443) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %443, i32 noundef 0)
          to label %4854 unwind label %4875

4854:                                             ; preds = %4853
  %4855 = 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 %4856 unwind label %4877

4856:                                             ; preds = %4854
  %4857 = 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) %4855)
          to label %4858 unwind label %4877

4858:                                             ; preds = %4856
  %4859 = 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) %4857)
          to label %4860 unwind label %4877

4860:                                             ; preds = %4858
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %443) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %443) #6
  %4861 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4862 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4862:                                             ; preds = %4860
  %4863 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %4864 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4864:                                             ; preds = %4862
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %444) #6
  store i8 0, ptr %444, align 1, !tbaa !5
  %4865 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %444)
          to label %4866 unwind label %4880

4866:                                             ; preds = %4864
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %444) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %445) #6
  store i8 1, ptr %445, align 1, !tbaa !5
  %4867 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %445)
          to label %4868 unwind label %4882

4868:                                             ; preds = %4866
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %445) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1524 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1524:                                   ; preds = %4868, %4886
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %446) #6
  store i8 0, ptr %446, align 1, !tbaa !5
  %4869 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %446)
          to label %4870 unwind label %4884

4870:                                             ; preds = %.preheader1524
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %446) #6
  %4871 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          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.sp1526

4872:                                             ; preds = %4870
  %4873 = load i8, ptr %4871, align 1, !tbaa !5, !range !9, !noundef !10
  %4874 = trunc nuw i8 %4873 to i1
  br i1 %4874, label %.invoke2300, label %4886

.invoke2300:                                      ; preds = %4872, %4814
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4887 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4875:                                             ; preds = %4853
  %4876 = landingpad { ptr, i32 }
          cleanup
  br label %4879

4877:                                             ; preds = %4858, %4856, %4854
  %4878 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %443) #6
  br label %4879

4879:                                             ; preds = %4877, %4875
  %.pn948 = phi { ptr, i32 } [ %4878, %4877 ], [ %4876, %4875 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %443) #6
  br label %.loopexit.split-lp

4880:                                             ; preds = %4864
  %4881 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %444) #6
  br label %.loopexit.split-lp

4882:                                             ; preds = %4866
  %4883 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %445) #6
  br label %.loopexit.split-lp

4884:                                             ; preds = %.preheader1524
  %4885 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %446) #6
  br label %.loopexit.split-lp

4886:                                             ; preds = %4872
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1524 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1526, !llvm.loop !99

4887:                                             ; preds = %.invoke2300
  br i1 %.0202133, label %.invoke2299, label %4888

4888:                                             ; preds = %4887
  %4889 = 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 %4890 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4890:                                             ; preds = %4888
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %447) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %447, i32 noundef 2)
          to label %4891 unwind label %4912

4891:                                             ; preds = %4890
  %4892 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %4889, ptr noundef nonnull align 8 dereferenceable(8) %447)
          to label %4893 unwind label %4914

4893:                                             ; preds = %4891
  %4894 = 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) %4892)
          to label %4895 unwind label %4914

4895:                                             ; preds = %4893
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %447) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %447) #6
  %4896 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %4897 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4897:                                             ; preds = %4895
  %4898 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4899 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4899:                                             ; preds = %4897
  %4900 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %4901 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4901:                                             ; preds = %4899
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %448) #6
  store i8 0, ptr %448, align 1, !tbaa !5
  %4902 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %448)
          to label %4903 unwind label %4917

4903:                                             ; preds = %4901
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %448) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %449) #6
  store i8 1, ptr %449, align 1, !tbaa !5
  %4904 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %449)
          to label %4905 unwind label %4919

4905:                                             ; preds = %4903
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %449) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1517 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1517:                                   ; preds = %4905, %4923
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %450) #6
  store i8 0, ptr %450, align 1, !tbaa !5
  %4906 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %450)
          to label %4907 unwind label %4921

4907:                                             ; preds = %.preheader1517
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %450) #6
  %4908 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          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.sp1519

4909:                                             ; preds = %4907
  %4910 = load i8, ptr %4908, align 1, !tbaa !5, !range !9, !noundef !10
  %4911 = trunc nuw i8 %4910 to i1
  br i1 %4911, label %.invoke2299, label %4923

4912:                                             ; preds = %4890
  %4913 = landingpad { ptr, i32 }
          cleanup
  br label %4916

4914:                                             ; preds = %4893, %4891
  %4915 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %447) #6
  br label %4916

4916:                                             ; preds = %4914, %4912
  %.pn950 = phi { ptr, i32 } [ %4915, %4914 ], [ %4913, %4912 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %447) #6
  br label %.loopexit.split-lp

4917:                                             ; preds = %4901
  %4918 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %448) #6
  br label %.loopexit.split-lp

4919:                                             ; preds = %4903
  %4920 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %449) #6
  br label %.loopexit.split-lp

4921:                                             ; preds = %.preheader1517
  %4922 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %450) #6
  br label %.loopexit.split-lp

4923:                                             ; preds = %4909
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1517 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1519, !llvm.loop !100

.invoke2299:                                      ; preds = %4909, %4887
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4927 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4924:                                             ; preds = %3865
  %4925 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef -3)
          to label %4926 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4926:                                             ; preds = %4924
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.invoke2294 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4927:                                             ; preds = %.invoke2301, %.invoke2299
  %.223.ph = phi i1 [ %.0212157, %.invoke2299 ], [ false, %.invoke2301 ]
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4928 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4928:                                             ; preds = %4927
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %451) #6
  %4929 = 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 %4930 unwind label %4958

4930:                                             ; preds = %4928
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %451, ptr noundef nonnull align 1 dereferenceable(1) %4929)
          to label %4931 unwind label %4958

4931:                                             ; preds = %4930
  %4932 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %451)
          to label %4933 unwind label %4960

4933:                                             ; preds = %4931
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %451) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %451) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %452) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %453) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %453, i32 noundef 0)
          to label %4934 unwind label %4963

4934:                                             ; preds = %4933
  %4935 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %453, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %4936 unwind label %4965

4936:                                             ; preds = %4934
  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) %4935)
          to label %4937 unwind label %4965

4937:                                             ; preds = %4936
  %4938 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %452)
          to label %4939 unwind label %4967

4939:                                             ; preds = %4937
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %452) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %453) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %453) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %452) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %454) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %455) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %455, i32 noundef 0)
          to label %4940 unwind label %4971

4940:                                             ; preds = %4939
  %4941 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %455, ptr noundef nonnull align 8 dereferenceable(8) %11)
          to label %4942 unwind label %4973

4942:                                             ; preds = %4940
  %4943 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8) %4941, i1 noundef zeroext %.223.ph)
          to label %4944 unwind label %4973

4944:                                             ; preds = %4942
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %454, 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_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %454)
          to label %4947 unwind label %4975

4947:                                             ; preds = %4945
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %454) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %455) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %455) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %454) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %456) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %456, i32 noundef -3)
          to label %4948 unwind label %4979

4948:                                             ; preds = %4947
  %4949 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %456)
          to label %4950 unwind label %4981

4950:                                             ; preds = %4948
  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.start.p0(i64 1, ptr nonnull %457) #6
  store i8 1, ptr %457, align 1, !tbaa !5
  %4951 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %457)
          to label %4952 unwind label %4984

4952:                                             ; preds = %4950
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %457) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1443 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1443:                                   ; preds = %4952, %4957
  %4953 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %4954 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

4954:                                             ; preds = %.preheader1443
  %4955 = load i8, ptr %4953, align 1, !tbaa !5, !range !9, !noundef !10
  %4956 = trunc nuw i8 %4955 to i1
  br i1 %4956, label %4986, label %4957

4957:                                             ; preds = %4954
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1443 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

4958:                                             ; preds = %4930, %4928
  %4959 = landingpad { ptr, i32 }
          cleanup
  br label %4962

4960:                                             ; preds = %4931
  %4961 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %451) #6
  br label %4962

4962:                                             ; preds = %4960, %4958
  %.pn1037 = phi { ptr, i32 } [ %4961, %4960 ], [ %4959, %4958 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %451) #6
  br label %.loopexit.split-lp

4963:                                             ; preds = %4933
  %4964 = landingpad { ptr, i32 }
          cleanup
  br label %4970

4965:                                             ; preds = %4936, %4934
  %4966 = landingpad { ptr, i32 }
          cleanup
  br label %4969

4967:                                             ; preds = %4937
  %4968 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %452) #6
  br label %4969

4969:                                             ; preds = %4967, %4965
  %.pn1039 = phi { ptr, i32 } [ %4968, %4967 ], [ %4966, %4965 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %453) #6
  br label %4970

4970:                                             ; preds = %4969, %4963
  %.pn1039.pn = phi { ptr, i32 } [ %.pn1039, %4969 ], [ %4964, %4963 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %453) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %452) #6
  br label %.loopexit.split-lp

4971:                                             ; preds = %4939
  %4972 = landingpad { ptr, i32 }
          cleanup
  br label %4978

4973:                                             ; preds = %4944, %4942, %4940
  %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) %454) #6
  br label %4977

4977:                                             ; preds = %4975, %4973
  %.pn1042 = phi { ptr, i32 } [ %4976, %4975 ], [ %4974, %4973 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %455) #6
  br label %4978

4978:                                             ; preds = %4977, %4971
  %.pn1042.pn = phi { ptr, i32 } [ %.pn1042, %4977 ], [ %4972, %4971 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %455) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %454) #6
  br label %.loopexit.split-lp

4979:                                             ; preds = %4947
  %4980 = landingpad { ptr, i32 }
          cleanup
  br label %4983

4981:                                             ; preds = %4948
  %4982 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %456) #6
  br label %4983

4983:                                             ; preds = %4981, %4979
  %.pn1045 = phi { ptr, i32 } [ %4982, %4981 ], [ %4980, %4979 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %456) #6
  br label %.loopexit.split-lp

4984:                                             ; preds = %4950
  %4985 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %457) #6
  br label %.loopexit.split-lp

4986:                                             ; preds = %4954
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4987 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4987:                                             ; preds = %4986
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %458) #6
  store i8 0, ptr %458, align 1, !tbaa !5
  %4988 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %458)
          to label %4989 unwind label %5015

4989:                                             ; preds = %4987
  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 %4990 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

4990:                                             ; preds = %4989
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %459) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %460) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %460, i32 noundef 9)
          to label %4991 unwind label %5017

4991:                                             ; preds = %4990
  %4992 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %460, ptr noundef nonnull align 8 dereferenceable(8) %19)
          to label %4993 unwind label %5019

4993:                                             ; preds = %4991
  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) %4992)
          to label %4994 unwind label %5019

4994:                                             ; preds = %4993
  %4995 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %459)
          to label %4996 unwind label %5021

4996:                                             ; preds = %4994
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %459) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %460) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %460) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %459) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %461) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %462) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %462, i32 noundef 0)
          to label %4997 unwind label %5025

4997:                                             ; preds = %4996
  %4998 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %462, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %4999 unwind label %5027

4999:                                             ; preds = %4997
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %461, ptr noundef nonnull align 1 dereferenceable(1) %4998)
          to label %5000 unwind label %5027

5000:                                             ; preds = %4999
  %5001 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %461)
          to label %5002 unwind label %5029

5002:                                             ; preds = %5000
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %461) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %462) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %462) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %461) #6
  %5003 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %5004 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5004:                                             ; preds = %5002
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %463) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %463, i32 noundef -2)
          to label %5005 unwind label %5033

5005:                                             ; preds = %5004
  %5006 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %463)
          to label %5007 unwind label %5035

5007:                                             ; preds = %5005
  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.start.p0(i64 1, ptr nonnull %464) #6
  store i8 1, ptr %464, align 1, !tbaa !5
  %5008 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %464)
          to label %5009 unwind label %5038

5009:                                             ; preds = %5007
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %464) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1440 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1440:                                   ; preds = %5009, %5014
  %5010 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %5011 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5011:                                             ; preds = %.preheader1440
  %5012 = load i8, ptr %5010, align 1, !tbaa !5, !range !9, !noundef !10
  %5013 = trunc nuw i8 %5012 to i1
  br i1 %5013, label %5040, label %5014

5014:                                             ; preds = %5011
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1440 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

5015:                                             ; preds = %4987
  %5016 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %458) #6
  br label %.loopexit.split-lp

5017:                                             ; preds = %4990
  %5018 = landingpad { ptr, i32 }
          cleanup
  br label %5024

5019:                                             ; preds = %4993, %4991
  %5020 = landingpad { ptr, i32 }
          cleanup
  br label %5023

5021:                                             ; preds = %4994
  %5022 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %459) #6
  br label %5023

5023:                                             ; preds = %5021, %5019
  %.pn1047 = phi { ptr, i32 } [ %5022, %5021 ], [ %5020, %5019 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %460) #6
  br label %5024

5024:                                             ; preds = %5023, %5017
  %.pn1047.pn = phi { ptr, i32 } [ %.pn1047, %5023 ], [ %5018, %5017 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %460) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %459) #6
  br label %.loopexit.split-lp

5025:                                             ; preds = %4996
  %5026 = landingpad { ptr, i32 }
          cleanup
  br label %5032

5027:                                             ; preds = %4999, %4997
  %5028 = landingpad { ptr, i32 }
          cleanup
  br label %5031

5029:                                             ; preds = %5000
  %5030 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %461) #6
  br label %5031

5031:                                             ; preds = %5029, %5027
  %.pn1050 = phi { ptr, i32 } [ %5030, %5029 ], [ %5028, %5027 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %462) #6
  br label %5032

5032:                                             ; preds = %5031, %5025
  %.pn1050.pn = phi { ptr, i32 } [ %.pn1050, %5031 ], [ %5026, %5025 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %462) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %461) #6
  br label %.loopexit.split-lp

5033:                                             ; preds = %5004
  %5034 = landingpad { ptr, i32 }
          cleanup
  br label %5037

5035:                                             ; preds = %5005
  %5036 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %463) #6
  br label %5037

5037:                                             ; preds = %5035, %5033
  %.pn1053 = phi { ptr, i32 } [ %5036, %5035 ], [ %5034, %5033 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %463) #6
  br label %.loopexit.split-lp

5038:                                             ; preds = %5007
  %5039 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %464) #6
  br label %.loopexit.split-lp

5040:                                             ; preds = %5011
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5041 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5041:                                             ; preds = %5040
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %465) #6
  store i8 0, ptr %465, align 1, !tbaa !5
  %5042 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %465)
          to label %5043 unwind label %5065

5043:                                             ; preds = %5041
  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 %5044 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5044:                                             ; preds = %5043
  %5045 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %5046 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5046:                                             ; preds = %5044
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %466) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %467) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %467, i32 noundef 0)
          to label %5047 unwind label %5067

5047:                                             ; preds = %5046
  %5048 = 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) %467)
          to label %5049 unwind label %5069

5049:                                             ; preds = %5047
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %466, ptr noundef nonnull align 1 dereferenceable(1) %5048)
          to label %5050 unwind label %5069

5050:                                             ; preds = %5049
  %5051 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %466)
          to label %5052 unwind label %5071

5052:                                             ; preds = %5050
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %466) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %467) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %467) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %466) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %468) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %468, i32 noundef 1)
          to label %5053 unwind label %5075

5053:                                             ; preds = %5052
  %5054 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %468)
          to label %5055 unwind label %5077

5055:                                             ; preds = %5053
  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
  %5056 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5057 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5057:                                             ; preds = %5055
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %469) #6
  store i8 1, ptr %469, align 1, !tbaa !5
  %5058 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %469)
          to label %5059 unwind label %5080

5059:                                             ; preds = %5057
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %469) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1436 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1436:                                   ; preds = %5059, %5064
  %5060 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %5061 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5061:                                             ; preds = %.preheader1436
  %5062 = load i8, ptr %5060, align 1, !tbaa !5, !range !9, !noundef !10
  %5063 = trunc nuw i8 %5062 to i1
  br i1 %5063, label %5082, label %5064

5064:                                             ; preds = %5061
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1436 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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

5065:                                             ; preds = %5041
  %5066 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %465) #6
  br label %.loopexit.split-lp

5067:                                             ; preds = %5046
  %5068 = landingpad { ptr, i32 }
          cleanup
  br label %5074

5069:                                             ; preds = %5049, %5047
  %5070 = landingpad { ptr, i32 }
          cleanup
  br label %5073

5071:                                             ; preds = %5050
  %5072 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %466) #6
  br label %5073

5073:                                             ; preds = %5071, %5069
  %.pn1055 = phi { ptr, i32 } [ %5072, %5071 ], [ %5070, %5069 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %467) #6
  br label %5074

5074:                                             ; preds = %5073, %5067
  %.pn1055.pn = phi { ptr, i32 } [ %.pn1055, %5073 ], [ %5068, %5067 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %467) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %466) #6
  br label %.loopexit.split-lp

5075:                                             ; preds = %5052
  %5076 = landingpad { ptr, i32 }
          cleanup
  br label %5079

5077:                                             ; preds = %5053
  %5078 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %468) #6
  br label %5079

5079:                                             ; preds = %5077, %5075
  %.pn1058 = phi { ptr, i32 } [ %5078, %5077 ], [ %5076, %5075 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %468) #6
  br label %.loopexit.split-lp

5080:                                             ; preds = %5057
  %5081 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %469) #6
  br label %.loopexit.split-lp

5082:                                             ; preds = %5061
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5083 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5083:                                             ; preds = %5082
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %470) #6
  store i8 0, ptr %470, align 1, !tbaa !5
  %5084 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %470)
          to label %5085 unwind label %5086

5085:                                             ; preds = %5083
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %470) #6
  br label %.invoke2295

5086:                                             ; preds = %5083
  %5087 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %470) #6
  br label %.loopexit.split-lp

5088:                                             ; preds = %2017
  %5089 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not832 = icmp eq i64 %5089, 3
  br i1 %.not832, label %5090, label %.invoke2315

5090:                                             ; preds = %5088
  %5091 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %5092 = icmp eq i64 %5091, 0
  br i1 %5092, label %.invoke2315, label %5093

5093:                                             ; preds = %5090
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5094 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5094:                                             ; preds = %5093
  %5095 = 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 %471) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %471, i32 noundef 1)
          to label %5096 unwind label %5119

5096:                                             ; preds = %5094
  %5097 = 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) %471)
          to label %5098 unwind label %5121

5098:                                             ; preds = %5096
  %5099 = 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) %5097)
          to label %5100 unwind label %5121

5100:                                             ; preds = %5098
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %471) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %471) #6
  %5101 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp1930

5102:                                             ; preds = %5100
  %5103 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5104 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5104:                                             ; preds = %5102
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %472) #6
  store i8 1, ptr %472, align 1, !tbaa !5
  %5105 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %472)
          to label %5106 unwind label %5124

5106:                                             ; preds = %5104
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %472) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %473) #6
  store i8 1, ptr %473, align 1, !tbaa !5
  %5107 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %473)
          to label %5108 unwind label %5126

5108:                                             ; preds = %5106
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %473) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1673 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1673:                                   ; preds = %5108, %5130
  %5109 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          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.sp1675

5110:                                             ; preds = %.preheader1673
  %5111 = 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) %5109)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %474) #6
  store i8 0, ptr %474, align 1, !tbaa !5
  %5112 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %474)
          to label %5113 unwind label %5128

5113:                                             ; preds = %5110
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %474) #6
  %5114 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %5115 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1675

5115:                                             ; preds = %5113
  %5116 = load i8, ptr %5114, align 1, !tbaa !5, !range !9, !noundef !10
  %5117 = trunc nuw i8 %5116 to i1
  br i1 %5117, label %5118, label %5130

5118:                                             ; preds = %5115
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5131 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5119:                                             ; preds = %5094
  %5120 = landingpad { ptr, i32 }
          cleanup
  br label %5123

5121:                                             ; preds = %5098, %5096
  %5122 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %471) #6
  br label %5123

5123:                                             ; preds = %5121, %5119
  %.pn833 = phi { ptr, i32 } [ %5122, %5121 ], [ %5120, %5119 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %471) #6
  br label %.loopexit.split-lp

5124:                                             ; preds = %5104
  %5125 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %472) #6
  br label %.loopexit.split-lp

5126:                                             ; preds = %5106
  %5127 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %473) #6
  br label %.loopexit.split-lp

5128:                                             ; preds = %5110
  %5129 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %474) #6
  br label %.loopexit.split-lp

5130:                                             ; preds = %5115
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1673 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1675, !llvm.loop !104

5131:                                             ; preds = %5118
  %5132 = 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 %5133 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5133:                                             ; preds = %5131
  %5134 = 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) %5132)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %475) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %475, i32 noundef 10)
          to label %5135 unwind label %5158

5135:                                             ; preds = %5133
  %5136 = 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) %475)
          to label %5137 unwind label %5160

5137:                                             ; preds = %5135
  %5138 = 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) %5136)
          to label %5139 unwind label %5160

5139:                                             ; preds = %5137
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %475) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %475) #6
  %5140 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp1930

5141:                                             ; preds = %5139
  %5142 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5143 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5143:                                             ; preds = %5141
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %476) #6
  store i8 1, ptr %476, align 1, !tbaa !5
  %5144 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %476)
          to label %5145 unwind label %5163

5145:                                             ; preds = %5143
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %476) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %477) #6
  store i8 1, ptr %477, align 1, !tbaa !5
  %5146 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %477)
          to label %5147 unwind label %5165

5147:                                             ; preds = %5145
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %477) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1666 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1666:                                   ; preds = %5147, %5169
  %5148 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          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.sp1668

5149:                                             ; preds = %.preheader1666
  %5150 = 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) %5148)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %478) #6
  store i8 0, ptr %478, align 1, !tbaa !5
  %5151 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %478)
          to label %5152 unwind label %5167

5152:                                             ; preds = %5149
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %478) #6
  %5153 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %5154 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1668

5154:                                             ; preds = %5152
  %5155 = load i8, ptr %5153, align 1, !tbaa !5, !range !9, !noundef !10
  %5156 = trunc nuw i8 %5155 to i1
  br i1 %5156, label %5157, label %5169

5157:                                             ; preds = %5154
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5170 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5158:                                             ; preds = %5133
  %5159 = landingpad { ptr, i32 }
          cleanup
  br label %5162

5160:                                             ; preds = %5137, %5135
  %5161 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %475) #6
  br label %5162

5162:                                             ; preds = %5160, %5158
  %.pn835 = phi { ptr, i32 } [ %5161, %5160 ], [ %5159, %5158 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %475) #6
  br label %.loopexit.split-lp

5163:                                             ; preds = %5143
  %5164 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %476) #6
  br label %.loopexit.split-lp

5165:                                             ; preds = %5145
  %5166 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %477) #6
  br label %.loopexit.split-lp

5167:                                             ; preds = %5149
  %5168 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %478) #6
  br label %.loopexit.split-lp

5169:                                             ; preds = %5154
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1666 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1668, !llvm.loop !105

5170:                                             ; preds = %5157
  %5171 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1756)
          to label %5172 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5172:                                             ; preds = %5170
  %5173 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %5171, i32 noundef 3)
          to label %5174 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5174:                                             ; preds = %5172
  %5175 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5173)
          to label %5176 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5176:                                             ; preds = %5174
  %.not837 = icmp eq i64 %5175, 0
  br i1 %.not837, label %5179, label %5177

5177:                                             ; preds = %5176
  %5178 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 4096)
          to label %5181 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5179:                                             ; preds = %5176
  %5180 = 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 %5181

5181:                                             ; preds = %5177, %5179
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.sp1930

5182:                                             ; preds = %5181
  %5183 = 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)
  %5184 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %31)
  %5185 = trunc i64 %5184 to i32
  switch i32 %5185, label %.invoke2315 [
    i32 4, label %5186
    i32 5, label %5320
    i32 6, label %5393
    i32 7, label %5466
    i32 8, label %5566
    i32 9, label %5621
    i32 -1, label %5679
  ]

5186:                                             ; preds = %5182
  %5187 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not914 = icmp eq i64 %5187, 6
  br i1 %.not914, label %5188, label %.invoke2315

5188:                                             ; preds = %5186
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %479) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %479, i32 noundef 24)
          to label %5189 unwind label %5212

5189:                                             ; preds = %5188
  %5190 = 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) %479)
          to label %5191 unwind label %5214

5191:                                             ; preds = %5189
  %5192 = 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) %5190)
          to label %5193 unwind label %5214

5193:                                             ; preds = %5191
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %479) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %479) #6
  %5194 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5195 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5195:                                             ; preds = %5193
  %5196 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5197 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5197:                                             ; preds = %5195
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %480) #6
  store i8 1, ptr %480, align 1, !tbaa !5
  %5198 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %480)
          to label %5199 unwind label %5217

5199:                                             ; preds = %5197
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %480) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %481) #6
  store i8 1, ptr %481, align 1, !tbaa !5
  %5200 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %481)
          to label %5201 unwind label %5219

5201:                                             ; preds = %5199
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %481) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1584 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1584:                                   ; preds = %5201, %5223
  %5202 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          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.sp1586

5203:                                             ; preds = %.preheader1584
  %5204 = 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) %5202)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %482) #6
  store i8 0, ptr %482, align 1, !tbaa !5
  %5205 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %482)
          to label %5206 unwind label %5221

5206:                                             ; preds = %5203
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %482) #6
  %5207 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %5208 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1586

5208:                                             ; preds = %5206
  %5209 = load i8, ptr %5207, align 1, !tbaa !5, !range !9, !noundef !10
  %5210 = trunc nuw i8 %5209 to i1
  br i1 %5210, label %5211, label %5223

5211:                                             ; preds = %5208
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5224 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5212:                                             ; preds = %5188
  %5213 = landingpad { ptr, i32 }
          cleanup
  br label %5216

5214:                                             ; preds = %5191, %5189
  %5215 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %479) #6
  br label %5216

5216:                                             ; preds = %5214, %5212
  %.pn915 = phi { ptr, i32 } [ %5215, %5214 ], [ %5213, %5212 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %479) #6
  br label %.loopexit.split-lp

5217:                                             ; preds = %5197
  %5218 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %480) #6
  br label %.loopexit.split-lp

5219:                                             ; preds = %5199
  %5220 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %481) #6
  br label %.loopexit.split-lp

5221:                                             ; preds = %5203
  %5222 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %482) #6
  br label %.loopexit.split-lp

5223:                                             ; preds = %5208
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1584 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1586, !llvm.loop !106

5224:                                             ; preds = %5211
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %483) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %483, i32 noundef 1)
          to label %5225 unwind label %5238

5225:                                             ; preds = %5224
  %5226 = 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 %5227 unwind label %5240

5227:                                             ; preds = %5225
  %5228 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %483, ptr noundef nonnull align 8 dereferenceable(8) %5226)
          to label %5229 unwind label %5240

5229:                                             ; preds = %5227
  %5230 = 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) %5228)
          to label %5231 unwind label %5240

5231:                                             ; preds = %5229
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %483) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %483) #6
  %5232 = 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 %5233 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5233:                                             ; preds = %5231
  %5234 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5232)
          to label %5235 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5235:                                             ; preds = %5233
  %.not919 = icmp eq i64 %5234, 0
  br i1 %.not919, label %5243, label %5236

5236:                                             ; preds = %5235
  %5237 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 8)
          to label %.invoke2298 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5238:                                             ; preds = %5224
  %5239 = landingpad { ptr, i32 }
          cleanup
  br label %5242

5240:                                             ; preds = %5229, %5227, %5225
  %5241 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %483) #6
  br label %5242

5242:                                             ; preds = %5240, %5238
  %.pn917 = phi { ptr, i32 } [ %5241, %5240 ], [ %5239, %5238 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %483) #6
  br label %.loopexit.split-lp

5243:                                             ; preds = %5235
  %5244 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 16)
          to label %.invoke2298 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.invoke2298:                                      ; preds = %5243, %5236
  %5245 = phi i32 [ 9, %5236 ], [ 17, %5243 ]
  %5246 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef %5245)
          to label %5247 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5247:                                             ; preds = %.invoke2298
  %5248 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5249 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5249:                                             ; preds = %5247
  %5250 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %5251 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5251:                                             ; preds = %5249
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %484) #6
  store i8 0, ptr %484, align 1, !tbaa !5
  %5252 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %484)
          to label %5253 unwind label %5263

5253:                                             ; preds = %5251
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %484) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %485) #6
  store i8 1, ptr %485, align 1, !tbaa !5
  %5254 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %485)
          to label %5255 unwind label %5265

5255:                                             ; preds = %5253
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %485) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1577 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1577:                                   ; preds = %5255, %5269
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %486) #6
  store i8 0, ptr %486, align 1, !tbaa !5
  %5256 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %486)
          to label %5257 unwind label %5267

5257:                                             ; preds = %.preheader1577
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %486) #6
  %5258 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          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.sp1579

5259:                                             ; preds = %5257
  %5260 = load i8, ptr %5258, align 1, !tbaa !5, !range !9, !noundef !10
  %5261 = trunc nuw i8 %5260 to i1
  br i1 %5261, label %5262, label %5269

5262:                                             ; preds = %5259
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5270 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5263:                                             ; preds = %5251
  %5264 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %484) #6
  br label %.loopexit.split-lp

5265:                                             ; preds = %5253
  %5266 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %485) #6
  br label %.loopexit.split-lp

5267:                                             ; preds = %.preheader1577
  %5268 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %486) #6
  br label %.loopexit.split-lp

5269:                                             ; preds = %5259
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1577 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1579, !llvm.loop !107

5270:                                             ; preds = %5262
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %487) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %488) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %488, i32 noundef 25)
          to label %5271 unwind label %5294

5271:                                             ; preds = %5270
  %5272 = 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) %488)
          to label %5273 unwind label %5296

5273:                                             ; preds = %5271
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %487, ptr noundef nonnull align 1 dereferenceable(1) %5272)
          to label %5274 unwind label %5296

5274:                                             ; preds = %5273
  %5275 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %487)
          to label %5276 unwind label %5298

5276:                                             ; preds = %5274
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %487) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %488) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %488) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %487) #6
  %5277 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %6)
          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.sp1930

5278:                                             ; preds = %5276
  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 2)
          to label %5279 unwind label %5302

5279:                                             ; preds = %5278
  %5280 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %489)
          to label %5281 unwind label %5304

5281:                                             ; preds = %5279
  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.start.p0(i64 24, ptr nonnull %490) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %490, i32 noundef 3)
          to label %5282 unwind label %5307

5282:                                             ; preds = %5281
  %5283 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %490)
          to label %5284 unwind label %5309

5284:                                             ; preds = %5282
  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
  %5285 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          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.sp1930

5286:                                             ; preds = %5284
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %491) #6
  store i8 1, ptr %491, align 1, !tbaa !5
  %5287 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %491)
          to label %5288 unwind label %5312

5288:                                             ; preds = %5286
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %491) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1569 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1569:                                   ; preds = %5288, %5293
  %5289 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %5290 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1571

5290:                                             ; preds = %.preheader1569
  %5291 = load i8, ptr %5289, align 1, !tbaa !5, !range !9, !noundef !10
  %5292 = trunc nuw i8 %5291 to i1
  br i1 %5292, label %5314, label %5293

5293:                                             ; preds = %5290
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1569 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1571, !llvm.loop !108

5294:                                             ; preds = %5270
  %5295 = landingpad { ptr, i32 }
          cleanup
  br label %5301

5296:                                             ; preds = %5273, %5271
  %5297 = landingpad { ptr, i32 }
          cleanup
  br label %5300

5298:                                             ; preds = %5274
  %5299 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %487) #6
  br label %5300

5300:                                             ; preds = %5298, %5296
  %.pn920 = phi { ptr, i32 } [ %5299, %5298 ], [ %5297, %5296 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %488) #6
  br label %5301

5301:                                             ; preds = %5300, %5294
  %.pn920.pn = phi { ptr, i32 } [ %.pn920, %5300 ], [ %5295, %5294 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %488) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %487) #6
  br label %.loopexit.split-lp

5302:                                             ; preds = %5278
  %5303 = landingpad { ptr, i32 }
          cleanup
  br label %5306

5304:                                             ; preds = %5279
  %5305 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %489) #6
  br label %5306

5306:                                             ; preds = %5304, %5302
  %.pn923 = phi { ptr, i32 } [ %5305, %5304 ], [ %5303, %5302 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %489) #6
  br label %.loopexit.split-lp

5307:                                             ; preds = %5281
  %5308 = landingpad { ptr, i32 }
          cleanup
  br label %5311

5309:                                             ; preds = %5282
  %5310 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %490) #6
  br label %5311

5311:                                             ; preds = %5309, %5307
  %.pn925 = phi { ptr, i32 } [ %5310, %5309 ], [ %5308, %5307 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %490) #6
  br label %.loopexit.split-lp

5312:                                             ; preds = %5286
  %5313 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %491) #6
  br label %.loopexit.split-lp

5314:                                             ; preds = %5290
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5315 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5315:                                             ; preds = %5314
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %492) #6
  store i8 0, ptr %492, align 1, !tbaa !5
  %5316 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %492)
          to label %5317 unwind label %5318

5317:                                             ; preds = %5315
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %492) #6
  br label %.invoke2294

5318:                                             ; preds = %5315
  %5319 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %492) #6
  br label %.loopexit.split-lp

5320:                                             ; preds = %5182
  %5321 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not901 = icmp eq i64 %5321, 64
  br i1 %.not901, label %5322, label %.invoke2315

5322:                                             ; preds = %5320
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %493) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %494) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %494, i32 noundef 24)
          to label %5323 unwind label %5340

5323:                                             ; preds = %5322
  %5324 = 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) %494)
          to label %5325 unwind label %5342

5325:                                             ; preds = %5323
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %493, ptr noundef nonnull align 1 dereferenceable(1) %5324)
          to label %5326 unwind label %5342

5326:                                             ; preds = %5325
  %5327 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %493)
          to label %5328 unwind label %5344

5328:                                             ; preds = %5326
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %493) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %494) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %494) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %493) #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 32)
          to label %5329 unwind label %5348

5329:                                             ; preds = %5328
  %5330 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %495)
          to label %5331 unwind label %5350

5331:                                             ; preds = %5329
  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
  %5332 = 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 %5333 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5333:                                             ; preds = %5331
  %5334 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5332)
          to label %5335 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5335:                                             ; preds = %5333
  %.not907 = icmp eq i64 %5334, 0
  br i1 %.not907, label %5358, label %5336

5336:                                             ; preds = %5335
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %496) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %496, i32 noundef 64)
          to label %5337 unwind label %5353

5337:                                             ; preds = %5336
  %5338 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %496)
          to label %5339 unwind label %5355

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
  br label %5367

5340:                                             ; preds = %5322
  %5341 = landingpad { ptr, i32 }
          cleanup
  br label %5347

5342:                                             ; preds = %5325, %5323
  %5343 = landingpad { ptr, i32 }
          cleanup
  br label %5346

5344:                                             ; preds = %5326
  %5345 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %493) #6
  br label %5346

5346:                                             ; preds = %5344, %5342
  %.pn902 = phi { ptr, i32 } [ %5345, %5344 ], [ %5343, %5342 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %494) #6
  br label %5347

5347:                                             ; preds = %5346, %5340
  %.pn902.pn = phi { ptr, i32 } [ %.pn902, %5346 ], [ %5341, %5340 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %494) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %493) #6
  br label %.loopexit.split-lp

5348:                                             ; preds = %5328
  %5349 = landingpad { ptr, i32 }
          cleanup
  br label %5352

5350:                                             ; preds = %5329
  %5351 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %495) #6
  br label %5352

5352:                                             ; preds = %5350, %5348
  %.pn905 = phi { ptr, i32 } [ %5351, %5350 ], [ %5349, %5348 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %495) #6
  br label %.loopexit.split-lp

5353:                                             ; preds = %5336
  %5354 = landingpad { ptr, i32 }
          cleanup
  br label %5357

5355:                                             ; preds = %5337
  %5356 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %496) #6
  br label %5357

5357:                                             ; preds = %5355, %5353
  %.pn910 = phi { ptr, i32 } [ %5356, %5355 ], [ %5354, %5353 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %496) #6
  br label %.loopexit.split-lp

5358:                                             ; preds = %5335
  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 96)
          to label %5359 unwind label %5362

5359:                                             ; preds = %5358
  %5360 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %497)
          to label %5361 unwind label %5364

5361:                                             ; preds = %5359
  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 %5367

5362:                                             ; preds = %5358
  %5363 = landingpad { ptr, i32 }
          cleanup
  br label %5366

5364:                                             ; preds = %5359
  %5365 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %497) #6
  br label %5366

5366:                                             ; preds = %5364, %5362
  %.pn908 = phi { ptr, i32 } [ %5365, %5364 ], [ %5363, %5362 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %497) #6
  br label %.loopexit.split-lp

5367:                                             ; preds = %5361, %5339
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %498) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %498, i32 noundef 3)
          to label %5368 unwind label %5380

5368:                                             ; preds = %5367
  %5369 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %498)
          to label %5370 unwind label %5382

5370:                                             ; preds = %5368
  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
  %5371 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5372 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5372:                                             ; preds = %5370
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %499) #6
  store i8 1, ptr %499, align 1, !tbaa !5
  %5373 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %499)
          to label %5374 unwind label %5385

5374:                                             ; preds = %5372
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %499) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1592 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1592:                                   ; preds = %5374, %5379
  %5375 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %5376 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1594

5376:                                             ; preds = %.preheader1592
  %5377 = load i8, ptr %5375, align 1, !tbaa !5, !range !9, !noundef !10
  %5378 = trunc nuw i8 %5377 to i1
  br i1 %5378, label %5387, label %5379

5379:                                             ; preds = %5376
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1592 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1594, !llvm.loop !109

5380:                                             ; preds = %5367
  %5381 = landingpad { ptr, i32 }
          cleanup
  br label %5384

5382:                                             ; preds = %5368
  %5383 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %498) #6
  br label %5384

5384:                                             ; preds = %5382, %5380
  %.pn912 = phi { ptr, i32 } [ %5383, %5382 ], [ %5381, %5380 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %498) #6
  br label %.loopexit.split-lp

5385:                                             ; preds = %5372
  %5386 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %499) #6
  br label %.loopexit.split-lp

5387:                                             ; preds = %5376
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5388 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5388:                                             ; preds = %5387
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %500) #6
  store i8 0, ptr %500, align 1, !tbaa !5
  %5389 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %500)
          to label %5390 unwind label %5391

5390:                                             ; preds = %5388
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %500) #6
  br label %.invoke2294

5391:                                             ; preds = %5388
  %5392 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %500) #6
  br label %.loopexit.split-lp

5393:                                             ; preds = %5182
  %5394 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not888 = icmp eq i64 %5394, 64
  br i1 %.not888, label %5395, label %.invoke2315

5395:                                             ; preds = %5393
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %501) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %502) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %502, i32 noundef 24)
          to label %5396 unwind label %5413

5396:                                             ; preds = %5395
  %5397 = 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) %502)
          to label %5398 unwind label %5415

5398:                                             ; preds = %5396
  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) %5397)
          to label %5399 unwind label %5415

5399:                                             ; preds = %5398
  %5400 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %501)
          to label %5401 unwind label %5417

5401:                                             ; preds = %5399
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %501) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %502) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %502) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %501) #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 32)
          to label %5402 unwind label %5421

5402:                                             ; preds = %5401
  %5403 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %503)
          to label %5404 unwind label %5423

5404:                                             ; preds = %5402
  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
  %5405 = 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 %5406 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5406:                                             ; preds = %5404
  %5407 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5405)
          to label %5408 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5408:                                             ; preds = %5406
  %.not894 = icmp eq i64 %5407, 0
  br i1 %.not894, label %5431, label %5409

5409:                                             ; preds = %5408
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %504) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %504, i32 noundef 128)
          to label %5410 unwind label %5426

5410:                                             ; preds = %5409
  %5411 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %504)
          to label %5412 unwind label %5428

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
  br label %5440

5413:                                             ; preds = %5395
  %5414 = landingpad { ptr, i32 }
          cleanup
  br label %5420

5415:                                             ; preds = %5398, %5396
  %5416 = landingpad { ptr, i32 }
          cleanup
  br label %5419

5417:                                             ; preds = %5399
  %5418 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %501) #6
  br label %5419

5419:                                             ; preds = %5417, %5415
  %.pn889 = phi { ptr, i32 } [ %5418, %5417 ], [ %5416, %5415 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %502) #6
  br label %5420

5420:                                             ; preds = %5419, %5413
  %.pn889.pn = phi { ptr, i32 } [ %.pn889, %5419 ], [ %5414, %5413 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %502) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %501) #6
  br label %.loopexit.split-lp

5421:                                             ; preds = %5401
  %5422 = landingpad { ptr, i32 }
          cleanup
  br label %5425

5423:                                             ; preds = %5402
  %5424 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %503) #6
  br label %5425

5425:                                             ; preds = %5423, %5421
  %.pn892 = phi { ptr, i32 } [ %5424, %5423 ], [ %5422, %5421 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %503) #6
  br label %.loopexit.split-lp

5426:                                             ; preds = %5409
  %5427 = landingpad { ptr, i32 }
          cleanup
  br label %5430

5428:                                             ; preds = %5410
  %5429 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %504) #6
  br label %5430

5430:                                             ; preds = %5428, %5426
  %.pn897 = phi { ptr, i32 } [ %5429, %5428 ], [ %5427, %5426 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %504) #6
  br label %.loopexit.split-lp

5431:                                             ; preds = %5408
  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 160)
          to label %5432 unwind label %5435

5432:                                             ; preds = %5431
  %5433 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %505)
          to label %5434 unwind label %5437

5434:                                             ; preds = %5432
  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 %5440

5435:                                             ; preds = %5431
  %5436 = landingpad { ptr, i32 }
          cleanup
  br label %5439

5437:                                             ; preds = %5432
  %5438 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %505) #6
  br label %5439

5439:                                             ; preds = %5437, %5435
  %.pn895 = phi { ptr, i32 } [ %5438, %5437 ], [ %5436, %5435 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %505) #6
  br label %.loopexit.split-lp

5440:                                             ; preds = %5434, %5412
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %506) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %506, i32 noundef 3)
          to label %5441 unwind label %5453

5441:                                             ; preds = %5440
  %5442 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %506)
          to label %5443 unwind label %5455

5443:                                             ; preds = %5441
  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
  %5444 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5445 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5445:                                             ; preds = %5443
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %507) #6
  store i8 1, ptr %507, align 1, !tbaa !5
  %5446 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %507)
          to label %5447 unwind label %5458

5447:                                             ; preds = %5445
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %507) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1599 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1599:                                   ; preds = %5447, %5452
  %5448 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %5449 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1601

5449:                                             ; preds = %.preheader1599
  %5450 = load i8, ptr %5448, align 1, !tbaa !5, !range !9, !noundef !10
  %5451 = trunc nuw i8 %5450 to i1
  br i1 %5451, label %5460, label %5452

5452:                                             ; preds = %5449
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1599 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1601, !llvm.loop !110

5453:                                             ; preds = %5440
  %5454 = landingpad { ptr, i32 }
          cleanup
  br label %5457

5455:                                             ; preds = %5441
  %5456 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %506) #6
  br label %5457

5457:                                             ; preds = %5455, %5453
  %.pn899 = phi { ptr, i32 } [ %5456, %5455 ], [ %5454, %5453 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %506) #6
  br label %.loopexit.split-lp

5458:                                             ; preds = %5445
  %5459 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %507) #6
  br label %.loopexit.split-lp

5460:                                             ; preds = %5449
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5461 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5461:                                             ; preds = %5460
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %508) #6
  store i8 0, ptr %508, align 1, !tbaa !5
  %5462 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %508)
          to label %5463 unwind label %5464

5463:                                             ; preds = %5461
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %508) #6
  br label %.invoke2294

5464:                                             ; preds = %5461
  %5465 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %508) #6
  br label %.loopexit.split-lp

5466:                                             ; preds = %5182
  %5467 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1759)
          to label %5468 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5468:                                             ; preds = %5466
  %5469 = load i8, ptr %5467, align 1, !tbaa !5, !range !9, !noundef !10
  %5470 = trunc nuw i8 %5469 to i1
  br i1 %5470, label %5473, label %5471

5471:                                             ; preds = %5468
  %5472 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not872 = icmp eq i64 %5472, 12
  br i1 %.not872, label %5473, label %.invoke2315

5473:                                             ; preds = %5471, %5468
  %5474 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1759)
          to label %5475 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5475:                                             ; preds = %5473
  %5476 = load i8, ptr %5474, align 1, !tbaa !5, !range !9, !noundef !10
  %5477 = trunc nuw i8 %5476 to i1
  br i1 %5477, label %5478, label %5480

5478:                                             ; preds = %5475
  %5479 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not873 = icmp eq i64 %5479, 8
  br i1 %.not873, label %5480, label %.invoke2315

5480:                                             ; preds = %5478, %5475
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %509) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %510) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %510, i32 noundef 24)
          to label %5481 unwind label %5495

5481:                                             ; preds = %5480
  %5482 = 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) %510)
          to label %5483 unwind label %5497

5483:                                             ; preds = %5481
  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) %5482)
          to label %5484 unwind label %5497

5484:                                             ; preds = %5483
  %5485 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %509)
          to label %5486 unwind label %5499

5486:                                             ; preds = %5484
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %509) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %510) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %510) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %509) #6
  %5487 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1759)
          to label %5488 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5488:                                             ; preds = %5486
  %5489 = load i8, ptr %5487, align 1, !tbaa !5, !range !9, !noundef !10
  %5490 = trunc nuw i8 %5489 to i1
  br i1 %5490, label %5508, label %5491

5491:                                             ; preds = %5488
  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 6)
          to label %5492 unwind label %5503

5492:                                             ; preds = %5491
  %5493 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %511)
          to label %5494 unwind label %5505

5494:                                             ; preds = %5492
  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
  br label %5517

5495:                                             ; preds = %5480
  %5496 = landingpad { ptr, i32 }
          cleanup
  br label %5502

5497:                                             ; preds = %5483, %5481
  %5498 = landingpad { ptr, i32 }
          cleanup
  br label %5501

5499:                                             ; preds = %5484
  %5500 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %509) #6
  br label %5501

5501:                                             ; preds = %5499, %5497
  %.pn874 = phi { ptr, i32 } [ %5500, %5499 ], [ %5498, %5497 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %510) #6
  br label %5502

5502:                                             ; preds = %5501, %5495
  %.pn874.pn = phi { ptr, i32 } [ %.pn874, %5501 ], [ %5496, %5495 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %510) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %509) #6
  br label %.loopexit.split-lp

5503:                                             ; preds = %5491
  %5504 = landingpad { ptr, i32 }
          cleanup
  br label %5507

5505:                                             ; preds = %5492
  %5506 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %511) #6
  br label %5507

5507:                                             ; preds = %5505, %5503
  %.pn877 = phi { ptr, i32 } [ %5506, %5505 ], [ %5504, %5503 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %511) #6
  br label %.loopexit.split-lp

5508:                                             ; preds = %5488
  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 4)
          to label %5509 unwind label %5512

5509:                                             ; preds = %5508
  %5510 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %512)
          to label %5511 unwind label %5514

5511:                                             ; preds = %5509
  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 %5517

5512:                                             ; preds = %5508
  %5513 = landingpad { ptr, i32 }
          cleanup
  br label %5516

5514:                                             ; preds = %5509
  %5515 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %512) #6
  br label %5516

5516:                                             ; preds = %5514, %5512
  %.pn879 = phi { ptr, i32 } [ %5515, %5514 ], [ %5513, %5512 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %512) #6
  br label %.loopexit.split-lp

5517:                                             ; preds = %5511, %5494
  %5518 = 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 %5519 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5519:                                             ; preds = %5517
  %5520 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5518)
          to label %5521 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5521:                                             ; preds = %5519
  %.not881 = icmp eq i64 %5520, 0
  br i1 %.not881, label %5531, label %5522

5522:                                             ; preds = %5521
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %513) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %513, i32 noundef 32)
          to label %5523 unwind label %5526

5523:                                             ; preds = %5522
  %5524 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %513)
          to label %5525 unwind label %5528

5525:                                             ; preds = %5523
  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 %5540

5526:                                             ; preds = %5522
  %5527 = landingpad { ptr, i32 }
          cleanup
  br label %5530

5528:                                             ; preds = %5523
  %5529 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %513) #6
  br label %5530

5530:                                             ; preds = %5528, %5526
  %.pn884 = phi { ptr, i32 } [ %5529, %5528 ], [ %5527, %5526 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %513) #6
  br label %.loopexit.split-lp

5531:                                             ; preds = %5521
  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 48)
          to label %5532 unwind label %5535

5532:                                             ; preds = %5531
  %5533 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %514)
          to label %5534 unwind label %5537

5534:                                             ; preds = %5532
  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 %5540

5535:                                             ; preds = %5531
  %5536 = landingpad { ptr, i32 }
          cleanup
  br label %5539

5537:                                             ; preds = %5532
  %5538 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %514) #6
  br label %5539

5539:                                             ; preds = %5537, %5535
  %.pn882 = phi { ptr, i32 } [ %5538, %5537 ], [ %5536, %5535 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %514) #6
  br label %.loopexit.split-lp

5540:                                             ; preds = %5534, %5525
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %515) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %515, i32 noundef 3)
          to label %5541 unwind label %5553

5541:                                             ; preds = %5540
  %5542 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %515)
          to label %5543 unwind label %5555

5543:                                             ; preds = %5541
  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
  %5544 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5545 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5545:                                             ; preds = %5543
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %516) #6
  store i8 1, ptr %516, align 1, !tbaa !5
  %5546 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %516)
          to label %5547 unwind label %5558

5547:                                             ; preds = %5545
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %516) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1607 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1607:                                   ; preds = %5547, %5552
  %5548 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %5549 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1609

5549:                                             ; preds = %.preheader1607
  %5550 = load i8, ptr %5548, align 1, !tbaa !5, !range !9, !noundef !10
  %5551 = trunc nuw i8 %5550 to i1
  br i1 %5551, label %5560, label %5552

5552:                                             ; preds = %5549
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1607 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1609, !llvm.loop !111

5553:                                             ; preds = %5540
  %5554 = landingpad { ptr, i32 }
          cleanup
  br label %5557

5555:                                             ; preds = %5541
  %5556 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %515) #6
  br label %5557

5557:                                             ; preds = %5555, %5553
  %.pn886 = phi { ptr, i32 } [ %5556, %5555 ], [ %5554, %5553 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %515) #6
  br label %.loopexit.split-lp

5558:                                             ; preds = %5545
  %5559 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %516) #6
  br label %.loopexit.split-lp

5560:                                             ; preds = %5549
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5561 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5561:                                             ; preds = %5560
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %517) #6
  store i8 0, ptr %517, align 1, !tbaa !5
  %5562 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %517)
          to label %5563 unwind label %5564

5563:                                             ; preds = %5561
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %517) #6
  br label %.invoke2294

5564:                                             ; preds = %5561
  %5565 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %517) #6
  br label %.loopexit.split-lp

5566:                                             ; preds = %5182
  %5567 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not864 = icmp eq i64 %5567, 2
  br i1 %.not864, label %5568, label %.invoke2315

5568:                                             ; preds = %5566
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %518) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %518, i32 noundef 24)
          to label %5569 unwind label %5578

5569:                                             ; preds = %5568
  %5570 = 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) %518)
          to label %5571 unwind label %5580

5571:                                             ; preds = %5569
  %5572 = 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) %5570)
          to label %5573 unwind label %5580

5573:                                             ; preds = %5571
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %518) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %518) #6
  %5574 = 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 %5575 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5575:                                             ; preds = %5573
  %5576 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5574)
          to label %.invoke2297 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.invoke2297:                                      ; preds = %5575
  %.not867 = icmp eq i64 %5576, 0
  %.2313 = select i1 %.not867, i32 4, i32 2
  %5577 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef %.2313)
          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.sp1930

5578:                                             ; preds = %5568
  %5579 = landingpad { ptr, i32 }
          cleanup
  br label %5582

5580:                                             ; preds = %5571, %5569
  %5581 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %518) #6
  br label %5582

5582:                                             ; preds = %5580, %5578
  %.pn865 = phi { ptr, i32 } [ %5581, %5580 ], [ %5579, %5578 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %518) #6
  br label %.loopexit.split-lp

5583:                                             ; preds = %.invoke2297
  %5584 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5585 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5585:                                             ; preds = %5583
  %5586 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %5587 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5587:                                             ; preds = %5585
  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 1)
          to label %5588 unwind label %5603

5588:                                             ; preds = %5587
  %5589 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %519)
          to label %5590 unwind label %5605

5590:                                             ; preds = %5588
  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
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %520) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %520, i32 noundef 3)
          to label %5591 unwind label %5608

5591:                                             ; preds = %5590
  %5592 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %520)
          to label %5593 unwind label %5610

5593:                                             ; preds = %5591
  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
  %5594 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          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.sp1930

5595:                                             ; preds = %5593
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %521) #6
  store i8 1, ptr %521, align 1, !tbaa !5
  %5596 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %521)
          to label %5597 unwind label %5613

5597:                                             ; preds = %5595
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %521) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1614 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1614:                                   ; preds = %5597, %5602
  %5598 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %5599 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1616

5599:                                             ; preds = %.preheader1614
  %5600 = load i8, ptr %5598, align 1, !tbaa !5, !range !9, !noundef !10
  %5601 = trunc nuw i8 %5600 to i1
  br i1 %5601, label %5615, label %5602

5602:                                             ; preds = %5599
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1614 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1616, !llvm.loop !112

5603:                                             ; preds = %5587
  %5604 = landingpad { ptr, i32 }
          cleanup
  br label %5607

5605:                                             ; preds = %5588
  %5606 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %519) #6
  br label %5607

5607:                                             ; preds = %5605, %5603
  %.pn868 = phi { ptr, i32 } [ %5606, %5605 ], [ %5604, %5603 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %519) #6
  br label %.loopexit.split-lp

5608:                                             ; preds = %5590
  %5609 = landingpad { ptr, i32 }
          cleanup
  br label %5612

5610:                                             ; preds = %5591
  %5611 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %520) #6
  br label %5612

5612:                                             ; preds = %5610, %5608
  %.pn870 = phi { ptr, i32 } [ %5611, %5610 ], [ %5609, %5608 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %520) #6
  br label %.loopexit.split-lp

5613:                                             ; preds = %5595
  %5614 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %521) #6
  br label %.loopexit.split-lp

5615:                                             ; preds = %5599
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5616 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5616:                                             ; preds = %5615
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %522) #6
  store i8 0, ptr %522, align 1, !tbaa !5
  %5617 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %522)
          to label %5618 unwind label %5619

5618:                                             ; preds = %5616
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %522) #6
  br label %.invoke2294

5619:                                             ; preds = %5616
  %5620 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %522) #6
  br label %.loopexit.split-lp

5621:                                             ; preds = %5182
  %5622 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not854 = icmp eq i64 %5622, 8
  br i1 %.not854, label %5623, label %.invoke2315

5623:                                             ; preds = %5621
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %523) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %524) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %524, i32 noundef 24)
          to label %5624 unwind label %5648

5624:                                             ; preds = %5623
  %5625 = 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) %524)
          to label %5626 unwind label %5650

5626:                                             ; preds = %5624
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %523, ptr noundef nonnull align 1 dereferenceable(1) %5625)
          to label %5627 unwind label %5650

5627:                                             ; preds = %5626
  %5628 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %523)
          to label %5629 unwind label %5652

5629:                                             ; preds = %5627
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %523) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %524) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %524) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %523) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %525) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %525, i32 noundef 20)
          to label %5630 unwind label %5656

5630:                                             ; preds = %5629
  %5631 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %525)
          to label %5632 unwind label %5658

5632:                                             ; preds = %5630
  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.start.p0(i64 24, ptr nonnull %526) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %526, i32 noundef 4)
          to label %5633 unwind label %5661

5633:                                             ; preds = %5632
  %5634 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %526)
          to label %5635 unwind label %5663

5635:                                             ; preds = %5633
  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_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %527, i32 noundef 3)
          to label %5636 unwind label %5666

5636:                                             ; preds = %5635
  %5637 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %527)
          to label %5638 unwind label %5668

5638:                                             ; preds = %5636
  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
  %5639 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5640 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5640:                                             ; preds = %5638
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %528) #6
  store i8 1, ptr %528, align 1, !tbaa !5
  %5641 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %528)
          to label %5642 unwind label %5671

5642:                                             ; preds = %5640
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %528) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1622 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1622:                                   ; preds = %5642, %5647
  %5643 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %5644 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1624

5644:                                             ; preds = %.preheader1622
  %5645 = load i8, ptr %5643, align 1, !tbaa !5, !range !9, !noundef !10
  %5646 = trunc nuw i8 %5645 to i1
  br i1 %5646, label %5673, label %5647

5647:                                             ; preds = %5644
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1622 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1624, !llvm.loop !113

5648:                                             ; preds = %5623
  %5649 = landingpad { ptr, i32 }
          cleanup
  br label %5655

5650:                                             ; preds = %5626, %5624
  %5651 = landingpad { ptr, i32 }
          cleanup
  br label %5654

5652:                                             ; preds = %5627
  %5653 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %523) #6
  br label %5654

5654:                                             ; preds = %5652, %5650
  %.pn855 = phi { ptr, i32 } [ %5653, %5652 ], [ %5651, %5650 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %524) #6
  br label %5655

5655:                                             ; preds = %5654, %5648
  %.pn855.pn = phi { ptr, i32 } [ %.pn855, %5654 ], [ %5649, %5648 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %524) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %523) #6
  br label %.loopexit.split-lp

5656:                                             ; preds = %5629
  %5657 = landingpad { ptr, i32 }
          cleanup
  br label %5660

5658:                                             ; preds = %5630
  %5659 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %525) #6
  br label %5660

5660:                                             ; preds = %5658, %5656
  %.pn858 = phi { ptr, i32 } [ %5659, %5658 ], [ %5657, %5656 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %525) #6
  br label %.loopexit.split-lp

5661:                                             ; preds = %5632
  %5662 = landingpad { ptr, i32 }
          cleanup
  br label %5665

5663:                                             ; preds = %5633
  %5664 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %526) #6
  br label %5665

5665:                                             ; preds = %5663, %5661
  %.pn860 = phi { ptr, i32 } [ %5664, %5663 ], [ %5662, %5661 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %526) #6
  br label %.loopexit.split-lp

5666:                                             ; preds = %5635
  %5667 = landingpad { ptr, i32 }
          cleanup
  br label %5670

5668:                                             ; preds = %5636
  %5669 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %527) #6
  br label %5670

5670:                                             ; preds = %5668, %5666
  %.pn862 = phi { ptr, i32 } [ %5669, %5668 ], [ %5667, %5666 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %527) #6
  br label %.loopexit.split-lp

5671:                                             ; preds = %5640
  %5672 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %528) #6
  br label %.loopexit.split-lp

5673:                                             ; preds = %5644
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5674 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5674:                                             ; preds = %5673
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %529) #6
  store i8 0, ptr %529, align 1, !tbaa !5
  %5675 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %529)
          to label %5676 unwind label %5677

5676:                                             ; preds = %5674
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %529) #6
  br label %.invoke2294

5677:                                             ; preds = %5674
  %5678 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %529) #6
  br label %.loopexit.split-lp

5679:                                             ; preds = %5182
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %530) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %530, i32 noundef 11)
          to label %5680 unwind label %5703

5680:                                             ; preds = %5679
  %5681 = 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) %530)
          to label %5682 unwind label %5705

5682:                                             ; preds = %5680
  %5683 = 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) %5681)
          to label %5684 unwind label %5705

5684:                                             ; preds = %5682
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %530) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %530) #6
  %5685 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5686 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5686:                                             ; preds = %5684
  %5687 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5688 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5688:                                             ; preds = %5686
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %531) #6
  store i8 1, ptr %531, align 1, !tbaa !5
  %5689 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %531)
          to label %5690 unwind label %5708

5690:                                             ; preds = %5688
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %531) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %532) #6
  store i8 1, ptr %532, align 1, !tbaa !5
  %5691 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %532)
          to label %5692 unwind label %5710

5692:                                             ; preds = %5690
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %532) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1658 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1658:                                   ; preds = %5692, %5714
  %5693 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          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.sp1660

5694:                                             ; preds = %.preheader1658
  %5695 = 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) %5693)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %533) #6
  store i8 0, ptr %533, align 1, !tbaa !5
  %5696 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %533)
          to label %5697 unwind label %5712

5697:                                             ; preds = %5694
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %533) #6
  %5698 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %5699 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1660

5699:                                             ; preds = %5697
  %5700 = load i8, ptr %5698, align 1, !tbaa !5, !range !9, !noundef !10
  %5701 = trunc nuw i8 %5700 to i1
  br i1 %5701, label %5702, label %5714

5702:                                             ; preds = %5699
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5715 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5703:                                             ; preds = %5679
  %5704 = landingpad { ptr, i32 }
          cleanup
  br label %5707

5705:                                             ; preds = %5682, %5680
  %5706 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %530) #6
  br label %5707

5707:                                             ; preds = %5705, %5703
  %.pn838 = phi { ptr, i32 } [ %5706, %5705 ], [ %5704, %5703 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %530) #6
  br label %.loopexit.split-lp

5708:                                             ; preds = %5688
  %5709 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %531) #6
  br label %.loopexit.split-lp

5710:                                             ; preds = %5690
  %5711 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %532) #6
  br label %.loopexit.split-lp

5712:                                             ; preds = %5694
  %5713 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %533) #6
  br label %.loopexit.split-lp

5714:                                             ; preds = %5699
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1658 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1660, !llvm.loop !114

5715:                                             ; preds = %5702
  %5716 = 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 %5717 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5717:                                             ; preds = %5715
  %5718 = 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) %5716)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %534) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %534, i32 noundef 24)
          to label %5719 unwind label %5726

5719:                                             ; preds = %5717
  %5720 = 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) %534)
          to label %5721 unwind label %5728

5721:                                             ; preds = %5719
  %5722 = 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) %5720)
          to label %5723 unwind label %5728

5723:                                             ; preds = %5721
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %534) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %534) #6
  %5724 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %5725 = icmp slt i64 %5724, 2
  br i1 %5725, label %._crit_edge, label %.lr.ph

._crit_edge:                                      ; preds = %.backedge, %5723
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5906 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5726:                                             ; preds = %5717
  %5727 = landingpad { ptr, i32 }
          cleanup
  br label %5730

5728:                                             ; preds = %5721, %5719
  %5729 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %534) #6
  br label %5730

5730:                                             ; preds = %5728, %5726
  %.pn840 = phi { ptr, i32 } [ %5729, %5728 ], [ %5727, %5726 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %534) #6
  br label %.loopexit.split-lp

.lr.ph:                                           ; preds = %5723, %.backedge
  %5731 = 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)
  %5732 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5733 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5733:                                             ; preds = %.lr.ph
  %5734 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5735 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5735:                                             ; preds = %5733
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %535) #6
  store i8 1, ptr %535, align 1, !tbaa !5
  %5736 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %535)
          to label %5737 unwind label %5750

5737:                                             ; preds = %5735
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %535) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %536) #6
  store i8 1, ptr %536, align 1, !tbaa !5
  %5738 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %536)
          to label %5739 unwind label %5752

5739:                                             ; preds = %5737
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %536) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1285 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

.preheader1285:                                   ; preds = %5739, %5756
  %5740 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %5741 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5741:                                             ; preds = %.preheader1285
  %5742 = 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) %5740)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %537) #6
  store i8 0, ptr %537, align 1, !tbaa !5
  %5743 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %537)
          to label %5744 unwind label %5754

5744:                                             ; preds = %5741
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %537) #6
  %5745 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %5746 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5746:                                             ; preds = %5744
  %5747 = load i8, ptr %5745, align 1, !tbaa !5, !range !9, !noundef !10
  %5748 = trunc nuw i8 %5747 to i1
  br i1 %5748, label %5749, label %5756

5749:                                             ; preds = %5746
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5757 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5750:                                             ; preds = %5735
  %5751 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %535) #6
  br label %.loopexit.split-lp

5752:                                             ; preds = %5737
  %5753 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %536) #6
  br label %.loopexit.split-lp

5754:                                             ; preds = %5741
  %5755 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %537) #6
  br label %.loopexit.split-lp

5756:                                             ; preds = %5746
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1285 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !115

5757:                                             ; preds = %5749
  %5758 = 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)
  %5759 = 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)
  %5760 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5761 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5761:                                             ; preds = %5757
  %5762 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %5763 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5763:                                             ; preds = %5761
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %538) #6
  store i8 0, ptr %538, align 1, !tbaa !5
  %5764 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %538)
          to label %5765 unwind label %5775

5765:                                             ; preds = %5763
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %538) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %539) #6
  store i8 1, ptr %539, align 1, !tbaa !5
  %5766 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %539)
          to label %5767 unwind label %5777

5767:                                             ; preds = %5765
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %539) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1281 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

.preheader1281:                                   ; preds = %5767, %5781
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %540) #6
  store i8 0, ptr %540, align 1, !tbaa !5
  %5768 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %540)
          to label %5769 unwind label %5779

5769:                                             ; preds = %.preheader1281
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %540) #6
  %5770 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %5771 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5771:                                             ; preds = %5769
  %5772 = load i8, ptr %5770, align 1, !tbaa !5, !range !9, !noundef !10
  %5773 = trunc nuw i8 %5772 to i1
  br i1 %5773, label %5774, label %5781

5774:                                             ; preds = %5771
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5782 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5775:                                             ; preds = %5763
  %5776 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %538) #6
  br label %.loopexit.split-lp

5777:                                             ; preds = %5765
  %5778 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %539) #6
  br label %.loopexit.split-lp

5779:                                             ; preds = %.preheader1281
  %5780 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %540) #6
  br label %.loopexit.split-lp

5781:                                             ; preds = %5771
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1281 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !116

5782:                                             ; preds = %5774
  %5783 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %6)
  %5784 = add nsw i64 %5783, 1
  %5785 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %6, i64 noundef %5784)
          to label %5786 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5786:                                             ; preds = %5782
  %5787 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %7)
  %5788 = add nsw i64 %5787, 1
  %5789 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %7, i64 noundef %5788)
          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.sp1653

5790:                                             ; preds = %5786
  %5791 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %5792 = add nsw i64 %5791, -2
  %5793 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %5792)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %541) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %541, i32 noundef -1)
          to label %5794 unwind label %5800

5794:                                             ; preds = %5790
  %5795 = 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) %541)
          to label %5796 unwind label %5802

5796:                                             ; preds = %5794
  %5797 = 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) %5795)
          to label %5798 unwind label %5802

5798:                                             ; preds = %5796
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %541) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %541) #6
  br i1 %5797, label %5799, label %5805

5799:                                             ; preds = %5798
  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.sp1653

5800:                                             ; preds = %5790
  %5801 = landingpad { ptr, i32 }
          cleanup
  br label %5804

5802:                                             ; preds = %5796, %5794
  %5803 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %541) #6
  br label %5804

5804:                                             ; preds = %5802, %5800
  %.pn842 = phi { ptr, i32 } [ %5803, %5802 ], [ %5801, %5800 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %541) #6
  br label %.loopexit.split-lp

5805:                                             ; preds = %5798
  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 2)
          to label %5806 unwind label %5829

5806:                                             ; preds = %5805
  %5807 = 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 %5808 unwind label %5831

5808:                                             ; preds = %5806
  %5809 = 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) %5807)
          to label %5810 unwind label %5831

5810:                                             ; preds = %5808
  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
  %5811 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5812 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5812:                                             ; preds = %5810
  %5813 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5814 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5814:                                             ; preds = %5812
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %543) #6
  store i8 1, ptr %543, align 1, !tbaa !5
  %5815 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %543)
          to label %5816 unwind label %5834

5816:                                             ; preds = %5814
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %543) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %544) #6
  store i8 1, ptr %544, align 1, !tbaa !5
  %5817 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %544)
          to label %5818 unwind label %5836

5818:                                             ; preds = %5816
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %544) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1278 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

.preheader1278:                                   ; preds = %5818, %5840
  %5819 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %5820 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5820:                                             ; preds = %.preheader1278
  %5821 = 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) %5819)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %545) #6
  store i8 0, ptr %545, align 1, !tbaa !5
  %5822 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %545)
          to label %5823 unwind label %5838

5823:                                             ; preds = %5820
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %545) #6
  %5824 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %5825 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5825:                                             ; preds = %5823
  %5826 = load i8, ptr %5824, align 1, !tbaa !5, !range !9, !noundef !10
  %5827 = trunc nuw i8 %5826 to i1
  br i1 %5827, label %5828, label %5840

5828:                                             ; preds = %5825
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5841 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5829:                                             ; preds = %5805
  %5830 = landingpad { ptr, i32 }
          cleanup
  br label %5833

5831:                                             ; preds = %5808, %5806
  %5832 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %542) #6
  br label %5833

5833:                                             ; preds = %5831, %5829
  %.pn844 = phi { ptr, i32 } [ %5832, %5831 ], [ %5830, %5829 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %542) #6
  br label %.loopexit.split-lp

5834:                                             ; preds = %5814
  %5835 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %543) #6
  br label %.loopexit.split-lp

5836:                                             ; preds = %5816
  %5837 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %544) #6
  br label %.loopexit.split-lp

5838:                                             ; preds = %5820
  %5839 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %545) #6
  br label %.loopexit.split-lp

5840:                                             ; preds = %5825
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1278 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !117

5841:                                             ; preds = %5828
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %546) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %546, i32 noundef 0)
          to label %5842 unwind label %5866

5842:                                             ; preds = %5841
  %5843 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %546, ptr noundef nonnull align 8 dereferenceable(8) %23)
          to label %5844 unwind label %5868

5844:                                             ; preds = %5842
  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 %5845 unwind label %5870

5845:                                             ; preds = %5844
  %5846 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %5843, ptr noundef nonnull align 8 dereferenceable(8) %547)
          to label %5847 unwind label %5872

5847:                                             ; preds = %5845
  %5848 = 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) %5846)
          to label %5849 unwind label %5872

5849:                                             ; preds = %5847
  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 @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %546) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %546) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %548) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %548, i32 noundef -8192)
          to label %5850 unwind label %5877

5850:                                             ; preds = %5849
  %5851 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %548)
          to label %5852 unwind label %5879

5852:                                             ; preds = %5850
  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
  %5853 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %5854 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5854:                                             ; preds = %5852
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %549) #6
  store i8 0, ptr %549, align 1, !tbaa !5
  %5855 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %549)
          to label %5856 unwind label %5882

5856:                                             ; preds = %5854
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %549) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %550) #6
  store i8 1, ptr %550, align 1, !tbaa !5
  %5857 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %550)
          to label %5858 unwind label %5884

5858:                                             ; preds = %5856
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %550) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1274 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

.preheader1274:                                   ; preds = %5858, %5888
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %551) #6
  store i8 0, ptr %551, align 1, !tbaa !5
  %5859 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %551)
          to label %5860 unwind label %5886

5860:                                             ; preds = %.preheader1274
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %551) #6
  %5861 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %5862 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5862:                                             ; preds = %5860
  %5863 = load i8, ptr %5861, align 1, !tbaa !5, !range !9, !noundef !10
  %5864 = trunc nuw i8 %5863 to i1
  br i1 %5864, label %5865, label %5888

5865:                                             ; preds = %5862
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5889 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5866:                                             ; preds = %5841
  %5867 = landingpad { ptr, i32 }
          cleanup
  br label %5876

5868:                                             ; preds = %5842
  %5869 = landingpad { ptr, i32 }
          cleanup
  br label %5875

5870:                                             ; preds = %5844
  %5871 = landingpad { ptr, i32 }
          cleanup
  br label %5874

5872:                                             ; preds = %5847, %5845
  %5873 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %547) #6
  br label %5874

5874:                                             ; preds = %5872, %5870
  %.pn846 = phi { ptr, i32 } [ %5873, %5872 ], [ %5871, %5870 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %547) #6
  br label %5875

5875:                                             ; preds = %5874, %5868
  %.pn846.pn = phi { ptr, i32 } [ %.pn846, %5874 ], [ %5869, %5868 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %546) #6
  br label %5876

5876:                                             ; preds = %5875, %5866
  %.pn846.pn.pn = phi { ptr, i32 } [ %.pn846.pn, %5875 ], [ %5867, %5866 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %546) #6
  br label %.loopexit.split-lp

5877:                                             ; preds = %5849
  %5878 = landingpad { ptr, i32 }
          cleanup
  br label %5881

5879:                                             ; preds = %5850
  %5880 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %548) #6
  br label %5881

5881:                                             ; preds = %5879, %5877
  %.pn850 = phi { ptr, i32 } [ %5880, %5879 ], [ %5878, %5877 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %548) #6
  br label %.loopexit.split-lp

5882:                                             ; preds = %5854
  %5883 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %549) #6
  br label %.loopexit.split-lp

5884:                                             ; preds = %5856
  %5885 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %550) #6
  br label %.loopexit.split-lp

5886:                                             ; preds = %.preheader1274
  %5887 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %551) #6
  br label %.loopexit.split-lp

5888:                                             ; preds = %5862
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1274 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !118

5889:                                             ; preds = %5865
  %5890 = 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 %5891 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5891:                                             ; preds = %5889
  %5892 = 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) %5890)
          to label %5893 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653

5893:                                             ; preds = %5891
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %552) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %552, i32 noundef 8)
          to label %5894 unwind label %5901

5894:                                             ; preds = %5893
  %5895 = 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) %552)
          to label %5896 unwind label %5903

5896:                                             ; preds = %5894
  %5897 = 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) %5895)
          to label %5898 unwind label %5903

5898:                                             ; preds = %5896
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %552) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %552) #6
  br label %.backedge

.backedge:                                        ; preds = %5898, %5799
  %5899 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %5900 = icmp slt i64 %5899, 2
  br i1 %5900, label %._crit_edge, label %.lr.ph, !llvm.loop !119

5901:                                             ; preds = %5893
  %5902 = landingpad { ptr, i32 }
          cleanup
  br label %5905

5903:                                             ; preds = %5896, %5894
  %5904 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %552) #6
  br label %5905

5905:                                             ; preds = %5903, %5901
  %.pn852 = phi { ptr, i32 } [ %5904, %5903 ], [ %5902, %5901 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %552) #6
  br label %.loopexit.split-lp

5906:                                             ; preds = %._crit_edge
  %5907 = 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 %5908 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5908:                                             ; preds = %5906
  %5909 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %5907)
  br i1 %5909, label %.invoke2294, label %5910

5910:                                             ; preds = %5908
  %5911 = 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)
  %5912 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5913 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5913:                                             ; preds = %5910
  %5914 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5915 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5915:                                             ; preds = %5913
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %553) #6
  store i8 1, ptr %553, align 1, !tbaa !5
  %5916 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %553)
          to label %5917 unwind label %5930

5917:                                             ; preds = %5915
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %553) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %554) #6
  store i8 1, ptr %554, align 1, !tbaa !5
  %5918 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %554)
          to label %5919 unwind label %5932

5919:                                             ; preds = %5917
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %554) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1644 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1644:                                   ; preds = %5919, %5936
  %5920 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          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.sp1646

5921:                                             ; preds = %.preheader1644
  %5922 = 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) %5920)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %555) #6
  store i8 0, ptr %555, align 1, !tbaa !5
  %5923 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %555)
          to label %5924 unwind label %5934

5924:                                             ; preds = %5921
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %555) #6
  %5925 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %5926 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1646

5926:                                             ; preds = %5924
  %5927 = load i8, ptr %5925, align 1, !tbaa !5, !range !9, !noundef !10
  %5928 = trunc nuw i8 %5927 to i1
  br i1 %5928, label %5929, label %5936

5929:                                             ; preds = %5926
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5937 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5930:                                             ; preds = %5915
  %5931 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %553) #6
  br label %.loopexit.split-lp

5932:                                             ; preds = %5917
  %5933 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %554) #6
  br label %.loopexit.split-lp

5934:                                             ; preds = %5921
  %5935 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %555) #6
  br label %.loopexit.split-lp

5936:                                             ; preds = %5926
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1644 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1646, !llvm.loop !120

5937:                                             ; preds = %5929
  %5938 = 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 %5939 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5939:                                             ; preds = %5937
  %5940 = 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 %5941 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5941:                                             ; preds = %5939
  %5942 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt13sc_int_subrefaSERKS0_(ptr noundef nonnull align 8 dereferenceable(28) %5940, ptr noundef nonnull align 8 dereferenceable(28) %5938)
          to label %5943 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5943:                                             ; preds = %5941
  %5944 = 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)
  %5945 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5946 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5946:                                             ; preds = %5943
  %5947 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5948 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5948:                                             ; preds = %5946
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %556) #6
  store i8 1, ptr %556, align 1, !tbaa !5
  %5949 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %556)
          to label %5950 unwind label %5963

5950:                                             ; preds = %5948
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %556) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %557) #6
  store i8 1, ptr %557, align 1, !tbaa !5
  %5951 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %557)
          to label %5952 unwind label %5965

5952:                                             ; preds = %5950
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %557) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1637 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1637:                                   ; preds = %5952, %5969
  %5953 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          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.sp1639

5954:                                             ; preds = %.preheader1637
  %5955 = 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) %5953)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %558) #6
  store i8 0, ptr %558, align 1, !tbaa !5
  %5956 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %558)
          to label %5957 unwind label %5967

5957:                                             ; preds = %5954
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %558) #6
  %5958 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %5959 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1639

5959:                                             ; preds = %5957
  %5960 = load i8, ptr %5958, align 1, !tbaa !5, !range !9, !noundef !10
  %5961 = trunc nuw i8 %5960 to i1
  br i1 %5961, label %5962, label %5969

5962:                                             ; preds = %5959
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5970 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5963:                                             ; preds = %5948
  %5964 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %556) #6
  br label %.loopexit.split-lp

5965:                                             ; preds = %5950
  %5966 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %557) #6
  br label %.loopexit.split-lp

5967:                                             ; preds = %5954
  %5968 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %558) #6
  br label %.loopexit.split-lp

5969:                                             ; preds = %5959
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1637 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1639, !llvm.loop !121

5970:                                             ; preds = %5962
  %5971 = 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 %5972 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5972:                                             ; preds = %5970
  %5973 = 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 %5974 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5974:                                             ; preds = %5972
  %5975 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %5971, ptr noundef nonnull align 8 dereferenceable(8) %5973)
          to label %5976 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

5976:                                             ; preds = %5974
  %5977 = 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) %5975)
          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.sp1930

5978:                                             ; preds = %5976
  %5979 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          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.sp1930

5980:                                             ; preds = %5978
  %5981 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          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.sp1930

5982:                                             ; preds = %5980
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %559) #6
  store i8 0, ptr %559, align 1, !tbaa !5
  %5983 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %559)
          to label %5984 unwind label %5993

5984:                                             ; preds = %5982
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %559) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %560) #6
  store i8 1, ptr %560, align 1, !tbaa !5
  %5985 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %560)
          to label %5986 unwind label %5995

5986:                                             ; preds = %5984
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %560) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1629 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1629:                                   ; preds = %5986, %5999
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %561) #6
  store i8 0, ptr %561, align 1, !tbaa !5
  %5987 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %561)
          to label %5988 unwind label %5997

5988:                                             ; preds = %.preheader1629
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %561) #6
  %5989 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          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.sp1631

5990:                                             ; preds = %5988
  %5991 = load i8, ptr %5989, align 1, !tbaa !5, !range !9, !noundef !10
  %5992 = trunc nuw i8 %5991 to i1
  br i1 %5992, label %.invoke2294, label %5999

5993:                                             ; preds = %5982
  %5994 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %559) #6
  br label %.loopexit.split-lp

5995:                                             ; preds = %5984
  %5996 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %560) #6
  br label %.loopexit.split-lp

5997:                                             ; preds = %.preheader1629
  %5998 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %561) #6
  br label %.loopexit.split-lp

5999:                                             ; preds = %5990
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1629 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1631, !llvm.loop !122

6000:                                             ; preds = %2017
  %6001 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not669 = icmp eq i64 %6001, 3
  br i1 %.not669, label %6002, label %.invoke2315

6002:                                             ; preds = %6000
  %6003 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %.not670 = icmp eq i64 %6003, 0
  br i1 %.not670, label %6004, label %.invoke2315

6004:                                             ; preds = %6002
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6005 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6005:                                             ; preds = %6004
  %6006 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef 1)
          to label %6007 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6007:                                             ; preds = %6005
  %6008 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1759)
          to label %.invoke2296 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.invoke2296:                                      ; preds = %6007
  %6009 = load i8, ptr %6008, align 1, !tbaa !5, !range !9, !noundef !10
  %6010 = trunc nuw i8 %6009 to i1
  %.2314 = select i1 %6010, i32 152, i32 156
  %6011 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef %.2314)
          to label %6012 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6012:                                             ; preds = %.invoke2296
  %6013 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %20, i32 noundef 10)
          to label %6014 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6014:                                             ; preds = %6012
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %562) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %563) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %563, i32 noundef 0)
          to label %6015 unwind label %6040

6015:                                             ; preds = %6014
  %6016 = 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) %563)
          to label %6017 unwind label %6042

6017:                                             ; preds = %6015
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %562, ptr noundef nonnull align 1 dereferenceable(1) %6016)
          to label %6018 unwind label %6042

6018:                                             ; preds = %6017
  %6019 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %562)
          to label %6020 unwind label %6044

6020:                                             ; preds = %6018
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %562) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %563) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %563) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %562) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %564) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %565) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %565, i32 noundef 0)
          to label %6021 unwind label %6048

6021:                                             ; preds = %6020
  %6022 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %565, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %6023 unwind label %6050

6023:                                             ; preds = %6021
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %564, ptr noundef nonnull align 1 dereferenceable(1) %6022)
          to label %6024 unwind label %6050

6024:                                             ; preds = %6023
  %6025 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %564)
          to label %6026 unwind label %6052

6026:                                             ; preds = %6024
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %564) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %565) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %565) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %564) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %566) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %566, i32 noundef 20)
          to label %6027 unwind label %6056

6027:                                             ; preds = %6026
  %6028 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %566)
          to label %6029 unwind label %6058

6029:                                             ; preds = %6027
  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.start.p0(i64 24, ptr nonnull %567) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %567, i32 noundef -3)
          to label %6030 unwind label %6061

6030:                                             ; preds = %6029
  %6031 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %567)
          to label %6032 unwind label %6063

6032:                                             ; preds = %6030
  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 1, ptr nonnull %568) #6
  store i8 1, ptr %568, align 1, !tbaa !5
  %6033 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %568)
          to label %6034 unwind label %6066

6034:                                             ; preds = %6032
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %568) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1831 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1831:                                   ; preds = %6034, %6039
  %6035 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6036 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1833

6036:                                             ; preds = %.preheader1831
  %6037 = load i8, ptr %6035, align 1, !tbaa !5, !range !9, !noundef !10
  %6038 = trunc nuw i8 %6037 to i1
  br i1 %6038, label %6068, label %6039

6039:                                             ; preds = %6036
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1831 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1833, !llvm.loop !123

6040:                                             ; preds = %6014
  %6041 = landingpad { ptr, i32 }
          cleanup
  br label %6047

6042:                                             ; preds = %6017, %6015
  %6043 = landingpad { ptr, i32 }
          cleanup
  br label %6046

6044:                                             ; preds = %6018
  %6045 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %562) #6
  br label %6046

6046:                                             ; preds = %6044, %6042
  %.pn671 = phi { ptr, i32 } [ %6045, %6044 ], [ %6043, %6042 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %563) #6
  br label %6047

6047:                                             ; preds = %6046, %6040
  %.pn671.pn = phi { ptr, i32 } [ %.pn671, %6046 ], [ %6041, %6040 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %563) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %562) #6
  br label %.loopexit.split-lp

6048:                                             ; preds = %6020
  %6049 = landingpad { ptr, i32 }
          cleanup
  br label %6055

6050:                                             ; preds = %6023, %6021
  %6051 = landingpad { ptr, i32 }
          cleanup
  br label %6054

6052:                                             ; preds = %6024
  %6053 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %564) #6
  br label %6054

6054:                                             ; preds = %6052, %6050
  %.pn674 = phi { ptr, i32 } [ %6053, %6052 ], [ %6051, %6050 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %565) #6
  br label %6055

6055:                                             ; preds = %6054, %6048
  %.pn674.pn = phi { ptr, i32 } [ %.pn674, %6054 ], [ %6049, %6048 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %565) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %564) #6
  br label %.loopexit.split-lp

6056:                                             ; preds = %6026
  %6057 = landingpad { ptr, i32 }
          cleanup
  br label %6060

6058:                                             ; preds = %6027
  %6059 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %566) #6
  br label %6060

6060:                                             ; preds = %6058, %6056
  %.pn677 = phi { ptr, i32 } [ %6059, %6058 ], [ %6057, %6056 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %566) #6
  br label %.loopexit.split-lp

6061:                                             ; preds = %6029
  %6062 = landingpad { ptr, i32 }
          cleanup
  br label %6065

6063:                                             ; preds = %6030
  %6064 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %567) #6
  br label %6065

6065:                                             ; preds = %6063, %6061
  %.pn679 = phi { ptr, i32 } [ %6064, %6063 ], [ %6062, %6061 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %567) #6
  br label %.loopexit.split-lp

6066:                                             ; preds = %6032
  %6067 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %568) #6
  br label %.loopexit.split-lp

6068:                                             ; preds = %6036
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6069 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6069:                                             ; preds = %6068
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %569) #6
  store i8 0, ptr %569, align 1, !tbaa !5
  %6070 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %569)
          to label %6071 unwind label %6097

6071:                                             ; preds = %6069
  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 %6072 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6072:                                             ; preds = %6071
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %570) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %571) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %571, i32 noundef 1)
          to label %6073 unwind label %6099

6073:                                             ; preds = %6072
  %6074 = 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) %571)
          to label %6075 unwind label %6101

6075:                                             ; preds = %6073
  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) %6074)
          to label %6076 unwind label %6101

6076:                                             ; preds = %6075
  %6077 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %570)
          to label %6078 unwind label %6103

6078:                                             ; preds = %6076
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %570) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %571) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %571) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %570) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %572) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %573) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %573, i32 noundef 0)
          to label %6079 unwind label %6107

6079:                                             ; preds = %6078
  %6080 = 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) %14)
          to label %6081 unwind label %6109

6081:                                             ; preds = %6079
  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) %6080)
          to label %6082 unwind label %6109

6082:                                             ; preds = %6081
  %6083 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %572)
          to label %6084 unwind label %6111

6084:                                             ; preds = %6082
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %572) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %573) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %573) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %572) #6
  %6085 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %6086 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6086:                                             ; preds = %6084
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %574) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %574, i32 noundef -2)
          to label %6087 unwind label %6115

6087:                                             ; preds = %6086
  %6088 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %574)
          to label %6089 unwind label %6117

6089:                                             ; preds = %6087
  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.start.p0(i64 1, ptr nonnull %575) #6
  store i8 1, ptr %575, align 1, !tbaa !5
  %6090 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %575)
          to label %6091 unwind label %6120

6091:                                             ; preds = %6089
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %575) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1823 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1823:                                   ; preds = %6091, %6096
  %6092 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6093 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1825

6093:                                             ; preds = %.preheader1823
  %6094 = load i8, ptr %6092, align 1, !tbaa !5, !range !9, !noundef !10
  %6095 = trunc nuw i8 %6094 to i1
  br i1 %6095, label %6122, label %6096

6096:                                             ; preds = %6093
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1823 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1825, !llvm.loop !124

6097:                                             ; preds = %6069
  %6098 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %569) #6
  br label %.loopexit.split-lp

6099:                                             ; preds = %6072
  %6100 = landingpad { ptr, i32 }
          cleanup
  br label %6106

6101:                                             ; preds = %6075, %6073
  %6102 = landingpad { ptr, i32 }
          cleanup
  br label %6105

6103:                                             ; preds = %6076
  %6104 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %570) #6
  br label %6105

6105:                                             ; preds = %6103, %6101
  %.pn681 = phi { ptr, i32 } [ %6104, %6103 ], [ %6102, %6101 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %571) #6
  br label %6106

6106:                                             ; preds = %6105, %6099
  %.pn681.pn = phi { ptr, i32 } [ %.pn681, %6105 ], [ %6100, %6099 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %571) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %570) #6
  br label %.loopexit.split-lp

6107:                                             ; preds = %6078
  %6108 = landingpad { ptr, i32 }
          cleanup
  br label %6114

6109:                                             ; preds = %6081, %6079
  %6110 = landingpad { ptr, i32 }
          cleanup
  br label %6113

6111:                                             ; preds = %6082
  %6112 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %572) #6
  br label %6113

6113:                                             ; preds = %6111, %6109
  %.pn684 = phi { ptr, i32 } [ %6112, %6111 ], [ %6110, %6109 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %573) #6
  br label %6114

6114:                                             ; preds = %6113, %6107
  %.pn684.pn = phi { ptr, i32 } [ %.pn684, %6113 ], [ %6108, %6107 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %573) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %572) #6
  br label %.loopexit.split-lp

6115:                                             ; preds = %6086
  %6116 = landingpad { ptr, i32 }
          cleanup
  br label %6119

6117:                                             ; preds = %6087
  %6118 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %574) #6
  br label %6119

6119:                                             ; preds = %6117, %6115
  %.pn687 = phi { ptr, i32 } [ %6118, %6117 ], [ %6116, %6115 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %574) #6
  br label %.loopexit.split-lp

6120:                                             ; preds = %6089
  %6121 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %575) #6
  br label %.loopexit.split-lp

6122:                                             ; preds = %6093
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6123 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6123:                                             ; preds = %6122
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %576) #6
  store i8 0, ptr %576, align 1, !tbaa !5
  %6124 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %576)
          to label %6125 unwind label %6149

6125:                                             ; preds = %6123
  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 %6126 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6126:                                             ; preds = %6125
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %577) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %577, i32 noundef 10)
          to label %6127 unwind label %6151

6127:                                             ; preds = %6126
  %6128 = 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) %577)
          to label %6129 unwind label %6153

6129:                                             ; preds = %6127
  %6130 = 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) %6128)
          to label %6131 unwind label %6153

6131:                                             ; preds = %6129
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %577) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %577) #6
  %6132 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %6133 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6133:                                             ; preds = %6131
  %6134 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %6135 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6135:                                             ; preds = %6133
  %6136 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %6137 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6137:                                             ; preds = %6135
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %578) #6
  store i8 0, ptr %578, align 1, !tbaa !5
  %6138 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %578)
          to label %6139 unwind label %6156

6139:                                             ; preds = %6137
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %578) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %579) #6
  store i8 1, ptr %579, align 1, !tbaa !5
  %6140 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %579)
          to label %6141 unwind label %6158

6141:                                             ; preds = %6139
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %579) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1816 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1816:                                   ; preds = %6141, %6162
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %580) #6
  store i8 0, ptr %580, align 1, !tbaa !5
  %6142 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %580)
          to label %6143 unwind label %6160

6143:                                             ; preds = %.preheader1816
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %580) #6
  %6144 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          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.sp1818

6145:                                             ; preds = %6143
  %6146 = load i8, ptr %6144, align 1, !tbaa !5, !range !9, !noundef !10
  %6147 = trunc nuw i8 %6146 to i1
  br i1 %6147, label %6148, label %6162

6148:                                             ; preds = %6145
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6163 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6149:                                             ; preds = %6123
  %6150 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %576) #6
  br label %.loopexit.split-lp

6151:                                             ; preds = %6126
  %6152 = landingpad { ptr, i32 }
          cleanup
  br label %6155

6153:                                             ; preds = %6129, %6127
  %6154 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %577) #6
  br label %6155

6155:                                             ; preds = %6153, %6151
  %.pn689 = phi { ptr, i32 } [ %6154, %6153 ], [ %6152, %6151 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %577) #6
  br label %.loopexit.split-lp

6156:                                             ; preds = %6137
  %6157 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %578) #6
  br label %.loopexit.split-lp

6158:                                             ; preds = %6139
  %6159 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %579) #6
  br label %.loopexit.split-lp

6160:                                             ; preds = %.preheader1816
  %6161 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %580) #6
  br label %.loopexit.split-lp

6162:                                             ; preds = %6145
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1816 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1818, !llvm.loop !125

6163:                                             ; preds = %6148
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %581) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %581, i32 noundef 8)
          to label %6164 unwind label %6188

6164:                                             ; preds = %6163
  %6165 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %581)
          to label %6166 unwind label %6190

6166:                                             ; preds = %6164
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %581) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %581) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %582) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %583) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %583, i32 noundef 24)
          to label %6167 unwind label %6193

6167:                                             ; preds = %6166
  %6168 = 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) %583)
          to label %6169 unwind label %6195

6169:                                             ; preds = %6167
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %582, ptr noundef nonnull align 1 dereferenceable(1) %6168)
          to label %6170 unwind label %6195

6170:                                             ; preds = %6169
  %6171 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %582)
          to label %6172 unwind label %6197

6172:                                             ; preds = %6170
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %582) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %583) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %583) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %582) #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 3)
          to label %6173 unwind label %6201

6173:                                             ; preds = %6172
  %6174 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %584)
          to label %6175 unwind label %6203

6175:                                             ; preds = %6173
  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.start.p0(i64 24, ptr nonnull %585) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %585, i32 noundef 3)
          to label %6176 unwind label %6206

6176:                                             ; preds = %6175
  %6177 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %585)
          to label %6178 unwind label %6208

6178:                                             ; preds = %6176
  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
  %6179 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6180 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6180:                                             ; preds = %6178
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %586) #6
  store i8 1, ptr %586, align 1, !tbaa !5
  %6181 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %586)
          to label %6182 unwind label %6211

6182:                                             ; preds = %6180
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %586) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1808 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1808:                                   ; preds = %6182, %6187
  %6183 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6184 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1810

6184:                                             ; preds = %.preheader1808
  %6185 = load i8, ptr %6183, align 1, !tbaa !5, !range !9, !noundef !10
  %6186 = trunc nuw i8 %6185 to i1
  br i1 %6186, label %6213, label %6187

6187:                                             ; preds = %6184
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1808 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1810, !llvm.loop !126

6188:                                             ; preds = %6163
  %6189 = landingpad { ptr, i32 }
          cleanup
  br label %6192

6190:                                             ; preds = %6164
  %6191 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %581) #6
  br label %6192

6192:                                             ; preds = %6190, %6188
  %.pn691 = phi { ptr, i32 } [ %6191, %6190 ], [ %6189, %6188 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %581) #6
  br label %.loopexit.split-lp

6193:                                             ; preds = %6166
  %6194 = landingpad { ptr, i32 }
          cleanup
  br label %6200

6195:                                             ; preds = %6169, %6167
  %6196 = landingpad { ptr, i32 }
          cleanup
  br label %6199

6197:                                             ; preds = %6170
  %6198 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %582) #6
  br label %6199

6199:                                             ; preds = %6197, %6195
  %.pn693 = phi { ptr, i32 } [ %6198, %6197 ], [ %6196, %6195 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %583) #6
  br label %6200

6200:                                             ; preds = %6199, %6193
  %.pn693.pn = phi { ptr, i32 } [ %.pn693, %6199 ], [ %6194, %6193 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %583) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %582) #6
  br label %.loopexit.split-lp

6201:                                             ; preds = %6172
  %6202 = landingpad { ptr, i32 }
          cleanup
  br label %6205

6203:                                             ; preds = %6173
  %6204 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %584) #6
  br label %6205

6205:                                             ; preds = %6203, %6201
  %.pn696 = phi { ptr, i32 } [ %6204, %6203 ], [ %6202, %6201 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %584) #6
  br label %.loopexit.split-lp

6206:                                             ; preds = %6175
  %6207 = landingpad { ptr, i32 }
          cleanup
  br label %6210

6208:                                             ; preds = %6176
  %6209 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %585) #6
  br label %6210

6210:                                             ; preds = %6208, %6206
  %.pn698 = phi { ptr, i32 } [ %6209, %6208 ], [ %6207, %6206 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %585) #6
  br label %.loopexit.split-lp

6211:                                             ; preds = %6180
  %6212 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %586) #6
  br label %.loopexit.split-lp

6213:                                             ; preds = %6184
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6214 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6214:                                             ; preds = %6213
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %587) #6
  store i8 0, ptr %587, align 1, !tbaa !5
  %6215 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %587)
          to label %6216 unwind label %6242

6216:                                             ; preds = %6214
  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 %6217 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6217:                                             ; preds = %6216
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %588) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %588, i32 noundef 64)
          to label %6218 unwind label %6244

6218:                                             ; preds = %6217
  %6219 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %588)
          to label %6220 unwind label %6246

6220:                                             ; preds = %6218
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %588) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %588) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %589) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %590) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %590, i32 noundef 27)
          to label %6221 unwind label %6249

6221:                                             ; preds = %6220
  %6222 = 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) %590)
          to label %6223 unwind label %6251

6223:                                             ; preds = %6221
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %589, ptr noundef nonnull align 1 dereferenceable(1) %6222)
          to label %6224 unwind label %6251

6224:                                             ; preds = %6223
  %6225 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %589)
          to label %6226 unwind label %6253

6226:                                             ; preds = %6224
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %589) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %590) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %590) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %589) #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 32)
          to label %6227 unwind label %6257

6227:                                             ; preds = %6226
  %6228 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %591)
          to label %6229 unwind label %6259

6229:                                             ; preds = %6227
  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.start.p0(i64 24, ptr nonnull %592) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %592, i32 noundef 3)
          to label %6230 unwind label %6262

6230:                                             ; preds = %6229
  %6231 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %592)
          to label %6232 unwind label %6264

6232:                                             ; preds = %6230
  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
  %6233 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6234 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6234:                                             ; preds = %6232
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %593) #6
  store i8 1, ptr %593, align 1, !tbaa !5
  %6235 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %593)
          to label %6236 unwind label %6267

6236:                                             ; preds = %6234
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %593) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1801 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1801:                                   ; preds = %6236, %6241
  %6237 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6238 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1803

6238:                                             ; preds = %.preheader1801
  %6239 = load i8, ptr %6237, align 1, !tbaa !5, !range !9, !noundef !10
  %6240 = trunc nuw i8 %6239 to i1
  br i1 %6240, label %6269, label %6241

6241:                                             ; preds = %6238
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1801 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1803, !llvm.loop !127

6242:                                             ; preds = %6214
  %6243 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %587) #6
  br label %.loopexit.split-lp

6244:                                             ; preds = %6217
  %6245 = landingpad { ptr, i32 }
          cleanup
  br label %6248

6246:                                             ; preds = %6218
  %6247 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %588) #6
  br label %6248

6248:                                             ; preds = %6246, %6244
  %.pn700 = phi { ptr, i32 } [ %6247, %6246 ], [ %6245, %6244 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %588) #6
  br label %.loopexit.split-lp

6249:                                             ; preds = %6220
  %6250 = landingpad { ptr, i32 }
          cleanup
  br label %6256

6251:                                             ; preds = %6223, %6221
  %6252 = landingpad { ptr, i32 }
          cleanup
  br label %6255

6253:                                             ; preds = %6224
  %6254 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %589) #6
  br label %6255

6255:                                             ; preds = %6253, %6251
  %.pn702 = phi { ptr, i32 } [ %6254, %6253 ], [ %6252, %6251 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %590) #6
  br label %6256

6256:                                             ; preds = %6255, %6249
  %.pn702.pn = phi { ptr, i32 } [ %.pn702, %6255 ], [ %6250, %6249 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %590) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %589) #6
  br label %.loopexit.split-lp

6257:                                             ; preds = %6226
  %6258 = landingpad { ptr, i32 }
          cleanup
  br label %6261

6259:                                             ; preds = %6227
  %6260 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %591) #6
  br label %6261

6261:                                             ; preds = %6259, %6257
  %.pn705 = phi { ptr, i32 } [ %6260, %6259 ], [ %6258, %6257 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %591) #6
  br label %.loopexit.split-lp

6262:                                             ; preds = %6229
  %6263 = landingpad { ptr, i32 }
          cleanup
  br label %6266

6264:                                             ; preds = %6230
  %6265 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %592) #6
  br label %6266

6266:                                             ; preds = %6264, %6262
  %.pn707 = phi { ptr, i32 } [ %6265, %6264 ], [ %6263, %6262 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %592) #6
  br label %.loopexit.split-lp

6267:                                             ; preds = %6234
  %6268 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %593) #6
  br label %.loopexit.split-lp

6269:                                             ; preds = %6238
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6270 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6270:                                             ; preds = %6269
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %594) #6
  store i8 0, ptr %594, align 1, !tbaa !5
  %6271 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %594)
          to label %6272 unwind label %6295

6272:                                             ; preds = %6270
  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 %6273 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6273:                                             ; preds = %6272
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %595) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %595, i32 noundef 128)
          to label %6274 unwind label %6297

6274:                                             ; preds = %6273
  %6275 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %595)
          to label %6276 unwind label %6299

6276:                                             ; preds = %6274
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %595) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %595) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %596) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %597) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %597, i32 noundef 59)
          to label %6277 unwind label %6302

6277:                                             ; preds = %6276
  %6278 = 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) %597)
          to label %6279 unwind label %6304

6279:                                             ; preds = %6277
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %596, ptr noundef nonnull align 1 dereferenceable(1) %6278)
          to label %6280 unwind label %6304

6280:                                             ; preds = %6279
  %6281 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %596)
          to label %6282 unwind label %6306

6282:                                             ; preds = %6280
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %596) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %597) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %597) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %596) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %598) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %598, i32 noundef 3)
          to label %6283 unwind label %6310

6283:                                             ; preds = %6282
  %6284 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %598)
          to label %6285 unwind label %6312

6285:                                             ; preds = %6283
  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
  %6286 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6287 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6287:                                             ; preds = %6285
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %599) #6
  store i8 1, ptr %599, align 1, !tbaa !5
  %6288 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %599)
          to label %6289 unwind label %6315

6289:                                             ; preds = %6287
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %599) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1793 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1793:                                   ; preds = %6289, %6294
  %6290 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6291 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1795

6291:                                             ; preds = %.preheader1793
  %6292 = load i8, ptr %6290, align 1, !tbaa !5, !range !9, !noundef !10
  %6293 = trunc nuw i8 %6292 to i1
  br i1 %6293, label %6317, label %6294

6294:                                             ; preds = %6291
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1793 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1795, !llvm.loop !128

6295:                                             ; preds = %6270
  %6296 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %594) #6
  br label %.loopexit.split-lp

6297:                                             ; preds = %6273
  %6298 = landingpad { ptr, i32 }
          cleanup
  br label %6301

6299:                                             ; preds = %6274
  %6300 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %595) #6
  br label %6301

6301:                                             ; preds = %6299, %6297
  %.pn709 = phi { ptr, i32 } [ %6300, %6299 ], [ %6298, %6297 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %595) #6
  br label %.loopexit.split-lp

6302:                                             ; preds = %6276
  %6303 = landingpad { ptr, i32 }
          cleanup
  br label %6309

6304:                                             ; preds = %6279, %6277
  %6305 = landingpad { ptr, i32 }
          cleanup
  br label %6308

6306:                                             ; preds = %6280
  %6307 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %596) #6
  br label %6308

6308:                                             ; preds = %6306, %6304
  %.pn711 = phi { ptr, i32 } [ %6307, %6306 ], [ %6305, %6304 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %597) #6
  br label %6309

6309:                                             ; preds = %6308, %6302
  %.pn711.pn = phi { ptr, i32 } [ %.pn711, %6308 ], [ %6303, %6302 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %597) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %596) #6
  br label %.loopexit.split-lp

6310:                                             ; preds = %6282
  %6311 = landingpad { ptr, i32 }
          cleanup
  br label %6314

6312:                                             ; preds = %6283
  %6313 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %598) #6
  br label %6314

6314:                                             ; preds = %6312, %6310
  %.pn714 = phi { ptr, i32 } [ %6313, %6312 ], [ %6311, %6310 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %598) #6
  br label %.loopexit.split-lp

6315:                                             ; preds = %6287
  %6316 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %599) #6
  br label %.loopexit.split-lp

6317:                                             ; preds = %6291
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6318 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6318:                                             ; preds = %6317
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %600) #6
  store i8 0, ptr %600, align 1, !tbaa !5
  %6319 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %600)
          to label %6320 unwind label %6351

6320:                                             ; preds = %6318
  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 %6321 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6321:                                             ; preds = %6320
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %601) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %601, i32 noundef 32)
          to label %6322 unwind label %6353

6322:                                             ; preds = %6321
  %6323 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %601)
          to label %6324 unwind label %6355

6324:                                             ; preds = %6322
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %601) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %601) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %602) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %603) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %603, i32 noundef -37)
          to label %6325 unwind label %6358

6325:                                             ; preds = %6324
  %6326 = 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) %603)
          to label %6327 unwind label %6360

6327:                                             ; preds = %6325
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %602, ptr noundef nonnull align 1 dereferenceable(1) %6326)
          to label %6328 unwind label %6360

6328:                                             ; preds = %6327
  %6329 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %602)
          to label %6330 unwind label %6362

6330:                                             ; preds = %6328
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %602) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %603) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %603) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %602) #6
  %6331 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1759)
          to label %6332 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6332:                                             ; preds = %6330
  %6333 = load i8, ptr %6331, align 1, !tbaa !5, !range !9, !noundef !10
  %6334 = trunc nuw i8 %6333 to i1
  br i1 %6334, label %6381, label %6335

6335:                                             ; preds = %6332
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %604) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %604, i32 noundef -31)
          to label %6336 unwind label %6366

6336:                                             ; preds = %6335
  %6337 = 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 %6338 unwind label %6368

6338:                                             ; preds = %6336
  %6339 = 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) %6337)
          to label %6340 unwind label %6368

6340:                                             ; preds = %6338
  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.start.p0(i64 24, ptr nonnull %605) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %605, i32 noundef -30)
          to label %6341 unwind label %6371

6341:                                             ; preds = %6340
  %6342 = 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 %6343 unwind label %6373

6343:                                             ; preds = %6341
  %6344 = 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) %6342)
          to label %6345 unwind label %6373

6345:                                             ; preds = %6343
  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
  %6346 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 6)
          to label %6347 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6347:                                             ; preds = %6345
  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 6)
          to label %6348 unwind label %6376

6348:                                             ; preds = %6347
  %6349 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %606)
          to label %6350 unwind label %6378

6350:                                             ; preds = %6348
  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
  br label %6412

6351:                                             ; preds = %6318
  %6352 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %600) #6
  br label %.loopexit.split-lp

6353:                                             ; preds = %6321
  %6354 = landingpad { ptr, i32 }
          cleanup
  br label %6357

6355:                                             ; preds = %6322
  %6356 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %601) #6
  br label %6357

6357:                                             ; preds = %6355, %6353
  %.pn716 = phi { ptr, i32 } [ %6356, %6355 ], [ %6354, %6353 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %601) #6
  br label %.loopexit.split-lp

6358:                                             ; preds = %6324
  %6359 = landingpad { ptr, i32 }
          cleanup
  br label %6365

6360:                                             ; preds = %6327, %6325
  %6361 = landingpad { ptr, i32 }
          cleanup
  br label %6364

6362:                                             ; preds = %6328
  %6363 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %602) #6
  br label %6364

6364:                                             ; preds = %6362, %6360
  %.pn718 = phi { ptr, i32 } [ %6363, %6362 ], [ %6361, %6360 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %603) #6
  br label %6365

6365:                                             ; preds = %6364, %6358
  %.pn718.pn = phi { ptr, i32 } [ %.pn718, %6364 ], [ %6359, %6358 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %603) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %602) #6
  br label %.loopexit.split-lp

6366:                                             ; preds = %6335
  %6367 = landingpad { ptr, i32 }
          cleanup
  br label %6370

6368:                                             ; preds = %6338, %6336
  %6369 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %604) #6
  br label %6370

6370:                                             ; preds = %6368, %6366
  %.pn721 = phi { ptr, i32 } [ %6369, %6368 ], [ %6367, %6366 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %604) #6
  br label %.loopexit.split-lp

6371:                                             ; preds = %6340
  %6372 = landingpad { ptr, i32 }
          cleanup
  br label %6375

6373:                                             ; preds = %6343, %6341
  %6374 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %605) #6
  br label %6375

6375:                                             ; preds = %6373, %6371
  %.pn723 = phi { ptr, i32 } [ %6374, %6373 ], [ %6372, %6371 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %605) #6
  br label %.loopexit.split-lp

6376:                                             ; preds = %6347
  %6377 = landingpad { ptr, i32 }
          cleanup
  br label %6380

6378:                                             ; preds = %6348
  %6379 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %606) #6
  br label %6380

6380:                                             ; preds = %6378, %6376
  %.pn725 = phi { ptr, i32 } [ %6379, %6378 ], [ %6377, %6376 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %606) #6
  br label %.loopexit.split-lp

6381:                                             ; preds = %6332
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %607) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %607, i32 noundef -33)
          to label %6382 unwind label %6397

6382:                                             ; preds = %6381
  %6383 = 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) %607)
          to label %6384 unwind label %6399

6384:                                             ; preds = %6382
  %6385 = 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) %6383)
          to label %6386 unwind label %6399

6386:                                             ; preds = %6384
  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
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %608) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %608, i32 noundef -32)
          to label %6387 unwind label %6402

6387:                                             ; preds = %6386
  %6388 = 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 %6389 unwind label %6404

6389:                                             ; preds = %6387
  %6390 = 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) %6388)
          to label %6391 unwind label %6404

6391:                                             ; preds = %6389
  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
  %6392 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 4)
          to label %6393 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6393:                                             ; preds = %6391
  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 4)
          to label %6394 unwind label %6407

6394:                                             ; preds = %6393
  %6395 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %609)
          to label %6396 unwind label %6409

6396:                                             ; preds = %6394
  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
  br label %6412

6397:                                             ; preds = %6381
  %6398 = landingpad { ptr, i32 }
          cleanup
  br label %6401

6399:                                             ; preds = %6384, %6382
  %6400 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %607) #6
  br label %6401

6401:                                             ; preds = %6399, %6397
  %.pn727 = phi { ptr, i32 } [ %6400, %6399 ], [ %6398, %6397 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %607) #6
  br label %.loopexit.split-lp

6402:                                             ; preds = %6386
  %6403 = landingpad { ptr, i32 }
          cleanup
  br label %6406

6404:                                             ; preds = %6389, %6387
  %6405 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %608) #6
  br label %6406

6406:                                             ; preds = %6404, %6402
  %.pn729 = phi { ptr, i32 } [ %6405, %6404 ], [ %6403, %6402 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %608) #6
  br label %.loopexit.split-lp

6407:                                             ; preds = %6393
  %6408 = landingpad { ptr, i32 }
          cleanup
  br label %6411

6409:                                             ; preds = %6394
  %6410 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %609) #6
  br label %6411

6411:                                             ; preds = %6409, %6407
  %.pn731 = phi { ptr, i32 } [ %6410, %6409 ], [ %6408, %6407 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %609) #6
  br label %.loopexit.split-lp

6412:                                             ; preds = %6396, %6350
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %610) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %610, i32 noundef 3)
          to label %6413 unwind label %6425

6413:                                             ; preds = %6412
  %6414 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %610)
          to label %6415 unwind label %6427

6415:                                             ; preds = %6413
  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
  %6416 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6417 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6417:                                             ; preds = %6415
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %611) #6
  store i8 1, ptr %611, align 1, !tbaa !5
  %6418 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %611)
          to label %6419 unwind label %6430

6419:                                             ; preds = %6417
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %611) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1786 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1786:                                   ; preds = %6419, %6424
  %6420 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6421 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1788

6421:                                             ; preds = %.preheader1786
  %6422 = load i8, ptr %6420, align 1, !tbaa !5, !range !9, !noundef !10
  %6423 = trunc nuw i8 %6422 to i1
  br i1 %6423, label %6432, label %6424

6424:                                             ; preds = %6421
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1786 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1788, !llvm.loop !129

6425:                                             ; preds = %6412
  %6426 = landingpad { ptr, i32 }
          cleanup
  br label %6429

6427:                                             ; preds = %6413
  %6428 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %610) #6
  br label %6429

6429:                                             ; preds = %6427, %6425
  %.pn733 = phi { ptr, i32 } [ %6428, %6427 ], [ %6426, %6425 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %610) #6
  br label %.loopexit.split-lp

6430:                                             ; preds = %6417
  %6431 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %611) #6
  br label %.loopexit.split-lp

6432:                                             ; preds = %6421
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6433 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6433:                                             ; preds = %6432
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %612) #6
  store i8 0, ptr %612, align 1, !tbaa !5
  %6434 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %612)
          to label %6435 unwind label %6457

6435:                                             ; preds = %6433
  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 %6436 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6436:                                             ; preds = %6435
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %613) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %613, i32 noundef 2)
          to label %6437 unwind label %6459

6437:                                             ; preds = %6436
  %6438 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %613)
          to label %6439 unwind label %6461

6439:                                             ; preds = %6437
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %613) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %613) #6
  %6440 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %6)
          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.sp1930

6441:                                             ; preds = %6439
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %614) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %614, i32 noundef 1)
          to label %6442 unwind label %6464

6442:                                             ; preds = %6441
  %6443 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %614)
          to label %6444 unwind label %6466

6444:                                             ; preds = %6442
  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
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %615) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %615, i32 noundef 3)
          to label %6445 unwind label %6469

6445:                                             ; preds = %6444
  %6446 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %615)
          to label %6447 unwind label %6471

6447:                                             ; preds = %6445
  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
  %6448 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          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.sp1930

6449:                                             ; preds = %6447
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %616) #6
  store i8 1, ptr %616, align 1, !tbaa !5
  %6450 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %616)
          to label %6451 unwind label %6474

6451:                                             ; preds = %6449
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %616) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1778 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1778:                                   ; preds = %6451, %6456
  %6452 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6453 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1780

6453:                                             ; preds = %.preheader1778
  %6454 = load i8, ptr %6452, align 1, !tbaa !5, !range !9, !noundef !10
  %6455 = trunc nuw i8 %6454 to i1
  br i1 %6455, label %6476, label %6456

6456:                                             ; preds = %6453
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1778 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1780, !llvm.loop !130

6457:                                             ; preds = %6433
  %6458 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %612) #6
  br label %.loopexit.split-lp

6459:                                             ; preds = %6436
  %6460 = landingpad { ptr, i32 }
          cleanup
  br label %6463

6461:                                             ; preds = %6437
  %6462 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %613) #6
  br label %6463

6463:                                             ; preds = %6461, %6459
  %.pn735 = phi { ptr, i32 } [ %6462, %6461 ], [ %6460, %6459 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %613) #6
  br label %.loopexit.split-lp

6464:                                             ; preds = %6441
  %6465 = landingpad { ptr, i32 }
          cleanup
  br label %6468

6466:                                             ; preds = %6442
  %6467 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %614) #6
  br label %6468

6468:                                             ; preds = %6466, %6464
  %.pn737 = phi { ptr, i32 } [ %6467, %6466 ], [ %6465, %6464 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %614) #6
  br label %.loopexit.split-lp

6469:                                             ; preds = %6444
  %6470 = landingpad { ptr, i32 }
          cleanup
  br label %6473

6471:                                             ; preds = %6445
  %6472 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %615) #6
  br label %6473

6473:                                             ; preds = %6471, %6469
  %.pn739 = phi { ptr, i32 } [ %6472, %6471 ], [ %6470, %6469 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %615) #6
  br label %.loopexit.split-lp

6474:                                             ; preds = %6449
  %6475 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %616) #6
  br label %.loopexit.split-lp

6476:                                             ; preds = %6453
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6477 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6477:                                             ; preds = %6476
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %617) #6
  store i8 0, ptr %617, align 1, !tbaa !5
  %6478 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %617)
          to label %6479 unwind label %6501

6479:                                             ; preds = %6477
  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 %6480 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6480:                                             ; preds = %6479
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %618) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %618, i32 noundef 20)
          to label %6481 unwind label %6503

6481:                                             ; preds = %6480
  %6482 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %618)
          to label %6483 unwind label %6505

6483:                                             ; preds = %6481
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %618) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %618) #6
  %6484 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %7)
          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.sp1930

6485:                                             ; preds = %6483
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %619) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %619, i32 noundef 4)
          to label %6486 unwind label %6508

6486:                                             ; preds = %6485
  %6487 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %619)
          to label %6488 unwind label %6510

6488:                                             ; preds = %6486
  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
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %620) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %620, i32 noundef 3)
          to label %6489 unwind label %6513

6489:                                             ; preds = %6488
  %6490 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %620)
          to label %6491 unwind label %6515

6491:                                             ; preds = %6489
  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
  %6492 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          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.sp1930

6493:                                             ; preds = %6491
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %621) #6
  store i8 1, ptr %621, align 1, !tbaa !5
  %6494 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %621)
          to label %6495 unwind label %6518

6495:                                             ; preds = %6493
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %621) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1771 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1771:                                   ; preds = %6495, %6500
  %6496 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6497 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1773

6497:                                             ; preds = %.preheader1771
  %6498 = load i8, ptr %6496, align 1, !tbaa !5, !range !9, !noundef !10
  %6499 = trunc nuw i8 %6498 to i1
  br i1 %6499, label %6520, label %6500

6500:                                             ; preds = %6497
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1771 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1773, !llvm.loop !131

6501:                                             ; preds = %6477
  %6502 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %617) #6
  br label %.loopexit.split-lp

6503:                                             ; preds = %6480
  %6504 = landingpad { ptr, i32 }
          cleanup
  br label %6507

6505:                                             ; preds = %6481
  %6506 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %618) #6
  br label %6507

6507:                                             ; preds = %6505, %6503
  %.pn741 = phi { ptr, i32 } [ %6506, %6505 ], [ %6504, %6503 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %618) #6
  br label %.loopexit.split-lp

6508:                                             ; preds = %6485
  %6509 = landingpad { ptr, i32 }
          cleanup
  br label %6512

6510:                                             ; preds = %6486
  %6511 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %619) #6
  br label %6512

6512:                                             ; preds = %6510, %6508
  %.pn743 = phi { ptr, i32 } [ %6511, %6510 ], [ %6509, %6508 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %619) #6
  br label %.loopexit.split-lp

6513:                                             ; preds = %6488
  %6514 = landingpad { ptr, i32 }
          cleanup
  br label %6517

6515:                                             ; preds = %6489
  %6516 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %620) #6
  br label %6517

6517:                                             ; preds = %6515, %6513
  %.pn745 = phi { ptr, i32 } [ %6516, %6515 ], [ %6514, %6513 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %620) #6
  br label %.loopexit.split-lp

6518:                                             ; preds = %6493
  %6519 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %621) #6
  br label %.loopexit.split-lp

6520:                                             ; preds = %6497
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6521 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6521:                                             ; preds = %6520
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %622) #6
  store i8 0, ptr %622, align 1, !tbaa !5
  %6522 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %622)
          to label %6523 unwind label %6546

6523:                                             ; preds = %6521
  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 %6524 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6524:                                             ; preds = %6523
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %623) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %623, i32 noundef 272)
          to label %6525 unwind label %6548

6525:                                             ; preds = %6524
  %6526 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %623)
          to label %6527 unwind label %6550

6527:                                             ; preds = %6525
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %623) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %623) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %624) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %625) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %625, i32 noundef 0)
          to label %6528 unwind label %6553

6528:                                             ; preds = %6527
  %6529 = 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) %625)
          to label %6530 unwind label %6555

6530:                                             ; preds = %6528
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %624, ptr noundef nonnull align 1 dereferenceable(1) %6529)
          to label %6531 unwind label %6555

6531:                                             ; preds = %6530
  %6532 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %624)
          to label %6533 unwind label %6557

6533:                                             ; preds = %6531
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %624) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %625) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %625) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %624) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %626) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %626, i32 noundef 1)
          to label %6534 unwind label %6561

6534:                                             ; preds = %6533
  %6535 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %626)
          to label %6536 unwind label %6563

6536:                                             ; preds = %6534
  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
  %6537 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6538 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6538:                                             ; preds = %6536
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %627) #6
  store i8 1, ptr %627, align 1, !tbaa !5
  %6539 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %627)
          to label %6540 unwind label %6566

6540:                                             ; preds = %6538
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %627) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1763 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1763:                                   ; preds = %6540, %6545
  %6541 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6542 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1765

6542:                                             ; preds = %.preheader1763
  %6543 = load i8, ptr %6541, align 1, !tbaa !5, !range !9, !noundef !10
  %6544 = trunc nuw i8 %6543 to i1
  br i1 %6544, label %6568, label %6545

6545:                                             ; preds = %6542
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1763 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1765, !llvm.loop !132

6546:                                             ; preds = %6521
  %6547 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %622) #6
  br label %.loopexit.split-lp

6548:                                             ; preds = %6524
  %6549 = landingpad { ptr, i32 }
          cleanup
  br label %6552

6550:                                             ; preds = %6525
  %6551 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %623) #6
  br label %6552

6552:                                             ; preds = %6550, %6548
  %.pn747 = phi { ptr, i32 } [ %6551, %6550 ], [ %6549, %6548 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %623) #6
  br label %.loopexit.split-lp

6553:                                             ; preds = %6527
  %6554 = landingpad { ptr, i32 }
          cleanup
  br label %6560

6555:                                             ; preds = %6530, %6528
  %6556 = landingpad { ptr, i32 }
          cleanup
  br label %6559

6557:                                             ; preds = %6531
  %6558 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %624) #6
  br label %6559

6559:                                             ; preds = %6557, %6555
  %.pn749 = phi { ptr, i32 } [ %6558, %6557 ], [ %6556, %6555 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %625) #6
  br label %6560

6560:                                             ; preds = %6559, %6553
  %.pn749.pn = phi { ptr, i32 } [ %.pn749, %6559 ], [ %6554, %6553 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %625) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %624) #6
  br label %.loopexit.split-lp

6561:                                             ; preds = %6533
  %6562 = landingpad { ptr, i32 }
          cleanup
  br label %6565

6563:                                             ; preds = %6534
  %6564 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %626) #6
  br label %6565

6565:                                             ; preds = %6563, %6561
  %.pn752 = phi { ptr, i32 } [ %6564, %6563 ], [ %6562, %6561 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %626) #6
  br label %.loopexit.split-lp

6566:                                             ; preds = %6538
  %6567 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %627) #6
  br label %.loopexit.split-lp

6568:                                             ; preds = %6542
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6569 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6569:                                             ; preds = %6568
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %628) #6
  store i8 0, ptr %628, align 1, !tbaa !5
  %6570 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %628)
          to label %6571 unwind label %6594

6571:                                             ; preds = %6569
  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 %6572 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6572:                                             ; preds = %6571
  %6573 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef -2)
          to label %6574 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6574:                                             ; preds = %6572
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %629) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %629, i32 noundef -8192)
          to label %6575 unwind label %6596

6575:                                             ; preds = %6574
  %6576 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %629)
          to label %6577 unwind label %6598

6577:                                             ; preds = %6575
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %629) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %629) #6
  %6578 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6579 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6579:                                             ; preds = %6577
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %630) #6
  store i8 1, ptr %630, align 1, !tbaa !5
  %6580 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %630)
          to label %6581 unwind label %6601

6581:                                             ; preds = %6579
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %630) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %631) #6
  store i8 1, ptr %631, align 1, !tbaa !5
  %6582 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %631)
          to label %6583 unwind label %6603

6583:                                             ; preds = %6581
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %631) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1756 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1756:                                   ; preds = %6583, %6607
  %6584 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1755)
          to label %6585 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1758

6585:                                             ; preds = %.preheader1756
  %6586 = 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) %6584)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %632) #6
  store i8 0, ptr %632, align 1, !tbaa !5
  %6587 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %632)
          to label %6588 unwind label %6605

6588:                                             ; preds = %6585
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %632) #6
  %6589 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %6590 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1758

6590:                                             ; preds = %6588
  %6591 = load i8, ptr %6589, align 1, !tbaa !5, !range !9, !noundef !10
  %6592 = trunc nuw i8 %6591 to i1
  br i1 %6592, label %6593, label %6607

6593:                                             ; preds = %6590
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6608 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6594:                                             ; preds = %6569
  %6595 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %628) #6
  br label %.loopexit.split-lp

6596:                                             ; preds = %6574
  %6597 = landingpad { ptr, i32 }
          cleanup
  br label %6600

6598:                                             ; preds = %6575
  %6599 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %629) #6
  br label %6600

6600:                                             ; preds = %6598, %6596
  %.pn754 = phi { ptr, i32 } [ %6599, %6598 ], [ %6597, %6596 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %629) #6
  br label %.loopexit.split-lp

6601:                                             ; preds = %6579
  %6602 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %630) #6
  br label %.loopexit.split-lp

6603:                                             ; preds = %6581
  %6604 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %631) #6
  br label %.loopexit.split-lp

6605:                                             ; preds = %6585
  %6606 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %632) #6
  br label %.loopexit.split-lp

6607:                                             ; preds = %6590
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1756 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1758, !llvm.loop !133

6608:                                             ; preds = %6593
  %6609 = 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 %6610 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6610:                                             ; preds = %6608
  %6611 = 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) %6609)
          to label %6612 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6612:                                             ; preds = %6610
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %633) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %634) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %634, i32 noundef 0)
          to label %6613 unwind label %6638

6613:                                             ; preds = %6612
  %6614 = 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) %634)
          to label %6615 unwind label %6640

6615:                                             ; preds = %6613
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %633, ptr noundef nonnull align 1 dereferenceable(1) %6614)
          to label %6616 unwind label %6640

6616:                                             ; preds = %6615
  %6617 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %633)
          to label %6618 unwind label %6642

6618:                                             ; preds = %6616
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %633) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %634) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %634) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %633) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %635) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %636) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %636, i32 noundef 0)
          to label %6619 unwind label %6646

6619:                                             ; preds = %6618
  %6620 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %636, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %6621 unwind label %6648

6621:                                             ; preds = %6619
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %635, ptr noundef nonnull align 1 dereferenceable(1) %6620)
          to label %6622 unwind label %6648

6622:                                             ; preds = %6621
  %6623 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %635)
          to label %6624 unwind label %6650

6624:                                             ; preds = %6622
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %635) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %636) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %636) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %635) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %637) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %637, i32 noundef 22)
          to label %6625 unwind label %6654

6625:                                             ; preds = %6624
  %6626 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %637)
          to label %6627 unwind label %6656

6627:                                             ; preds = %6625
  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.start.p0(i64 24, ptr nonnull %638) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %638, i32 noundef -3)
          to label %6628 unwind label %6659

6628:                                             ; preds = %6627
  %6629 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %638)
          to label %6630 unwind label %6661

6630:                                             ; preds = %6628
  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 1, ptr nonnull %639) #6
  store i8 1, ptr %639, align 1, !tbaa !5
  %6631 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %639)
          to label %6632 unwind label %6664

6632:                                             ; preds = %6630
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %639) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1748 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1748:                                   ; preds = %6632, %6637
  %6633 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6634 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1750

6634:                                             ; preds = %.preheader1748
  %6635 = load i8, ptr %6633, align 1, !tbaa !5, !range !9, !noundef !10
  %6636 = trunc nuw i8 %6635 to i1
  br i1 %6636, label %6666, label %6637

6637:                                             ; preds = %6634
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1748 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1750, !llvm.loop !134

6638:                                             ; preds = %6612
  %6639 = landingpad { ptr, i32 }
          cleanup
  br label %6645

6640:                                             ; preds = %6615, %6613
  %6641 = landingpad { ptr, i32 }
          cleanup
  br label %6644

6642:                                             ; preds = %6616
  %6643 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %633) #6
  br label %6644

6644:                                             ; preds = %6642, %6640
  %.pn756 = phi { ptr, i32 } [ %6643, %6642 ], [ %6641, %6640 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %634) #6
  br label %6645

6645:                                             ; preds = %6644, %6638
  %.pn756.pn = phi { ptr, i32 } [ %.pn756, %6644 ], [ %6639, %6638 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %634) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %633) #6
  br label %.loopexit.split-lp

6646:                                             ; preds = %6618
  %6647 = landingpad { ptr, i32 }
          cleanup
  br label %6653

6648:                                             ; preds = %6621, %6619
  %6649 = landingpad { ptr, i32 }
          cleanup
  br label %6652

6650:                                             ; preds = %6622
  %6651 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %635) #6
  br label %6652

6652:                                             ; preds = %6650, %6648
  %.pn759 = phi { ptr, i32 } [ %6651, %6650 ], [ %6649, %6648 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %636) #6
  br label %6653

6653:                                             ; preds = %6652, %6646
  %.pn759.pn = phi { ptr, i32 } [ %.pn759, %6652 ], [ %6647, %6646 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %636) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %635) #6
  br label %.loopexit.split-lp

6654:                                             ; preds = %6624
  %6655 = landingpad { ptr, i32 }
          cleanup
  br label %6658

6656:                                             ; preds = %6625
  %6657 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %637) #6
  br label %6658

6658:                                             ; preds = %6656, %6654
  %.pn762 = phi { ptr, i32 } [ %6657, %6656 ], [ %6655, %6654 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %637) #6
  br label %.loopexit.split-lp

6659:                                             ; preds = %6627
  %6660 = landingpad { ptr, i32 }
          cleanup
  br label %6663

6661:                                             ; preds = %6628
  %6662 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %638) #6
  br label %6663

6663:                                             ; preds = %6661, %6659
  %.pn764 = phi { ptr, i32 } [ %6662, %6661 ], [ %6660, %6659 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %638) #6
  br label %.loopexit.split-lp

6664:                                             ; preds = %6630
  %6665 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %639) #6
  br label %.loopexit.split-lp

6666:                                             ; preds = %6634
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6667 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6667:                                             ; preds = %6666
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %640) #6
  store i8 0, ptr %640, align 1, !tbaa !5
  %6668 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %640)
          to label %6669 unwind label %6695

6669:                                             ; preds = %6667
  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 %6670 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6670:                                             ; preds = %6669
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %641) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %642) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %642, i32 noundef 1)
          to label %6671 unwind label %6697

6671:                                             ; preds = %6670
  %6672 = 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) %642)
          to label %6673 unwind label %6699

6673:                                             ; preds = %6671
  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) %6672)
          to label %6674 unwind label %6699

6674:                                             ; preds = %6673
  %6675 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %641)
          to label %6676 unwind label %6701

6676:                                             ; preds = %6674
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %641) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %642) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %642) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %641) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %643) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %644) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %644, i32 noundef 0)
          to label %6677 unwind label %6705

6677:                                             ; preds = %6676
  %6678 = 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) %14)
          to label %6679 unwind label %6707

6679:                                             ; preds = %6677
  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) %6678)
          to label %6680 unwind label %6707

6680:                                             ; preds = %6679
  %6681 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %643)
          to label %6682 unwind label %6709

6682:                                             ; preds = %6680
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %643) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %644) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %644) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %643) #6
  %6683 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %6684 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6684:                                             ; preds = %6682
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %645) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %645, i32 noundef -2)
          to label %6685 unwind label %6713

6685:                                             ; preds = %6684
  %6686 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %645)
          to label %6687 unwind label %6715

6687:                                             ; preds = %6685
  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.start.p0(i64 1, ptr nonnull %646) #6
  store i8 1, ptr %646, align 1, !tbaa !5
  %6688 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %646)
          to label %6689 unwind label %6718

6689:                                             ; preds = %6687
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %646) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1741 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1741:                                   ; preds = %6689, %6694
  %6690 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6691 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1743

6691:                                             ; preds = %.preheader1741
  %6692 = load i8, ptr %6690, align 1, !tbaa !5, !range !9, !noundef !10
  %6693 = trunc nuw i8 %6692 to i1
  br i1 %6693, label %6720, label %6694

6694:                                             ; preds = %6691
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1741 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1743, !llvm.loop !135

6695:                                             ; preds = %6667
  %6696 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %640) #6
  br label %.loopexit.split-lp

6697:                                             ; preds = %6670
  %6698 = landingpad { ptr, i32 }
          cleanup
  br label %6704

6699:                                             ; preds = %6673, %6671
  %6700 = landingpad { ptr, i32 }
          cleanup
  br label %6703

6701:                                             ; preds = %6674
  %6702 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %641) #6
  br label %6703

6703:                                             ; preds = %6701, %6699
  %.pn766 = phi { ptr, i32 } [ %6702, %6701 ], [ %6700, %6699 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %642) #6
  br label %6704

6704:                                             ; preds = %6703, %6697
  %.pn766.pn = phi { ptr, i32 } [ %.pn766, %6703 ], [ %6698, %6697 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %642) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %641) #6
  br label %.loopexit.split-lp

6705:                                             ; preds = %6676
  %6706 = landingpad { ptr, i32 }
          cleanup
  br label %6712

6707:                                             ; preds = %6679, %6677
  %6708 = landingpad { ptr, i32 }
          cleanup
  br label %6711

6709:                                             ; preds = %6680
  %6710 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %643) #6
  br label %6711

6711:                                             ; preds = %6709, %6707
  %.pn769 = phi { ptr, i32 } [ %6710, %6709 ], [ %6708, %6707 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %644) #6
  br label %6712

6712:                                             ; preds = %6711, %6705
  %.pn769.pn = phi { ptr, i32 } [ %.pn769, %6711 ], [ %6706, %6705 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %644) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %643) #6
  br label %.loopexit.split-lp

6713:                                             ; preds = %6684
  %6714 = landingpad { ptr, i32 }
          cleanup
  br label %6717

6715:                                             ; preds = %6685
  %6716 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %645) #6
  br label %6717

6717:                                             ; preds = %6715, %6713
  %.pn772 = phi { ptr, i32 } [ %6716, %6715 ], [ %6714, %6713 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %645) #6
  br label %.loopexit.split-lp

6718:                                             ; preds = %6687
  %6719 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %646) #6
  br label %.loopexit.split-lp

6720:                                             ; preds = %6691
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6721 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6721:                                             ; preds = %6720
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %647) #6
  store i8 0, ptr %647, align 1, !tbaa !5
  %6722 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %647)
          to label %6723 unwind label %6747

6723:                                             ; preds = %6721
  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 %6724 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6724:                                             ; preds = %6723
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %648) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %648, i32 noundef 10)
          to label %6725 unwind label %6749

6725:                                             ; preds = %6724
  %6726 = 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) %648)
          to label %6727 unwind label %6751

6727:                                             ; preds = %6725
  %6728 = 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) %6726)
          to label %6729 unwind label %6751

6729:                                             ; preds = %6727
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %648) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %648) #6
  %6730 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %6731 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6731:                                             ; preds = %6729
  %6732 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %6733 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6733:                                             ; preds = %6731
  %6734 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %6735 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6735:                                             ; preds = %6733
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %649) #6
  store i8 0, ptr %649, align 1, !tbaa !5
  %6736 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %649)
          to label %6737 unwind label %6754

6737:                                             ; preds = %6735
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %649) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %650) #6
  store i8 1, ptr %650, align 1, !tbaa !5
  %6738 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %650)
          to label %6739 unwind label %6756

6739:                                             ; preds = %6737
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %650) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1733 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1733:                                   ; preds = %6739, %6760
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %651) #6
  store i8 0, ptr %651, align 1, !tbaa !5
  %6740 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %651)
          to label %6741 unwind label %6758

6741:                                             ; preds = %.preheader1733
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %651) #6
  %6742 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          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.sp1735

6743:                                             ; preds = %6741
  %6744 = load i8, ptr %6742, align 1, !tbaa !5, !range !9, !noundef !10
  %6745 = trunc nuw i8 %6744 to i1
  br i1 %6745, label %6746, label %6760

6746:                                             ; preds = %6743
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6761 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6747:                                             ; preds = %6721
  %6748 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %647) #6
  br label %.loopexit.split-lp

6749:                                             ; preds = %6724
  %6750 = landingpad { ptr, i32 }
          cleanup
  br label %6753

6751:                                             ; preds = %6727, %6725
  %6752 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %648) #6
  br label %6753

6753:                                             ; preds = %6751, %6749
  %.pn774 = phi { ptr, i32 } [ %6752, %6751 ], [ %6750, %6749 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %648) #6
  br label %.loopexit.split-lp

6754:                                             ; preds = %6735
  %6755 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %649) #6
  br label %.loopexit.split-lp

6756:                                             ; preds = %6737
  %6757 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %650) #6
  br label %.loopexit.split-lp

6758:                                             ; preds = %.preheader1733
  %6759 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %651) #6
  br label %.loopexit.split-lp

6760:                                             ; preds = %6743
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1733 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1735, !llvm.loop !136

6761:                                             ; preds = %6746
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %652) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %652, i32 noundef 16)
          to label %6762 unwind label %6786

6762:                                             ; preds = %6761
  %6763 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %652)
          to label %6764 unwind label %6788

6764:                                             ; preds = %6762
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %652) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %652) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %653) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %654) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %654, i32 noundef 24)
          to label %6765 unwind label %6791

6765:                                             ; preds = %6764
  %6766 = 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) %654)
          to label %6767 unwind label %6793

6767:                                             ; preds = %6765
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %653, ptr noundef nonnull align 1 dereferenceable(1) %6766)
          to label %6768 unwind label %6793

6768:                                             ; preds = %6767
  %6769 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %653)
          to label %6770 unwind label %6795

6770:                                             ; preds = %6768
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %653) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %654) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %654) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %653) #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 3)
          to label %6771 unwind label %6799

6771:                                             ; preds = %6770
  %6772 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %655)
          to label %6773 unwind label %6801

6773:                                             ; preds = %6771
  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.start.p0(i64 24, ptr nonnull %656) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %656, i32 noundef 3)
          to label %6774 unwind label %6804

6774:                                             ; preds = %6773
  %6775 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %656)
          to label %6776 unwind label %6806

6776:                                             ; preds = %6774
  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
  %6777 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6778 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6778:                                             ; preds = %6776
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %657) #6
  store i8 1, ptr %657, align 1, !tbaa !5
  %6779 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %657)
          to label %6780 unwind label %6809

6780:                                             ; preds = %6778
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %657) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1726 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1726:                                   ; preds = %6780, %6785
  %6781 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6782 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1728

6782:                                             ; preds = %.preheader1726
  %6783 = load i8, ptr %6781, align 1, !tbaa !5, !range !9, !noundef !10
  %6784 = trunc nuw i8 %6783 to i1
  br i1 %6784, label %6811, label %6785

6785:                                             ; preds = %6782
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1726 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1728, !llvm.loop !137

6786:                                             ; preds = %6761
  %6787 = landingpad { ptr, i32 }
          cleanup
  br label %6790

6788:                                             ; preds = %6762
  %6789 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %652) #6
  br label %6790

6790:                                             ; preds = %6788, %6786
  %.pn776 = phi { ptr, i32 } [ %6789, %6788 ], [ %6787, %6786 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %652) #6
  br label %.loopexit.split-lp

6791:                                             ; preds = %6764
  %6792 = landingpad { ptr, i32 }
          cleanup
  br label %6798

6793:                                             ; preds = %6767, %6765
  %6794 = landingpad { ptr, i32 }
          cleanup
  br label %6797

6795:                                             ; preds = %6768
  %6796 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %653) #6
  br label %6797

6797:                                             ; preds = %6795, %6793
  %.pn778 = phi { ptr, i32 } [ %6796, %6795 ], [ %6794, %6793 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %654) #6
  br label %6798

6798:                                             ; preds = %6797, %6791
  %.pn778.pn = phi { ptr, i32 } [ %.pn778, %6797 ], [ %6792, %6791 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %654) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %653) #6
  br label %.loopexit.split-lp

6799:                                             ; preds = %6770
  %6800 = landingpad { ptr, i32 }
          cleanup
  br label %6803

6801:                                             ; preds = %6771
  %6802 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %655) #6
  br label %6803

6803:                                             ; preds = %6801, %6799
  %.pn781 = phi { ptr, i32 } [ %6802, %6801 ], [ %6800, %6799 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %655) #6
  br label %.loopexit.split-lp

6804:                                             ; preds = %6773
  %6805 = landingpad { ptr, i32 }
          cleanup
  br label %6808

6806:                                             ; preds = %6774
  %6807 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %656) #6
  br label %6808

6808:                                             ; preds = %6806, %6804
  %.pn783 = phi { ptr, i32 } [ %6807, %6806 ], [ %6805, %6804 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %656) #6
  br label %.loopexit.split-lp

6809:                                             ; preds = %6778
  %6810 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %657) #6
  br label %.loopexit.split-lp

6811:                                             ; preds = %6782
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6812 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6812:                                             ; preds = %6811
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %658) #6
  store i8 0, ptr %658, align 1, !tbaa !5
  %6813 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %658)
          to label %6814 unwind label %6840

6814:                                             ; preds = %6812
  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 %6815 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6815:                                             ; preds = %6814
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %659) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %659, i32 noundef 96)
          to label %6816 unwind label %6842

6816:                                             ; preds = %6815
  %6817 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %659)
          to label %6818 unwind label %6844

6818:                                             ; preds = %6816
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %659) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %659) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %660) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %661) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %661, i32 noundef 27)
          to label %6819 unwind label %6847

6819:                                             ; preds = %6818
  %6820 = 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) %661)
          to label %6821 unwind label %6849

6821:                                             ; preds = %6819
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %660, ptr noundef nonnull align 1 dereferenceable(1) %6820)
          to label %6822 unwind label %6849

6822:                                             ; preds = %6821
  %6823 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %660)
          to label %6824 unwind label %6851

6824:                                             ; preds = %6822
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %660) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %661) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %661) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %660) #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 32)
          to label %6825 unwind label %6855

6825:                                             ; preds = %6824
  %6826 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %662)
          to label %6827 unwind label %6857

6827:                                             ; preds = %6825
  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.start.p0(i64 24, ptr nonnull %663) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %663, i32 noundef 3)
          to label %6828 unwind label %6860

6828:                                             ; preds = %6827
  %6829 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %663)
          to label %6830 unwind label %6862

6830:                                             ; preds = %6828
  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
  %6831 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6832 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6832:                                             ; preds = %6830
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %664) #6
  store i8 1, ptr %664, align 1, !tbaa !5
  %6833 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %664)
          to label %6834 unwind label %6865

6834:                                             ; preds = %6832
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %664) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1718 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1718:                                   ; preds = %6834, %6839
  %6835 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6836 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1720

6836:                                             ; preds = %.preheader1718
  %6837 = load i8, ptr %6835, align 1, !tbaa !5, !range !9, !noundef !10
  %6838 = trunc nuw i8 %6837 to i1
  br i1 %6838, label %6867, label %6839

6839:                                             ; preds = %6836
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1718 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1720, !llvm.loop !138

6840:                                             ; preds = %6812
  %6841 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %658) #6
  br label %.loopexit.split-lp

6842:                                             ; preds = %6815
  %6843 = landingpad { ptr, i32 }
          cleanup
  br label %6846

6844:                                             ; preds = %6816
  %6845 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %659) #6
  br label %6846

6846:                                             ; preds = %6844, %6842
  %.pn785 = phi { ptr, i32 } [ %6845, %6844 ], [ %6843, %6842 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %659) #6
  br label %.loopexit.split-lp

6847:                                             ; preds = %6818
  %6848 = landingpad { ptr, i32 }
          cleanup
  br label %6854

6849:                                             ; preds = %6821, %6819
  %6850 = landingpad { ptr, i32 }
          cleanup
  br label %6853

6851:                                             ; preds = %6822
  %6852 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %660) #6
  br label %6853

6853:                                             ; preds = %6851, %6849
  %.pn787 = phi { ptr, i32 } [ %6852, %6851 ], [ %6850, %6849 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %661) #6
  br label %6854

6854:                                             ; preds = %6853, %6847
  %.pn787.pn = phi { ptr, i32 } [ %.pn787, %6853 ], [ %6848, %6847 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %661) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %660) #6
  br label %.loopexit.split-lp

6855:                                             ; preds = %6824
  %6856 = landingpad { ptr, i32 }
          cleanup
  br label %6859

6857:                                             ; preds = %6825
  %6858 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %662) #6
  br label %6859

6859:                                             ; preds = %6857, %6855
  %.pn790 = phi { ptr, i32 } [ %6858, %6857 ], [ %6856, %6855 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %662) #6
  br label %.loopexit.split-lp

6860:                                             ; preds = %6827
  %6861 = landingpad { ptr, i32 }
          cleanup
  br label %6864

6862:                                             ; preds = %6828
  %6863 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %663) #6
  br label %6864

6864:                                             ; preds = %6862, %6860
  %.pn792 = phi { ptr, i32 } [ %6863, %6862 ], [ %6861, %6860 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %663) #6
  br label %.loopexit.split-lp

6865:                                             ; preds = %6832
  %6866 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %664) #6
  br label %.loopexit.split-lp

6867:                                             ; preds = %6836
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6868 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6868:                                             ; preds = %6867
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %665) #6
  store i8 0, ptr %665, align 1, !tbaa !5
  %6869 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %665)
          to label %6870 unwind label %6893

6870:                                             ; preds = %6868
  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 %6871 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6871:                                             ; preds = %6870
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %666) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %666, i32 noundef 160)
          to label %6872 unwind label %6895

6872:                                             ; preds = %6871
  %6873 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %666)
          to label %6874 unwind label %6897

6874:                                             ; preds = %6872
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %666) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %666) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %667) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %668) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %668, i32 noundef 59)
          to label %6875 unwind label %6900

6875:                                             ; preds = %6874
  %6876 = 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) %668)
          to label %6877 unwind label %6902

6877:                                             ; preds = %6875
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %667, ptr noundef nonnull align 1 dereferenceable(1) %6876)
          to label %6878 unwind label %6902

6878:                                             ; preds = %6877
  %6879 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %667)
          to label %6880 unwind label %6904

6880:                                             ; preds = %6878
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %667) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %668) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %668) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %667) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %669) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %669, i32 noundef 3)
          to label %6881 unwind label %6908

6881:                                             ; preds = %6880
  %6882 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %669)
          to label %6883 unwind label %6910

6883:                                             ; preds = %6881
  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
  %6884 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6885 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6885:                                             ; preds = %6883
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %670) #6
  store i8 1, ptr %670, align 1, !tbaa !5
  %6886 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %670)
          to label %6887 unwind label %6913

6887:                                             ; preds = %6885
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %670) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1711 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1711:                                   ; preds = %6887, %6892
  %6888 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6889 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1713

6889:                                             ; preds = %.preheader1711
  %6890 = load i8, ptr %6888, align 1, !tbaa !5, !range !9, !noundef !10
  %6891 = trunc nuw i8 %6890 to i1
  br i1 %6891, label %6915, label %6892

6892:                                             ; preds = %6889
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1711 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1713, !llvm.loop !139

6893:                                             ; preds = %6868
  %6894 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %665) #6
  br label %.loopexit.split-lp

6895:                                             ; preds = %6871
  %6896 = landingpad { ptr, i32 }
          cleanup
  br label %6899

6897:                                             ; preds = %6872
  %6898 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %666) #6
  br label %6899

6899:                                             ; preds = %6897, %6895
  %.pn794 = phi { ptr, i32 } [ %6898, %6897 ], [ %6896, %6895 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %666) #6
  br label %.loopexit.split-lp

6900:                                             ; preds = %6874
  %6901 = landingpad { ptr, i32 }
          cleanup
  br label %6907

6902:                                             ; preds = %6877, %6875
  %6903 = landingpad { ptr, i32 }
          cleanup
  br label %6906

6904:                                             ; preds = %6878
  %6905 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %667) #6
  br label %6906

6906:                                             ; preds = %6904, %6902
  %.pn796 = phi { ptr, i32 } [ %6905, %6904 ], [ %6903, %6902 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %668) #6
  br label %6907

6907:                                             ; preds = %6906, %6900
  %.pn796.pn = phi { ptr, i32 } [ %.pn796, %6906 ], [ %6901, %6900 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %668) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %667) #6
  br label %.loopexit.split-lp

6908:                                             ; preds = %6880
  %6909 = landingpad { ptr, i32 }
          cleanup
  br label %6912

6910:                                             ; preds = %6881
  %6911 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %669) #6
  br label %6912

6912:                                             ; preds = %6910, %6908
  %.pn799 = phi { ptr, i32 } [ %6911, %6910 ], [ %6909, %6908 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %669) #6
  br label %.loopexit.split-lp

6913:                                             ; preds = %6885
  %6914 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %670) #6
  br label %.loopexit.split-lp

6915:                                             ; preds = %6889
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6916 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6916:                                             ; preds = %6915
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %671) #6
  store i8 0, ptr %671, align 1, !tbaa !5
  %6917 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %671)
          to label %6918 unwind label %6946

6918:                                             ; preds = %6916
  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 %6919 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6919:                                             ; preds = %6918
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %672) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %672, i32 noundef 48)
          to label %6920 unwind label %6948

6920:                                             ; preds = %6919
  %6921 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %672)
          to label %6922 unwind label %6950

6922:                                             ; preds = %6920
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %672) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %672) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %673) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %674) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %674, i32 noundef -37)
          to label %6923 unwind label %6953

6923:                                             ; preds = %6922
  %6924 = 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) %674)
          to label %6925 unwind label %6955

6925:                                             ; preds = %6923
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %673, ptr noundef nonnull align 1 dereferenceable(1) %6924)
          to label %6926 unwind label %6955

6926:                                             ; preds = %6925
  %6927 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %673)
          to label %6928 unwind label %6957

6928:                                             ; preds = %6926
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %673) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %674) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %674) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %673) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %675) #6
  %6929 = 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 %6930 unwind label %6961

6930:                                             ; preds = %6928
  invoke void @_ZN5sc_dt6sc_intILi7EEC2ERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %675, ptr noundef nonnull align 8 dereferenceable(28) %6929)
          to label %6931 unwind label %6961

6931:                                             ; preds = %6930
  %6932 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %675)
          to label %6933 unwind label %6963

6933:                                             ; preds = %6931
  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.start.p0(i64 24, ptr nonnull %676) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %676, i32 noundef 3)
          to label %6934 unwind label %6966

6934:                                             ; preds = %6933
  %6935 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %676)
          to label %6936 unwind label %6968

6936:                                             ; preds = %6934
  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
  %6937 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6938 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6938:                                             ; preds = %6936
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %677) #6
  store i8 1, ptr %677, align 1, !tbaa !5
  %6939 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %677)
          to label %6940 unwind label %6971

6940:                                             ; preds = %6938
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %677) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1703 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1703:                                   ; preds = %6940, %6945
  %6941 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %6942 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1705

6942:                                             ; preds = %.preheader1703
  %6943 = load i8, ptr %6941, align 1, !tbaa !5, !range !9, !noundef !10
  %6944 = trunc nuw i8 %6943 to i1
  br i1 %6944, label %6973, label %6945

6945:                                             ; preds = %6942
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1703 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1705, !llvm.loop !140

6946:                                             ; preds = %6916
  %6947 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %671) #6
  br label %.loopexit.split-lp

6948:                                             ; preds = %6919
  %6949 = landingpad { ptr, i32 }
          cleanup
  br label %6952

6950:                                             ; preds = %6920
  %6951 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %672) #6
  br label %6952

6952:                                             ; preds = %6950, %6948
  %.pn801 = phi { ptr, i32 } [ %6951, %6950 ], [ %6949, %6948 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %672) #6
  br label %.loopexit.split-lp

6953:                                             ; preds = %6922
  %6954 = landingpad { ptr, i32 }
          cleanup
  br label %6960

6955:                                             ; preds = %6925, %6923
  %6956 = landingpad { ptr, i32 }
          cleanup
  br label %6959

6957:                                             ; preds = %6926
  %6958 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %673) #6
  br label %6959

6959:                                             ; preds = %6957, %6955
  %.pn803 = phi { ptr, i32 } [ %6958, %6957 ], [ %6956, %6955 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %674) #6
  br label %6960

6960:                                             ; preds = %6959, %6953
  %.pn803.pn = phi { ptr, i32 } [ %.pn803, %6959 ], [ %6954, %6953 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %674) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %673) #6
  br label %.loopexit.split-lp

6961:                                             ; preds = %6930, %6928
  %6962 = landingpad { ptr, i32 }
          cleanup
  br label %6965

6963:                                             ; preds = %6931
  %6964 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %675) #6
  br label %6965

6965:                                             ; preds = %6963, %6961
  %.pn806 = phi { ptr, i32 } [ %6964, %6963 ], [ %6962, %6961 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %675) #6
  br label %.loopexit.split-lp

6966:                                             ; preds = %6933
  %6967 = landingpad { ptr, i32 }
          cleanup
  br label %6970

6968:                                             ; preds = %6934
  %6969 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %676) #6
  br label %6970

6970:                                             ; preds = %6968, %6966
  %.pn808 = phi { ptr, i32 } [ %6969, %6968 ], [ %6967, %6966 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %676) #6
  br label %.loopexit.split-lp

6971:                                             ; preds = %6938
  %6972 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %677) #6
  br label %.loopexit.split-lp

6973:                                             ; preds = %6942
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6974 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6974:                                             ; preds = %6973
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %678) #6
  store i8 0, ptr %678, align 1, !tbaa !5
  %6975 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %678)
          to label %6976 unwind label %7005

6976:                                             ; preds = %6974
  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 %6977 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6977:                                             ; preds = %6976
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %679) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %679, i32 noundef 4)
          to label %6978 unwind label %7007

6978:                                             ; preds = %6977
  %6979 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %679)
          to label %6980 unwind label %7009

6980:                                             ; preds = %6978
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %679) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %679) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %680) #6
  %6981 = 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 %6982 unwind label %7012

6982:                                             ; preds = %6980
  %6983 = 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 %6984 unwind label %7012

6984:                                             ; preds = %6982
  %6985 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %6981, ptr noundef nonnull align 8 dereferenceable(8) %6983)
          to label %6986 unwind label %7012

6986:                                             ; preds = %6984
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %680, ptr noundef nonnull align 1 dereferenceable(1) %6985)
          to label %6987 unwind label %7012

6987:                                             ; preds = %6986
  %6988 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %680)
          to label %6989 unwind label %7014

6989:                                             ; preds = %6987
  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
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %681, i32 noundef 1)
          to label %6990 unwind label %7017

6990:                                             ; preds = %6989
  %6991 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %681)
          to label %6992 unwind label %7019

6992:                                             ; preds = %6990
  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_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %682, i32 noundef 3)
          to label %6993 unwind label %7022

6993:                                             ; preds = %6992
  %6994 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %682)
          to label %6995 unwind label %7024

6995:                                             ; preds = %6993
  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
  %6996 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6997 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

6997:                                             ; preds = %6995
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %683) #6
  store i8 1, ptr %683, align 1, !tbaa !5
  %6998 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %683)
          to label %6999 unwind label %7027

6999:                                             ; preds = %6997
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %683) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1696 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1696:                                   ; preds = %6999, %7004
  %7000 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %7001 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1698

7001:                                             ; preds = %.preheader1696
  %7002 = load i8, ptr %7000, align 1, !tbaa !5, !range !9, !noundef !10
  %7003 = trunc nuw i8 %7002 to i1
  br i1 %7003, label %7029, label %7004

7004:                                             ; preds = %7001
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1696 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1698, !llvm.loop !141

7005:                                             ; preds = %6974
  %7006 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %678) #6
  br label %.loopexit.split-lp

7007:                                             ; preds = %6977
  %7008 = landingpad { ptr, i32 }
          cleanup
  br label %7011

7009:                                             ; preds = %6978
  %7010 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %679) #6
  br label %7011

7011:                                             ; preds = %7009, %7007
  %.pn810 = phi { ptr, i32 } [ %7010, %7009 ], [ %7008, %7007 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %679) #6
  br label %.loopexit.split-lp

7012:                                             ; preds = %6986, %6984, %6982, %6980
  %7013 = landingpad { ptr, i32 }
          cleanup
  br label %7016

7014:                                             ; preds = %6987
  %7015 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %680) #6
  br label %7016

7016:                                             ; preds = %7014, %7012
  %.pn812 = phi { ptr, i32 } [ %7015, %7014 ], [ %7013, %7012 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %680) #6
  br label %.loopexit.split-lp

7017:                                             ; preds = %6989
  %7018 = landingpad { ptr, i32 }
          cleanup
  br label %7021

7019:                                             ; preds = %6990
  %7020 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %681) #6
  br label %7021

7021:                                             ; preds = %7019, %7017
  %.pn814 = phi { ptr, i32 } [ %7020, %7019 ], [ %7018, %7017 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %681) #6
  br label %.loopexit.split-lp

7022:                                             ; preds = %6992
  %7023 = landingpad { ptr, i32 }
          cleanup
  br label %7026

7024:                                             ; preds = %6993
  %7025 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %682) #6
  br label %7026

7026:                                             ; preds = %7024, %7022
  %.pn816 = phi { ptr, i32 } [ %7025, %7024 ], [ %7023, %7022 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %682) #6
  br label %.loopexit.split-lp

7027:                                             ; preds = %6997
  %7028 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %683) #6
  br label %.loopexit.split-lp

7029:                                             ; preds = %7001
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7030 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7030:                                             ; preds = %7029
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %684) #6
  store i8 0, ptr %684, align 1, !tbaa !5
  %7031 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %684)
          to label %7032 unwind label %7061

7032:                                             ; preds = %7030
  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 %7033 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7033:                                             ; preds = %7032
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %685) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %685, i32 noundef 20)
          to label %7034 unwind label %7063

7034:                                             ; preds = %7033
  %7035 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %685)
          to label %7036 unwind label %7065

7036:                                             ; preds = %7034
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %685) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %685) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %686) #6
  %7037 = 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 %7038 unwind label %7068

7038:                                             ; preds = %7036
  %7039 = 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 %7040 unwind label %7068

7040:                                             ; preds = %7038
  %7041 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %7037, ptr noundef nonnull align 8 dereferenceable(8) %7039)
          to label %7042 unwind label %7068

7042:                                             ; preds = %7040
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %686, ptr noundef nonnull align 1 dereferenceable(1) %7041)
          to label %7043 unwind label %7068

7043:                                             ; preds = %7042
  %7044 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %686)
          to label %7045 unwind label %7070

7045:                                             ; preds = %7043
  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
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %687, i32 noundef 4)
          to label %7046 unwind label %7073

7046:                                             ; preds = %7045
  %7047 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %687)
          to label %7048 unwind label %7075

7048:                                             ; preds = %7046
  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_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %688, i32 noundef 3)
          to label %7049 unwind label %7078

7049:                                             ; preds = %7048
  %7050 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %688)
          to label %7051 unwind label %7080

7051:                                             ; preds = %7049
  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
  %7052 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7053 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7053:                                             ; preds = %7051
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %689) #6
  store i8 1, ptr %689, align 1, !tbaa !5
  %7054 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %689)
          to label %7055 unwind label %7083

7055:                                             ; preds = %7053
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %689) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1688 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1688:                                   ; preds = %7055, %7060
  %7056 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %7057 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1690

7057:                                             ; preds = %.preheader1688
  %7058 = load i8, ptr %7056, align 1, !tbaa !5, !range !9, !noundef !10
  %7059 = trunc nuw i8 %7058 to i1
  br i1 %7059, label %7085, label %7060

7060:                                             ; preds = %7057
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1688 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1690, !llvm.loop !142

7061:                                             ; preds = %7030
  %7062 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %684) #6
  br label %.loopexit.split-lp

7063:                                             ; preds = %7033
  %7064 = landingpad { ptr, i32 }
          cleanup
  br label %7067

7065:                                             ; preds = %7034
  %7066 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %685) #6
  br label %7067

7067:                                             ; preds = %7065, %7063
  %.pn818 = phi { ptr, i32 } [ %7066, %7065 ], [ %7064, %7063 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %685) #6
  br label %.loopexit.split-lp

7068:                                             ; preds = %7042, %7040, %7038, %7036
  %7069 = landingpad { ptr, i32 }
          cleanup
  br label %7072

7070:                                             ; preds = %7043
  %7071 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %686) #6
  br label %7072

7072:                                             ; preds = %7070, %7068
  %.pn820 = phi { ptr, i32 } [ %7071, %7070 ], [ %7069, %7068 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %686) #6
  br label %.loopexit.split-lp

7073:                                             ; preds = %7045
  %7074 = landingpad { ptr, i32 }
          cleanup
  br label %7077

7075:                                             ; preds = %7046
  %7076 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %687) #6
  br label %7077

7077:                                             ; preds = %7075, %7073
  %.pn822 = phi { ptr, i32 } [ %7076, %7075 ], [ %7074, %7073 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %687) #6
  br label %.loopexit.split-lp

7078:                                             ; preds = %7048
  %7079 = landingpad { ptr, i32 }
          cleanup
  br label %7082

7080:                                             ; preds = %7049
  %7081 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %688) #6
  br label %7082

7082:                                             ; preds = %7080, %7078
  %.pn824 = phi { ptr, i32 } [ %7081, %7080 ], [ %7079, %7078 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %688) #6
  br label %.loopexit.split-lp

7083:                                             ; preds = %7053
  %7084 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %689) #6
  br label %.loopexit.split-lp

7085:                                             ; preds = %7057
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7086 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7086:                                             ; preds = %7085
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %690) #6
  store i8 0, ptr %690, align 1, !tbaa !5
  %7087 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %690)
          to label %7088 unwind label %7112

7088:                                             ; preds = %7086
  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 %7089 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7089:                                             ; preds = %7088
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %691) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %691, i32 noundef 288)
          to label %7090 unwind label %7114

7090:                                             ; preds = %7089
  %7091 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %691)
          to label %7092 unwind label %7116

7092:                                             ; preds = %7090
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %691) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %691) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %692) #6
  %7093 = 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 %7094 unwind label %7119

7094:                                             ; preds = %7092
  %7095 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8) %7093, i1 noundef zeroext false)
          to label %7096 unwind label %7119

7096:                                             ; preds = %7094
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %692, ptr noundef nonnull align 1 dereferenceable(1) %7095)
          to label %7097 unwind label %7119

7097:                                             ; preds = %7096
  %7098 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %692)
          to label %7099 unwind label %7121

7099:                                             ; preds = %7097
  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
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %693, i32 noundef 1)
          to label %7100 unwind label %7124

7100:                                             ; preds = %7099
  %7101 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %693)
          to label %7102 unwind label %7126

7102:                                             ; preds = %7100
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %693) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %693) #6
  %7103 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7104 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7104:                                             ; preds = %7102
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %694) #6
  store i8 1, ptr %694, align 1, !tbaa !5
  %7105 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %694)
          to label %7106 unwind label %7129

7106:                                             ; preds = %7104
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %694) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1681 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1681:                                   ; preds = %7106, %7111
  %7107 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %7108 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1683

7108:                                             ; preds = %.preheader1681
  %7109 = load i8, ptr %7107, align 1, !tbaa !5, !range !9, !noundef !10
  %7110 = trunc nuw i8 %7109 to i1
  br i1 %7110, label %7131, label %7111

7111:                                             ; preds = %7108
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1681 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1683, !llvm.loop !143

7112:                                             ; preds = %7086
  %7113 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %690) #6
  br label %.loopexit.split-lp

7114:                                             ; preds = %7089
  %7115 = landingpad { ptr, i32 }
          cleanup
  br label %7118

7116:                                             ; preds = %7090
  %7117 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %691) #6
  br label %7118

7118:                                             ; preds = %7116, %7114
  %.pn826 = phi { ptr, i32 } [ %7117, %7116 ], [ %7115, %7114 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %691) #6
  br label %.loopexit.split-lp

7119:                                             ; preds = %7096, %7094, %7092
  %7120 = landingpad { ptr, i32 }
          cleanup
  br label %7123

7121:                                             ; preds = %7097
  %7122 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %692) #6
  br label %7123

7123:                                             ; preds = %7121, %7119
  %.pn828 = phi { ptr, i32 } [ %7122, %7121 ], [ %7120, %7119 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %692) #6
  br label %.loopexit.split-lp

7124:                                             ; preds = %7099
  %7125 = landingpad { ptr, i32 }
          cleanup
  br label %7128

7126:                                             ; preds = %7100
  %7127 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %693) #6
  br label %7128

7128:                                             ; preds = %7126, %7124
  %.pn830 = phi { ptr, i32 } [ %7127, %7126 ], [ %7125, %7124 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %693) #6
  br label %.loopexit.split-lp

7129:                                             ; preds = %7104
  %7130 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %694) #6
  br label %.loopexit.split-lp

7131:                                             ; preds = %7108
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7132 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7132:                                             ; preds = %7131
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %695) #6
  store i8 0, ptr %695, align 1, !tbaa !5
  %7133 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %695)
          to label %7134 unwind label %7135

7134:                                             ; preds = %7132
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %695) #6
  br label %.invoke2295

7135:                                             ; preds = %7132
  %7136 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %695) #6
  br label %.loopexit.split-lp

7137:                                             ; preds = %2017
  %7138 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not598 = icmp eq i64 %7138, 3
  br i1 %.not598, label %7139, label %.invoke2315

7139:                                             ; preds = %7137
  %7140 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %7141 = icmp eq i64 %7140, 0
  br i1 %7141, label %.invoke2315, label %7142

7142:                                             ; preds = %7139
  %7143 = 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 %7144 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7144:                                             ; preds = %7142
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %696) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %697) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %697, i32 noundef 24)
          to label %7145 unwind label %7171

7145:                                             ; preds = %7144
  %7146 = 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) %697)
          to label %7147 unwind label %7173

7147:                                             ; preds = %7145
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %696, ptr noundef nonnull align 1 dereferenceable(1) %7146)
          to label %7148 unwind label %7173

7148:                                             ; preds = %7147
  %7149 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %696)
          to label %7150 unwind label %7175

7150:                                             ; preds = %7148
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %696) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %697) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %697) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %696) #6
  %7151 = 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 %7152 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7152:                                             ; preds = %7150
  %7153 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %7151)
          to label %7154 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7154:                                             ; preds = %7152
  %.not602 = icmp eq i64 %7153, 0
  br i1 %.not602, label %7184, label %7155

7155:                                             ; preds = %7154
  %7156 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef 128)
          to label %7157 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7157:                                             ; preds = %7155
  %7158 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef 32)
          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.sp1930

7159:                                             ; preds = %7157
  %7160 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 2)
          to label %7161 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7161:                                             ; preds = %7159
  %7162 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 272)
          to label %7163 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7163:                                             ; preds = %7161
  %7164 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 64)
          to label %7165 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7165:                                             ; preds = %7163
  %7166 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 10)
          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.sp1930

7167:                                             ; preds = %7165
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %698) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %698, i32 noundef 8)
          to label %7168 unwind label %7179

7168:                                             ; preds = %7167
  %7169 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %698)
          to label %7170 unwind label %7181

7170:                                             ; preds = %7168
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %698) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %698) #6
  br label %7205

7171:                                             ; preds = %7144
  %7172 = landingpad { ptr, i32 }
          cleanup
  br label %7178

7173:                                             ; preds = %7147, %7145
  %7174 = landingpad { ptr, i32 }
          cleanup
  br label %7177

7175:                                             ; preds = %7148
  %7176 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %696) #6
  br label %7177

7177:                                             ; preds = %7175, %7173
  %.pn599 = phi { ptr, i32 } [ %7176, %7175 ], [ %7174, %7173 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %697) #6
  br label %7178

7178:                                             ; preds = %7177, %7171
  %.pn599.pn = phi { ptr, i32 } [ %.pn599, %7177 ], [ %7172, %7171 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %697) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %696) #6
  br label %.loopexit.split-lp

7179:                                             ; preds = %7167
  %7180 = landingpad { ptr, i32 }
          cleanup
  br label %7183

7181:                                             ; preds = %7168
  %7182 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %698) #6
  br label %7183

7183:                                             ; preds = %7181, %7179
  %.pn605 = phi { ptr, i32 } [ %7182, %7181 ], [ %7180, %7179 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %698) #6
  br label %.loopexit.split-lp

7184:                                             ; preds = %7154
  %7185 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef 160)
          to label %7186 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7186:                                             ; preds = %7184
  %7187 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef 48)
          to label %7188 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7188:                                             ; preds = %7186
  %7189 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 4)
          to label %7190 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7190:                                             ; preds = %7188
  %7191 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 288)
          to label %7192 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7192:                                             ; preds = %7190
  %7193 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 96)
          to label %7194 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7194:                                             ; preds = %7192
  %7195 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 11)
          to label %7196 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7196:                                             ; preds = %7194
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %699) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %699, i32 noundef 16)
          to label %7197 unwind label %7200

7197:                                             ; preds = %7196
  %7198 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %699)
          to label %7199 unwind label %7202

7199:                                             ; preds = %7197
  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
  br label %7205

7200:                                             ; preds = %7196
  %7201 = landingpad { ptr, i32 }
          cleanup
  br label %7204

7202:                                             ; preds = %7197
  %7203 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %699) #6
  br label %7204

7204:                                             ; preds = %7202, %7200
  %.pn603 = phi { ptr, i32 } [ %7203, %7202 ], [ %7201, %7200 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %699) #6
  br label %.loopexit.split-lp

7205:                                             ; preds = %7199, %7170
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %700) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %700, i32 noundef 3)
          to label %7206 unwind label %7221

7206:                                             ; preds = %7205
  %7207 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %700)
          to label %7208 unwind label %7223

7208:                                             ; preds = %7206
  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
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %701) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %701, i32 noundef 3)
          to label %7209 unwind label %7226

7209:                                             ; preds = %7208
  %7210 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %701)
          to label %7211 unwind label %7228

7211:                                             ; preds = %7209
  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
  %7212 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7213 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7213:                                             ; preds = %7211
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %702) #6
  store i8 1, ptr %702, align 1, !tbaa !5
  %7214 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %702)
          to label %7215 unwind label %7231

7215:                                             ; preds = %7213
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %702) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1898 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1898:                                   ; preds = %7215, %7220
  %7216 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %7217 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1900

7217:                                             ; preds = %.preheader1898
  %7218 = load i8, ptr %7216, align 1, !tbaa !5, !range !9, !noundef !10
  %7219 = trunc nuw i8 %7218 to i1
  br i1 %7219, label %7233, label %7220

7220:                                             ; preds = %7217
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1898 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1900, !llvm.loop !144

7221:                                             ; preds = %7205
  %7222 = landingpad { ptr, i32 }
          cleanup
  br label %7225

7223:                                             ; preds = %7206
  %7224 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %700) #6
  br label %7225

7225:                                             ; preds = %7223, %7221
  %.pn607 = phi { ptr, i32 } [ %7224, %7223 ], [ %7222, %7221 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %700) #6
  br label %.loopexit.split-lp

7226:                                             ; preds = %7208
  %7227 = landingpad { ptr, i32 }
          cleanup
  br label %7230

7228:                                             ; preds = %7209
  %7229 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %701) #6
  br label %7230

7230:                                             ; preds = %7228, %7226
  %.pn609 = phi { ptr, i32 } [ %7229, %7228 ], [ %7227, %7226 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %701) #6
  br label %.loopexit.split-lp

7231:                                             ; preds = %7213
  %7232 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %702) #6
  br label %.loopexit.split-lp

7233:                                             ; preds = %7217
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7234 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7234:                                             ; preds = %7233
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %703) #6
  store i8 0, ptr %703, align 1, !tbaa !5
  %7235 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %703)
          to label %7236 unwind label %7261

7236:                                             ; preds = %7234
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %703) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7237 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7237:                                             ; preds = %7236
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %704) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %705) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %705, i32 noundef 27)
          to label %7238 unwind label %7263

7238:                                             ; preds = %7237
  %7239 = 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) %705)
          to label %7240 unwind label %7265

7240:                                             ; preds = %7238
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %704, ptr noundef nonnull align 1 dereferenceable(1) %7239)
          to label %7241 unwind label %7265

7241:                                             ; preds = %7240
  %7242 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %704)
          to label %7243 unwind label %7267

7243:                                             ; preds = %7241
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %704) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %705) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %705) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %704) #6
  %7244 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %7245 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7245:                                             ; preds = %7243
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %706) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %706, i32 noundef 32)
          to label %7246 unwind label %7271

7246:                                             ; preds = %7245
  %7247 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %706)
          to label %7248 unwind label %7273

7248:                                             ; preds = %7246
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %706) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %706) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %707) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %707, i32 noundef 3)
          to label %7249 unwind label %7276

7249:                                             ; preds = %7248
  %7250 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %707)
          to label %7251 unwind label %7278

7251:                                             ; preds = %7249
  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
  %7252 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7253 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7253:                                             ; preds = %7251
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %708) #6
  store i8 1, ptr %708, align 1, !tbaa !5
  %7254 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %708)
          to label %7255 unwind label %7281

7255:                                             ; preds = %7253
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %708) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1891 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1891:                                   ; preds = %7255, %7260
  %7256 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %7257 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1893

7257:                                             ; preds = %.preheader1891
  %7258 = load i8, ptr %7256, align 1, !tbaa !5, !range !9, !noundef !10
  %7259 = trunc nuw i8 %7258 to i1
  br i1 %7259, label %7283, label %7260

7260:                                             ; preds = %7257
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1891 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1893, !llvm.loop !145

7261:                                             ; preds = %7234
  %7262 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %703) #6
  br label %.loopexit.split-lp

7263:                                             ; preds = %7237
  %7264 = landingpad { ptr, i32 }
          cleanup
  br label %7270

7265:                                             ; preds = %7240, %7238
  %7266 = landingpad { ptr, i32 }
          cleanup
  br label %7269

7267:                                             ; preds = %7241
  %7268 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %704) #6
  br label %7269

7269:                                             ; preds = %7267, %7265
  %.pn611 = phi { ptr, i32 } [ %7268, %7267 ], [ %7266, %7265 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %705) #6
  br label %7270

7270:                                             ; preds = %7269, %7263
  %.pn611.pn = phi { ptr, i32 } [ %.pn611, %7269 ], [ %7264, %7263 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %705) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %704) #6
  br label %.loopexit.split-lp

7271:                                             ; preds = %7245
  %7272 = landingpad { ptr, i32 }
          cleanup
  br label %7275

7273:                                             ; preds = %7246
  %7274 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %706) #6
  br label %7275

7275:                                             ; preds = %7273, %7271
  %.pn614 = phi { ptr, i32 } [ %7274, %7273 ], [ %7272, %7271 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %706) #6
  br label %.loopexit.split-lp

7276:                                             ; preds = %7248
  %7277 = landingpad { ptr, i32 }
          cleanup
  br label %7280

7278:                                             ; preds = %7249
  %7279 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %707) #6
  br label %7280

7280:                                             ; preds = %7278, %7276
  %.pn616 = phi { ptr, i32 } [ %7279, %7278 ], [ %7277, %7276 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %707) #6
  br label %.loopexit.split-lp

7281:                                             ; preds = %7253
  %7282 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %708) #6
  br label %.loopexit.split-lp

7283:                                             ; preds = %7257
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7284 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7284:                                             ; preds = %7283
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %709) #6
  store i8 0, ptr %709, align 1, !tbaa !5
  %7285 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %709)
          to label %7286 unwind label %7308

7286:                                             ; preds = %7284
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %709) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7287 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7287:                                             ; preds = %7286
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %710) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %711) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %711, i32 noundef 59)
          to label %7288 unwind label %7310

7288:                                             ; preds = %7287
  %7289 = 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) %711)
          to label %7290 unwind label %7312

7290:                                             ; preds = %7288
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %710, ptr noundef nonnull align 1 dereferenceable(1) %7289)
          to label %7291 unwind label %7312

7291:                                             ; preds = %7290
  %7292 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %710)
          to label %7293 unwind label %7314

7293:                                             ; preds = %7291
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %710) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %711) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %711) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %710) #6
  %7294 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %7295 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7295:                                             ; preds = %7293
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %712) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %712, i32 noundef 3)
          to label %7296 unwind label %7318

7296:                                             ; preds = %7295
  %7297 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %712)
          to label %7298 unwind label %7320

7298:                                             ; preds = %7296
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %712) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %712) #6
  %7299 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7300 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7300:                                             ; preds = %7298
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %713) #6
  store i8 1, ptr %713, align 1, !tbaa !5
  %7301 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %713)
          to label %7302 unwind label %7323

7302:                                             ; preds = %7300
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %713) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1883 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1883:                                   ; preds = %7302, %7307
  %7303 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %7304 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1885

7304:                                             ; preds = %.preheader1883
  %7305 = load i8, ptr %7303, align 1, !tbaa !5, !range !9, !noundef !10
  %7306 = trunc nuw i8 %7305 to i1
  br i1 %7306, label %7325, label %7307

7307:                                             ; preds = %7304
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1883 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1885, !llvm.loop !146

7308:                                             ; preds = %7284
  %7309 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %709) #6
  br label %.loopexit.split-lp

7310:                                             ; preds = %7287
  %7311 = landingpad { ptr, i32 }
          cleanup
  br label %7317

7312:                                             ; preds = %7290, %7288
  %7313 = landingpad { ptr, i32 }
          cleanup
  br label %7316

7314:                                             ; preds = %7291
  %7315 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %710) #6
  br label %7316

7316:                                             ; preds = %7314, %7312
  %.pn618 = phi { ptr, i32 } [ %7315, %7314 ], [ %7313, %7312 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %711) #6
  br label %7317

7317:                                             ; preds = %7316, %7310
  %.pn618.pn = phi { ptr, i32 } [ %.pn618, %7316 ], [ %7311, %7310 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %711) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %710) #6
  br label %.loopexit.split-lp

7318:                                             ; preds = %7295
  %7319 = landingpad { ptr, i32 }
          cleanup
  br label %7322

7320:                                             ; preds = %7296
  %7321 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %712) #6
  br label %7322

7322:                                             ; preds = %7320, %7318
  %.pn621 = phi { ptr, i32 } [ %7321, %7320 ], [ %7319, %7318 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %712) #6
  br label %.loopexit.split-lp

7323:                                             ; preds = %7300
  %7324 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %713) #6
  br label %.loopexit.split-lp

7325:                                             ; preds = %7304
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7326 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7326:                                             ; preds = %7325
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %714) #6
  store i8 0, ptr %714, align 1, !tbaa !5
  %7327 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %714)
          to label %7328 unwind label %7348

7328:                                             ; preds = %7326
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %714) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7329 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7329:                                             ; preds = %7328
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %715) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %716) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %716, i32 noundef -37)
          to label %7330 unwind label %7350

7330:                                             ; preds = %7329
  %7331 = 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) %716)
          to label %7332 unwind label %7352

7332:                                             ; preds = %7330
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %715, ptr noundef nonnull align 1 dereferenceable(1) %7331)
          to label %7333 unwind label %7352

7333:                                             ; preds = %7332
  %7334 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %715)
          to label %7335 unwind label %7354

7335:                                             ; preds = %7333
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %715) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %716) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %716) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %715) #6
  %7336 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %7)
          to label %7337 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7337:                                             ; preds = %7335
  %7338 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1759)
          to label %7339 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7339:                                             ; preds = %7337
  %7340 = load i8, ptr %7338, align 1, !tbaa !5, !range !9, !noundef !10
  %7341 = trunc nuw i8 %7340 to i1
  br i1 %7341, label %7363, label %7342

7342:                                             ; preds = %7339
  %7343 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef -3743)
          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.sp1930

7344:                                             ; preds = %7342
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %717) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %717, i32 noundef 6)
          to label %7345 unwind label %7358

7345:                                             ; preds = %7344
  %7346 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %717)
          to label %7347 unwind label %7360

7347:                                             ; preds = %7345
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %717) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %717) #6
  br label %7374

7348:                                             ; preds = %7326
  %7349 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %714) #6
  br label %.loopexit.split-lp

7350:                                             ; preds = %7329
  %7351 = landingpad { ptr, i32 }
          cleanup
  br label %7357

7352:                                             ; preds = %7332, %7330
  %7353 = landingpad { ptr, i32 }
          cleanup
  br label %7356

7354:                                             ; preds = %7333
  %7355 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %715) #6
  br label %7356

7356:                                             ; preds = %7354, %7352
  %.pn623 = phi { ptr, i32 } [ %7355, %7354 ], [ %7353, %7352 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %716) #6
  br label %7357

7357:                                             ; preds = %7356, %7350
  %.pn623.pn = phi { ptr, i32 } [ %.pn623, %7356 ], [ %7351, %7350 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %716) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %715) #6
  br label %.loopexit.split-lp

7358:                                             ; preds = %7344
  %7359 = landingpad { ptr, i32 }
          cleanup
  br label %7362

7360:                                             ; preds = %7345
  %7361 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %717) #6
  br label %7362

7362:                                             ; preds = %7360, %7358
  %.pn626 = phi { ptr, i32 } [ %7361, %7360 ], [ %7359, %7358 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %717) #6
  br label %.loopexit.split-lp

7363:                                             ; preds = %7339
  %7364 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef -4001)
          to label %7365 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7365:                                             ; preds = %7363
  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 4)
          to label %7366 unwind label %7369

7366:                                             ; preds = %7365
  %7367 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %718)
          to label %7368 unwind label %7371

7368:                                             ; preds = %7366
  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
  br label %7374

7369:                                             ; preds = %7365
  %7370 = landingpad { ptr, i32 }
          cleanup
  br label %7373

7371:                                             ; preds = %7366
  %7372 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %718) #6
  br label %7373

7373:                                             ; preds = %7371, %7369
  %.pn628 = phi { ptr, i32 } [ %7372, %7371 ], [ %7370, %7369 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %718) #6
  br label %.loopexit.split-lp

7374:                                             ; preds = %7368, %7347
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %719) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %719, i32 noundef 3)
          to label %7375 unwind label %7387

7375:                                             ; preds = %7374
  %7376 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %719)
          to label %7377 unwind label %7389

7377:                                             ; preds = %7375
  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
  %7378 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7379 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7379:                                             ; preds = %7377
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %720) #6
  store i8 1, ptr %720, align 1, !tbaa !5
  %7380 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %720)
          to label %7381 unwind label %7392

7381:                                             ; preds = %7379
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %720) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1876 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1876:                                   ; preds = %7381, %7386
  %7382 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %7383 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1878

7383:                                             ; preds = %.preheader1876
  %7384 = load i8, ptr %7382, align 1, !tbaa !5, !range !9, !noundef !10
  %7385 = trunc nuw i8 %7384 to i1
  br i1 %7385, label %7394, label %7386

7386:                                             ; preds = %7383
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1876 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1878, !llvm.loop !147

7387:                                             ; preds = %7374
  %7388 = landingpad { ptr, i32 }
          cleanup
  br label %7391

7389:                                             ; preds = %7375
  %7390 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %719) #6
  br label %7391

7391:                                             ; preds = %7389, %7387
  %.pn630 = phi { ptr, i32 } [ %7390, %7389 ], [ %7388, %7387 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %719) #6
  br label %.loopexit.split-lp

7392:                                             ; preds = %7379
  %7393 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %720) #6
  br label %.loopexit.split-lp

7394:                                             ; preds = %7383
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7395 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7395:                                             ; preds = %7394
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %721) #6
  store i8 0, ptr %721, align 1, !tbaa !5
  %7396 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %721)
          to label %7397 unwind label %7425

7397:                                             ; preds = %7395
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %721) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          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.sp1930

7398:                                             ; preds = %7397
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %722) #6
  %7399 = 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 %7400 unwind label %7427

7400:                                             ; preds = %7398
  %7401 = 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 %7402 unwind label %7427

7402:                                             ; preds = %7400
  %7403 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %7399, ptr noundef nonnull align 8 dereferenceable(8) %7401)
          to label %7404 unwind label %7427

7404:                                             ; preds = %7402
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %722, ptr noundef nonnull align 1 dereferenceable(1) %7403)
          to label %7405 unwind label %7427

7405:                                             ; preds = %7404
  %7406 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %722)
          to label %7407 unwind label %7429

7407:                                             ; preds = %7405
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %722) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %722) #6
  %7408 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7409 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7409:                                             ; preds = %7407
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %723) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %723, i32 noundef 1)
          to label %7410 unwind label %7432

7410:                                             ; preds = %7409
  %7411 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %723)
          to label %7412 unwind label %7434

7412:                                             ; preds = %7410
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %723) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %723) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %724) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %724, i32 noundef 3)
          to label %7413 unwind label %7437

7413:                                             ; preds = %7412
  %7414 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %724)
          to label %7415 unwind label %7439

7415:                                             ; preds = %7413
  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
  %7416 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7417 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7417:                                             ; preds = %7415
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %725) #6
  store i8 1, ptr %725, align 1, !tbaa !5
  %7418 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %725)
          to label %7419 unwind label %7442

7419:                                             ; preds = %7417
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %725) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1868 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1868:                                   ; preds = %7419, %7424
  %7420 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %7421 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1870

7421:                                             ; preds = %.preheader1868
  %7422 = load i8, ptr %7420, align 1, !tbaa !5, !range !9, !noundef !10
  %7423 = trunc nuw i8 %7422 to i1
  br i1 %7423, label %7444, label %7424

7424:                                             ; preds = %7421
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1868 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1870, !llvm.loop !148

7425:                                             ; preds = %7395
  %7426 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %721) #6
  br label %.loopexit.split-lp

7427:                                             ; preds = %7404, %7402, %7400, %7398
  %7428 = landingpad { ptr, i32 }
          cleanup
  br label %7431

7429:                                             ; preds = %7405
  %7430 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %722) #6
  br label %7431

7431:                                             ; preds = %7429, %7427
  %.pn632 = phi { ptr, i32 } [ %7430, %7429 ], [ %7428, %7427 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %722) #6
  br label %.loopexit.split-lp

7432:                                             ; preds = %7409
  %7433 = landingpad { ptr, i32 }
          cleanup
  br label %7436

7434:                                             ; preds = %7410
  %7435 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %723) #6
  br label %7436

7436:                                             ; preds = %7434, %7432
  %.pn634 = phi { ptr, i32 } [ %7435, %7434 ], [ %7433, %7432 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %723) #6
  br label %.loopexit.split-lp

7437:                                             ; preds = %7412
  %7438 = landingpad { ptr, i32 }
          cleanup
  br label %7441

7439:                                             ; preds = %7413
  %7440 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %724) #6
  br label %7441

7441:                                             ; preds = %7439, %7437
  %.pn636 = phi { ptr, i32 } [ %7440, %7439 ], [ %7438, %7437 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %724) #6
  br label %.loopexit.split-lp

7442:                                             ; preds = %7417
  %7443 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %725) #6
  br label %.loopexit.split-lp

7444:                                             ; preds = %7421
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7445 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7445:                                             ; preds = %7444
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %726) #6
  store i8 0, ptr %726, align 1, !tbaa !5
  %7446 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %726)
          to label %7447 unwind label %7476

7447:                                             ; preds = %7445
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %726) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7448 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7448:                                             ; preds = %7447
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %727) #6
  %7449 = 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 %7450 unwind label %7478

7450:                                             ; preds = %7448
  %7451 = 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 %7452 unwind label %7478

7452:                                             ; preds = %7450
  %7453 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %7449, ptr noundef nonnull align 8 dereferenceable(8) %7451)
          to label %7454 unwind label %7478

7454:                                             ; preds = %7452
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %727, ptr noundef nonnull align 1 dereferenceable(1) %7453)
          to label %7455 unwind label %7478

7455:                                             ; preds = %7454
  %7456 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %727)
          to label %7457 unwind label %7480

7457:                                             ; preds = %7455
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %727) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %727) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %728) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %728, i32 noundef 20)
          to label %7458 unwind label %7483

7458:                                             ; preds = %7457
  %7459 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %728)
          to label %7460 unwind label %7485

7460:                                             ; preds = %7458
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %728) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %728) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %729) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %729, i32 noundef 4)
          to label %7461 unwind label %7488

7461:                                             ; preds = %7460
  %7462 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %729)
          to label %7463 unwind label %7490

7463:                                             ; preds = %7461
  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_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %730, i32 noundef 3)
          to label %7464 unwind label %7493

7464:                                             ; preds = %7463
  %7465 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %730)
          to label %7466 unwind label %7495

7466:                                             ; preds = %7464
  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
  %7467 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7468 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7468:                                             ; preds = %7466
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %731) #6
  store i8 1, ptr %731, align 1, !tbaa !5
  %7469 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %731)
          to label %7470 unwind label %7498

7470:                                             ; preds = %7468
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %731) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1861 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1861:                                   ; preds = %7470, %7475
  %7471 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %7472 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1863

7472:                                             ; preds = %.preheader1861
  %7473 = load i8, ptr %7471, align 1, !tbaa !5, !range !9, !noundef !10
  %7474 = trunc nuw i8 %7473 to i1
  br i1 %7474, label %7500, label %7475

7475:                                             ; preds = %7472
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1861 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1863, !llvm.loop !149

7476:                                             ; preds = %7445
  %7477 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %726) #6
  br label %.loopexit.split-lp

7478:                                             ; preds = %7454, %7452, %7450, %7448
  %7479 = landingpad { ptr, i32 }
          cleanup
  br label %7482

7480:                                             ; preds = %7455
  %7481 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %727) #6
  br label %7482

7482:                                             ; preds = %7480, %7478
  %.pn638 = phi { ptr, i32 } [ %7481, %7480 ], [ %7479, %7478 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %727) #6
  br label %.loopexit.split-lp

7483:                                             ; preds = %7457
  %7484 = landingpad { ptr, i32 }
          cleanup
  br label %7487

7485:                                             ; preds = %7458
  %7486 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %728) #6
  br label %7487

7487:                                             ; preds = %7485, %7483
  %.pn640 = phi { ptr, i32 } [ %7486, %7485 ], [ %7484, %7483 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %728) #6
  br label %.loopexit.split-lp

7488:                                             ; preds = %7460
  %7489 = landingpad { ptr, i32 }
          cleanup
  br label %7492

7490:                                             ; preds = %7461
  %7491 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %729) #6
  br label %7492

7492:                                             ; preds = %7490, %7488
  %.pn642 = phi { ptr, i32 } [ %7491, %7490 ], [ %7489, %7488 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %729) #6
  br label %.loopexit.split-lp

7493:                                             ; preds = %7463
  %7494 = landingpad { ptr, i32 }
          cleanup
  br label %7497

7495:                                             ; preds = %7464
  %7496 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %730) #6
  br label %7497

7497:                                             ; preds = %7495, %7493
  %.pn644 = phi { ptr, i32 } [ %7496, %7495 ], [ %7494, %7493 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %730) #6
  br label %.loopexit.split-lp

7498:                                             ; preds = %7468
  %7499 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %731) #6
  br label %.loopexit.split-lp

7500:                                             ; preds = %7472
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7501 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7501:                                             ; preds = %7500
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %732) #6
  store i8 0, ptr %732, align 1, !tbaa !5
  %7502 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %732)
          to label %7503 unwind label %7533

7503:                                             ; preds = %7501
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %732) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7504 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7504:                                             ; preds = %7503
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %733) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %734) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %734, i32 noundef 0)
          to label %7505 unwind label %7535

7505:                                             ; preds = %7504
  %7506 = 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) %734)
          to label %7507 unwind label %7537

7507:                                             ; preds = %7505
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %733, ptr noundef nonnull align 1 dereferenceable(1) %7506)
          to label %7508 unwind label %7537

7508:                                             ; preds = %7507
  %7509 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %733)
          to label %7510 unwind label %7539

7510:                                             ; preds = %7508
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %733) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %734) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %734) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %733) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %735) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %735, i32 noundef 0)
          to label %7511 unwind label %7543

7511:                                             ; preds = %7510
  %7512 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %735)
          to label %7513 unwind label %7545

7513:                                             ; preds = %7511
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %735) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %735) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %736) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %737) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %737, i32 noundef 0)
          to label %7514 unwind label %7548

7514:                                             ; preds = %7513
  %7515 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %737, ptr noundef nonnull align 8 dereferenceable(8) %11)
          to label %7516 unwind label %7550

7516:                                             ; preds = %7514
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %738) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %738, i32 noundef 0)
          to label %7517 unwind label %7552

7517:                                             ; preds = %7516
  %7518 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %7515, ptr noundef nonnull align 8 dereferenceable(8) %738)
          to label %7519 unwind label %7554

7519:                                             ; preds = %7517
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %736, ptr noundef nonnull align 1 dereferenceable(1) %7518)
          to label %7520 unwind label %7554

7520:                                             ; preds = %7519
  %7521 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %736)
          to label %7522 unwind label %7556

7522:                                             ; preds = %7520
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %736) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %738) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %738) #6
  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.end.p0(i64 24, ptr nonnull %736) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %739) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %739, i32 noundef -3)
          to label %7523 unwind label %7562

7523:                                             ; preds = %7522
  %7524 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %739)
          to label %7525 unwind label %7564

7525:                                             ; preds = %7523
  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.start.p0(i64 1, ptr nonnull %740) #6
  store i8 1, ptr %740, align 1, !tbaa !5
  %7526 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %740)
          to label %7527 unwind label %7567

7527:                                             ; preds = %7525
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %740) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1853 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1853:                                   ; preds = %7527, %7532
  %7528 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          to label %7529 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1855

7529:                                             ; preds = %.preheader1853
  %7530 = load i8, ptr %7528, align 1, !tbaa !5, !range !9, !noundef !10
  %7531 = trunc nuw i8 %7530 to i1
  br i1 %7531, label %7569, label %7532

7532:                                             ; preds = %7529
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1853 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1855, !llvm.loop !150

7533:                                             ; preds = %7501
  %7534 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %732) #6
  br label %.loopexit.split-lp

7535:                                             ; preds = %7504
  %7536 = landingpad { ptr, i32 }
          cleanup
  br label %7542

7537:                                             ; preds = %7507, %7505
  %7538 = landingpad { ptr, i32 }
          cleanup
  br label %7541

7539:                                             ; preds = %7508
  %7540 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %733) #6
  br label %7541

7541:                                             ; preds = %7539, %7537
  %.pn646 = phi { ptr, i32 } [ %7540, %7539 ], [ %7538, %7537 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %734) #6
  br label %7542

7542:                                             ; preds = %7541, %7535
  %.pn646.pn = phi { ptr, i32 } [ %.pn646, %7541 ], [ %7536, %7535 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %734) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %733) #6
  br label %.loopexit.split-lp

7543:                                             ; preds = %7510
  %7544 = landingpad { ptr, i32 }
          cleanup
  br label %7547

7545:                                             ; preds = %7511
  %7546 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %735) #6
  br label %7547

7547:                                             ; preds = %7545, %7543
  %.pn649 = phi { ptr, i32 } [ %7546, %7545 ], [ %7544, %7543 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %735) #6
  br label %.loopexit.split-lp

7548:                                             ; preds = %7513
  %7549 = landingpad { ptr, i32 }
          cleanup
  br label %7561

7550:                                             ; preds = %7514
  %7551 = landingpad { ptr, i32 }
          cleanup
  br label %7560

7552:                                             ; preds = %7516
  %7553 = landingpad { ptr, i32 }
          cleanup
  br label %7559

7554:                                             ; preds = %7519, %7517
  %7555 = landingpad { ptr, i32 }
          cleanup
  br label %7558

7556:                                             ; preds = %7520
  %7557 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %736) #6
  br label %7558

7558:                                             ; preds = %7556, %7554
  %.pn651 = phi { ptr, i32 } [ %7557, %7556 ], [ %7555, %7554 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %738) #6
  br label %7559

7559:                                             ; preds = %7558, %7552
  %.pn651.pn = phi { ptr, i32 } [ %.pn651, %7558 ], [ %7553, %7552 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %738) #6
  br label %7560

7560:                                             ; preds = %7559, %7550
  %.pn651.pn.pn = phi { ptr, i32 } [ %.pn651.pn, %7559 ], [ %7551, %7550 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %737) #6
  br label %7561

7561:                                             ; preds = %7560, %7548
  %.pn651.pn.pn.pn = phi { ptr, i32 } [ %.pn651.pn.pn, %7560 ], [ %7549, %7548 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %737) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %736) #6
  br label %.loopexit.split-lp

7562:                                             ; preds = %7522
  %7563 = landingpad { ptr, i32 }
          cleanup
  br label %7566

7564:                                             ; preds = %7523
  %7565 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %739) #6
  br label %7566

7566:                                             ; preds = %7564, %7562
  %.pn656 = phi { ptr, i32 } [ %7565, %7564 ], [ %7563, %7562 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %739) #6
  br label %.loopexit.split-lp

7567:                                             ; preds = %7525
  %7568 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %740) #6
  br label %.loopexit.split-lp

7569:                                             ; preds = %7529
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7570 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7570:                                             ; preds = %7569
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %741) #6
  store i8 0, ptr %741, align 1, !tbaa !5
  %7571 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %741)
          to label %7572 unwind label %7592

7572:                                             ; preds = %7570
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %741) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7573 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7573:                                             ; preds = %7572
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %742) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %742, i32 noundef 768)
          to label %7574 unwind label %7594

7574:                                             ; preds = %7573
  %7575 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %742)
          to label %7576 unwind label %7596

7576:                                             ; preds = %7574
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %742) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %742) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %743) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %743, i32 noundef 0)
          to label %7577 unwind label %7599

7577:                                             ; preds = %7576
  %7578 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %743)
          to label %7579 unwind label %7601

7579:                                             ; preds = %7577
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %743) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %743) #6
  %7580 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1758, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %7581 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7581:                                             ; preds = %7579
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %744) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %744, i32 noundef -2)
          to label %7582 unwind label %7604

7582:                                             ; preds = %7581
  %7583 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %744)
          to label %7584 unwind label %7606

7584:                                             ; preds = %7582
  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 1, ptr nonnull %745) #6
  store i8 1, ptr %745, align 1, !tbaa !5
  %7585 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %745)
          to label %7586 unwind label %7609

7586:                                             ; preds = %7584
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %745) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1846 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1846:                                   ; preds = %7586, %7591
  %7587 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          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.sp1848

7588:                                             ; preds = %.preheader1846
  %7589 = load i8, ptr %7587, align 1, !tbaa !5, !range !9, !noundef !10
  %7590 = trunc nuw i8 %7589 to i1
  br i1 %7590, label %7611, label %7591

7591:                                             ; preds = %7588
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1846 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1848, !llvm.loop !151

7592:                                             ; preds = %7570
  %7593 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %741) #6
  br label %.loopexit.split-lp

7594:                                             ; preds = %7573
  %7595 = landingpad { ptr, i32 }
          cleanup
  br label %7598

7596:                                             ; preds = %7574
  %7597 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %742) #6
  br label %7598

7598:                                             ; preds = %7596, %7594
  %.pn658 = phi { ptr, i32 } [ %7597, %7596 ], [ %7595, %7594 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %742) #6
  br label %.loopexit.split-lp

7599:                                             ; preds = %7576
  %7600 = landingpad { ptr, i32 }
          cleanup
  br label %7603

7601:                                             ; preds = %7577
  %7602 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %743) #6
  br label %7603

7603:                                             ; preds = %7601, %7599
  %.pn660 = phi { ptr, i32 } [ %7602, %7601 ], [ %7600, %7599 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %743) #6
  br label %.loopexit.split-lp

7604:                                             ; preds = %7581
  %7605 = landingpad { ptr, i32 }
          cleanup
  br label %7608

7606:                                             ; preds = %7582
  %7607 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %744) #6
  br label %7608

7608:                                             ; preds = %7606, %7604
  %.pn662 = phi { ptr, i32 } [ %7607, %7606 ], [ %7605, %7604 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %744) #6
  br label %.loopexit.split-lp

7609:                                             ; preds = %7584
  %7610 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %745) #6
  br label %.loopexit.split-lp

7611:                                             ; preds = %7588
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7612 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7612:                                             ; preds = %7611
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %746) #6
  store i8 0, ptr %746, align 1, !tbaa !5
  %7613 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %746)
          to label %7614 unwind label %7636

7614:                                             ; preds = %7612
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %746) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7615 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7615:                                             ; preds = %7614
  %7616 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1750, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %7617 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7617:                                             ; preds = %7615
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %747) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %748) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %748, i32 noundef 0)
          to label %7618 unwind label %7638

7618:                                             ; preds = %7617
  %7619 = 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) %748)
          to label %7620 unwind label %7640

7620:                                             ; preds = %7618
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %747, ptr noundef nonnull align 1 dereferenceable(1) %7619)
          to label %7621 unwind label %7640

7621:                                             ; preds = %7620
  %7622 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1757, ptr noundef nonnull align 8 dereferenceable(24) %747)
          to label %7623 unwind label %7642

7623:                                             ; preds = %7621
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %747) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %748) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %748) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %747) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %749) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %749, i32 noundef 1)
          to label %7624 unwind label %7646

7624:                                             ; preds = %7623
  %7625 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %749)
          to label %7626 unwind label %7648

7626:                                             ; preds = %7624
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %749) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %749) #6
  %7627 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7628 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7628:                                             ; preds = %7626
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %750) #6
  store i8 1, ptr %750, align 1, !tbaa !5
  %7629 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %750)
          to label %7630 unwind label %7651

7630:                                             ; preds = %7628
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %750) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1838 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1838:                                   ; preds = %7630, %7635
  %7631 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1753)
          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.sp1840

7632:                                             ; preds = %.preheader1838
  %7633 = load i8, ptr %7631, align 1, !tbaa !5, !range !9, !noundef !10
  %7634 = trunc nuw i8 %7633 to i1
  br i1 %7634, label %7653, label %7635

7635:                                             ; preds = %7632
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1838 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1840, !llvm.loop !152

7636:                                             ; preds = %7612
  %7637 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %746) #6
  br label %.loopexit.split-lp

7638:                                             ; preds = %7617
  %7639 = landingpad { ptr, i32 }
          cleanup
  br label %7645

7640:                                             ; preds = %7620, %7618
  %7641 = landingpad { ptr, i32 }
          cleanup
  br label %7644

7642:                                             ; preds = %7621
  %7643 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %747) #6
  br label %7644

7644:                                             ; preds = %7642, %7640
  %.pn664 = phi { ptr, i32 } [ %7643, %7642 ], [ %7641, %7640 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %748) #6
  br label %7645

7645:                                             ; preds = %7644, %7638
  %.pn664.pn = phi { ptr, i32 } [ %.pn664, %7644 ], [ %7639, %7638 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %748) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %747) #6
  br label %.loopexit.split-lp

7646:                                             ; preds = %7623
  %7647 = landingpad { ptr, i32 }
          cleanup
  br label %7650

7648:                                             ; preds = %7624
  %7649 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %749) #6
  br label %7650

7650:                                             ; preds = %7648, %7646
  %.pn667 = phi { ptr, i32 } [ %7649, %7648 ], [ %7647, %7646 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %749) #6
  br label %.loopexit.split-lp

7651:                                             ; preds = %7628
  %7652 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %750) #6
  br label %.loopexit.split-lp

7653:                                             ; preds = %7632
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7654 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7654:                                             ; preds = %7653
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %751) #6
  store i8 0, ptr %751, align 1, !tbaa !5
  %7655 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %849, ptr noundef nonnull align 1 dereferenceable(1) %751)
          to label %7656 unwind label %7657

7656:                                             ; preds = %7654
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %751) #6
  br label %.invoke2295

.invoke2295:                                      ; preds = %2334, %2726, %5085, %7134, %7656
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.loopexit1293 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7657:                                             ; preds = %7654
  %7658 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %751) #6
  br label %.loopexit.split-lp

.invoke2315:                                      ; preds = %2017, %7137, %7139, %6000, %6002, %5182, %5621, %5566, %5471, %5478, %5393, %5320, %5186, %5088, %5090, %3783, %3785, %3424, %3426, %2487, %2489, %2480, %2482, %2474, %2476, %2337, %2339, %2021, %2023
  %7659 = phi i32 [ 1, %2023 ], [ 1, %2021 ], [ 1, %2339 ], [ 1, %2337 ], [ 1, %2476 ], [ 1, %2474 ], [ 1, %2482 ], [ 1, %2480 ], [ 1, %2489 ], [ 1, %2487 ], [ 1, %3426 ], [ 1, %3424 ], [ 1, %3785 ], [ 1, %3783 ], [ 1, %5090 ], [ 1, %5088 ], [ 2, %5186 ], [ 2, %5320 ], [ 2, %5393 ], [ 2, %5478 ], [ 2, %5471 ], [ 2, %5566 ], [ 2, %5621 ], [ -3, %5182 ], [ 1, %6002 ], [ 1, %6000 ], [ 1, %7139 ], [ 1, %7137 ], [ 3, %2017 ]
  %7660 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef %7659)
          to label %.invoke2294 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.invoke2294:                                      ; preds = %5990, %2464, %.invoke2315, %5908, %4926, %2478, %2485, %5317, %5390, %5463, %5563, %5618, %5676
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.loopexit1293 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.loopexit1293:                                    ; preds = %.preheader1292, %.invoke2295, %.invoke2294, %3780, %1926
  %.3 = phi i1 [ true, %1926 ], [ %.1, %3780 ], [ true, %.invoke2294 ], [ false, %.invoke2295 ], [ false, %.preheader1292 ]
  %7661 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %27)
  %.not1224 = icmp eq i64 %7661, 0
  br i1 %.not1224, label %.invoke2293, label %7662

7662:                                             ; preds = %.loopexit1293
  %7663 = 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 %7664 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7664:                                             ; preds = %7662
  %7665 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef 0)
          to label %.invoke2293 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.invoke2293:                                      ; preds = %.loopexit1293, %7664
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7666 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7666:                                             ; preds = %.invoke2293
  br i1 %.3, label %7667, label %.invoke

7667:                                             ; preds = %7666
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %752) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %752, i32 noundef 0)
          to label %7668 unwind label %7691

7668:                                             ; preds = %7667
  %7669 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %752, ptr noundef nonnull align 8 dereferenceable(8) %23)
          to label %7670 unwind label %7693

7670:                                             ; preds = %7668
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %753) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %753, i32 noundef 0)
          to label %7671 unwind label %7695

7671:                                             ; preds = %7670
  %7672 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %7669, ptr noundef nonnull align 8 dereferenceable(8) %753)
          to label %7673 unwind label %7697

7673:                                             ; preds = %7671
  %7674 = 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) %7672)
          to label %7675 unwind label %7697

7675:                                             ; preds = %7673
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %753) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %753) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %752) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %752) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %754) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %754, i32 noundef -8192)
          to label %7676 unwind label %7702

7676:                                             ; preds = %7675
  %7677 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1551, ptr noundef nonnull align 8 dereferenceable(24) %754)
          to label %7678 unwind label %7704

7678:                                             ; preds = %7676
  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
  %7679 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %7680 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

7680:                                             ; preds = %7678
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %755) #6
  store i8 0, ptr %755, align 1, !tbaa !5
  %7681 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1553, ptr noundef nonnull align 1 dereferenceable(1) %755)
          to label %7682 unwind label %7707

7682:                                             ; preds = %7680
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %755) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %756) #6
  store i8 1, ptr %756, align 1, !tbaa !5
  %7683 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %756)
          to label %7684 unwind label %7709

7684:                                             ; preds = %7682
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %756) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1288 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930

.preheader1288:                                   ; preds = %7684, %7713
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %757) #6
  store i8 0, ptr %757, align 1, !tbaa !5
  %7685 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %846, ptr noundef nonnull align 1 dereferenceable(1) %757)
          to label %7686 unwind label %7711

7686:                                             ; preds = %.preheader1288
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %757) #6
  %7687 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1554)
          to label %7688 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

7688:                                             ; preds = %7686
  %7689 = load i8, ptr %7687, align 1, !tbaa !5, !range !9, !noundef !10
  %7690 = trunc nuw i8 %7689 to i1
  br i1 %7690, label %.invoke, label %7713

7691:                                             ; preds = %7667
  %7692 = landingpad { ptr, i32 }
          cleanup
  br label %7701

7693:                                             ; preds = %7668
  %7694 = landingpad { ptr, i32 }
          cleanup
  br label %7700

7695:                                             ; preds = %7670
  %7696 = landingpad { ptr, i32 }
          cleanup
  br label %7699

7697:                                             ; preds = %7673, %7671
  %7698 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %753) #6
  br label %7699

7699:                                             ; preds = %7697, %7695
  %.pn1225 = phi { ptr, i32 } [ %7698, %7697 ], [ %7696, %7695 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %753) #6
  br label %7700

7700:                                             ; preds = %7699, %7693
  %.pn1225.pn = phi { ptr, i32 } [ %.pn1225, %7699 ], [ %7694, %7693 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %752) #6
  br label %7701

7701:                                             ; preds = %7700, %7691
  %.pn1225.pn.pn = phi { ptr, i32 } [ %.pn1225.pn, %7700 ], [ %7692, %7691 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %752) #6
  br label %.loopexit.split-lp

7702:                                             ; preds = %7675
  %7703 = landingpad { ptr, i32 }
          cleanup
  br label %7706

7704:                                             ; preds = %7676
  %7705 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %754) #6
  br label %7706

7706:                                             ; preds = %7704, %7702
  %.pn1229 = phi { ptr, i32 } [ %7705, %7704 ], [ %7703, %7702 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %754) #6
  br label %.loopexit.split-lp

7707:                                             ; preds = %7680
  %7708 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %755) #6
  br label %.loopexit.split-lp

7709:                                             ; preds = %7682
  %7710 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %756) #6
  br label %.loopexit.split-lp

7711:                                             ; preds = %.preheader1288
  %7712 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %757) #6
  br label %.loopexit.split-lp

7713:                                             ; preds = %7688
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1288 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 = %7688, %7666
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1763 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930, !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.sp1474, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1489, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1504, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1519, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1534, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1549, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1564, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1579, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1594, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1609, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1624, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1639, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1668, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1683, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1698, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1713, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1728, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1743, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1758, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1773, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1788, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1803, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1818, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1833, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1848, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1863, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1878, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1893, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1908, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1923, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1938, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1952, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1967, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1982, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1997, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2012, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2027, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2042, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2057, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2072, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2087, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2102, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2104, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2094, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2079, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2064, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2049, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2034, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2019, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2004, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1989, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1974, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1959, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1945, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1915, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1900, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1885, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1870, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1855, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1840, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1825, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1810, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1795, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1780, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1765, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1750, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1735, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1720, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1705, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1690, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1675, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1660, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1646, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1631, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1616, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1601, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1586, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1571, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1556, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1526, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1511, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1496, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1481, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1466, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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, %7711, %7709, %7707, %7706, %7701, %7657, %7651, %7650, %7645, %7636, %7609, %7608, %7603, %7598, %7592, %7567, %7566, %7561, %7547, %7542, %7533, %7498, %7497, %7492, %7487, %7482, %7476, %7442, %7441, %7436, %7431, %7425, %7392, %7391, %7373, %7362, %7357, %7348, %7323, %7322, %7317, %7308, %7281, %7280, %7275, %7270, %7261, %7231, %7230, %7225, %7204, %7183, %7178, %7135, %7129, %7128, %7123, %7118, %7112, %7083, %7082, %7077, %7072, %7067, %7061, %7027, %7026, %7021, %7016, %7011, %7005, %6971, %6970, %6965, %6960, %6952, %6946, %6913, %6912, %6907, %6899, %6893, %6865, %6864, %6859, %6854, %6846, %6840, %6809, %6808, %6803, %6798, %6790, %6758, %6756, %6754, %6753, %6747, %6718, %6717, %6712, %6704, %6695, %6664, %6663, %6658, %6653, %6645, %6605, %6603, %6601, %6600, %6594, %6566, %6565, %6560, %6552, %6546, %6518, %6517, %6512, %6507, %6501, %6474, %6473, %6468, %6463, %6457, %6430, %6429, %6411, %6406, %6401, %6380, %6375, %6370, %6365, %6357, %6351, %6315, %6314, %6309, %6301, %6295, %6267, %6266, %6261, %6256, %6248, %6242, %6211, %6210, %6205, %6200, %6192, %6160, %6158, %6156, %6155, %6149, %6120, %6119, %6114, %6106, %6097, %6066, %6065, %6060, %6055, %6047, %5997, %5995, %5993, %5967, %5965, %5963, %5934, %5932, %5930, %5905, %5886, %5884, %5882, %5881, %5876, %5838, %5836, %5834, %5833, %5804, %5779, %5777, %5775, %5754, %5752, %5750, %5730, %5712, %5710, %5708, %5707, %5677, %5671, %5670, %5665, %5660, %5655, %5619, %5613, %5612, %5607, %5582, %5564, %5558, %5557, %5539, %5530, %5516, %5507, %5502, %5464, %5458, %5457, %5439, %5430, %5425, %5420, %5391, %5385, %5384, %5366, %5357, %5352, %5347, %5318, %5312, %5311, %5306, %5301, %5267, %5265, %5263, %5242, %5221, %5219, %5217, %5216, %5167, %5165, %5163, %5162, %5128, %5126, %5124, %5123, %5086, %5080, %5079, %5074, %5065, %5038, %5037, %5032, %5024, %5015, %4984, %4983, %4978, %4970, %4962, %4921, %4919, %4917, %4916, %4884, %4882, %4880, %4879, %4845, %4843, %4841, %4811, %4784, %4782, %4780, %4779, %4774, %4728, %4726, %4724, %4723, %4696, %4688, %4687, %4631, %4629, %4627, %4626, %4621, %4582, %4580, %4578, %4577, %4544, %4542, %4540, %4538, %4514, %4513, %4508, %4503, %4464, %4458, %4457, %4452, %4447, %4439, %4406, %4400, %4399, %4394, %4389, %4359, %4350, %4334, %4328, %4327, %4322, %4295, %4286, %4273, %4262, %4245, %4239, %4238, %4233, %4228, %4198, %4189, %4173, %4167, %4166, %4161, %4156, %4126, %4117, %4101, %4095, %4094, %4089, %4084, %4054, %4045, %4028, %4026, %4024, %4023, %4018, %3980, %3978, %3976, %3975, %3946, %3944, %3942, %3941, %3912, %3910, %3908, %3907, %3902, %3850, %3848, %3846, %3845, %3781, %3775, %3774, %3769, %3760, %3733, %3732, %3727, %3722, %3714, %3676, %3674, %3672, %3671, %3666, %3633, %3631, %3629, %3628, %3577, %3575, %3573, %3572, %3540, %3538, %3536, %3535, %3504, %3502, %3500, %3499, %3464, %3462, %3460, %3459, %3420, %3414, %3413, %3408, %3377, %3375, %3373, %3372, %3343, %3341, %3339, %3316, %3314, %3312, %3295, %3279, %3277, %3275, %3274, %3243, %3241, %3239, %3238, %3232, %3197, %3196, %3191, %3186, %3180, %3155, %3154, %3149, %3135, %3130, %3091, %3089, %3087, %3064, %3062, %3060, %3040, %3038, %3036, %3035, %3004, %3002, %3000, %2979, %2977, %2975, %2974, %2943, %2941, %2939, %2918, %2916, %2914, %2913, %2875, %2873, %2871, %2870, %2841, %2836, %2811, %2806, %2772, %2770, %2768, %2767, %2727, %2721, %2720, %2715, %2684, %2682, %2680, %2679, %2649, %2647, %2645, %2644, %2638, %2609, %2608, %2603, %2598, %2592, %2567, %2566, %2561, %2547, %2542, %2471, %2469, %2467, %2444, %2442, %2440, %2418, %2416, %2414, %2413, %2376, %2374, %2372, %2371, %2335, %2329, %2328, %2323, %2318, %2312, %2283, %2282, %2277, %2263, %2197, %2195, %2193, %2192, %2186, %2158, %2157, %2152, %2144, %2138, %2110, %2109, %2104, %2090, %2000, %1998, %1996, %1995, %1989, %1987, %1934, %1932, %1931, %1898, %1896, %1894, %1893, %1852, %1850, %1848, %1846, %1844, %1842, %1795, %1794, %1789, %1746, %1744, %1742, %1721, %1668, %1666, %1664, %1663, %1602, %1600, %1598, %1575, %1573, %1571, %1545, %1539, %1538, %1533, %1527, %1507, %1506, %1501, %1496, %1490, %1467, %1466, %1461, %1455, %1435, %1434, %1429, %1424, %1419, %1392, %1390, %1388, %1386, %1363, %1362, %1357, %1336, %1334, %1332, %1330, %1306, %1305, %1300, %1295, %1273, %1260, %1254, %1235, %1234, %1229, %1224, %1219, %1192, %1190, %1188, %1187, %1182, %1176, %1152, %1151, %1146, %1125, %1123, %1121, %1120, %1115, %1109, %1085, %1084, %1079, %1074, %1069, %1036, %1034, %1032, %1011, %1009, %1007, %980, %978, %976, %955, %953, %951, %949, %947, %945, %943
  %.pn1231 = phi { ptr, i32 } [ %7712, %7711 ], [ %7710, %7709 ], [ %7708, %7707 ], [ %.pn1229, %7706 ], [ %.pn1225.pn.pn, %7701 ], [ %1853, %1852 ], [ %1851, %1850 ], [ %1849, %1848 ], [ %1847, %1846 ], [ %1845, %1844 ], [ %1935, %1934 ], [ %1933, %1932 ], [ %7658, %7657 ], [ %7652, %7651 ], [ %.pn667, %7650 ], [ %.pn664.pn, %7645 ], [ %7637, %7636 ], [ %7610, %7609 ], [ %.pn662, %7608 ], [ %.pn660, %7603 ], [ %.pn658, %7598 ], [ %7593, %7592 ], [ %7568, %7567 ], [ %.pn656, %7566 ], [ %.pn651.pn.pn.pn, %7561 ], [ %.pn649, %7547 ], [ %.pn646.pn, %7542 ], [ %7534, %7533 ], [ %7499, %7498 ], [ %.pn644, %7497 ], [ %.pn642, %7492 ], [ %.pn640, %7487 ], [ %.pn638, %7482 ], [ %7477, %7476 ], [ %7443, %7442 ], [ %.pn636, %7441 ], [ %.pn634, %7436 ], [ %.pn632, %7431 ], [ %7426, %7425 ], [ %7393, %7392 ], [ %.pn630, %7391 ], [ %.pn628, %7373 ], [ %.pn626, %7362 ], [ %.pn623.pn, %7357 ], [ %7349, %7348 ], [ %7324, %7323 ], [ %.pn621, %7322 ], [ %.pn618.pn, %7317 ], [ %7309, %7308 ], [ %7282, %7281 ], [ %.pn616, %7280 ], [ %.pn614, %7275 ], [ %.pn611.pn, %7270 ], [ %7262, %7261 ], [ %7232, %7231 ], [ %.pn609, %7230 ], [ %.pn607, %7225 ], [ %.pn605, %7183 ], [ %.pn603, %7204 ], [ %.pn599.pn, %7178 ], [ %7136, %7135 ], [ %7130, %7129 ], [ %.pn830, %7128 ], [ %.pn828, %7123 ], [ %.pn826, %7118 ], [ %7113, %7112 ], [ %7084, %7083 ], [ %.pn824, %7082 ], [ %.pn822, %7077 ], [ %.pn820, %7072 ], [ %.pn818, %7067 ], [ %7062, %7061 ], [ %7028, %7027 ], [ %.pn816, %7026 ], [ %.pn814, %7021 ], [ %.pn812, %7016 ], [ %.pn810, %7011 ], [ %7006, %7005 ], [ %6972, %6971 ], [ %.pn808, %6970 ], [ %.pn806, %6965 ], [ %.pn803.pn, %6960 ], [ %.pn801, %6952 ], [ %6947, %6946 ], [ %6914, %6913 ], [ %.pn799, %6912 ], [ %.pn796.pn, %6907 ], [ %.pn794, %6899 ], [ %6894, %6893 ], [ %6866, %6865 ], [ %.pn792, %6864 ], [ %.pn790, %6859 ], [ %.pn787.pn, %6854 ], [ %.pn785, %6846 ], [ %6841, %6840 ], [ %6810, %6809 ], [ %.pn783, %6808 ], [ %.pn781, %6803 ], [ %.pn778.pn, %6798 ], [ %.pn776, %6790 ], [ %6759, %6758 ], [ %6757, %6756 ], [ %6755, %6754 ], [ %.pn774, %6753 ], [ %6748, %6747 ], [ %6719, %6718 ], [ %.pn772, %6717 ], [ %.pn769.pn, %6712 ], [ %.pn766.pn, %6704 ], [ %6696, %6695 ], [ %6665, %6664 ], [ %.pn764, %6663 ], [ %.pn762, %6658 ], [ %.pn759.pn, %6653 ], [ %.pn756.pn, %6645 ], [ %6606, %6605 ], [ %6604, %6603 ], [ %6602, %6601 ], [ %.pn754, %6600 ], [ %6595, %6594 ], [ %6567, %6566 ], [ %.pn752, %6565 ], [ %.pn749.pn, %6560 ], [ %.pn747, %6552 ], [ %6547, %6546 ], [ %6519, %6518 ], [ %.pn745, %6517 ], [ %.pn743, %6512 ], [ %.pn741, %6507 ], [ %6502, %6501 ], [ %6475, %6474 ], [ %.pn739, %6473 ], [ %.pn737, %6468 ], [ %.pn735, %6463 ], [ %6458, %6457 ], [ %6431, %6430 ], [ %.pn733, %6429 ], [ %.pn731, %6411 ], [ %.pn729, %6406 ], [ %.pn727, %6401 ], [ %.pn725, %6380 ], [ %.pn723, %6375 ], [ %.pn721, %6370 ], [ %.pn718.pn, %6365 ], [ %.pn716, %6357 ], [ %6352, %6351 ], [ %6316, %6315 ], [ %.pn714, %6314 ], [ %.pn711.pn, %6309 ], [ %.pn709, %6301 ], [ %6296, %6295 ], [ %6268, %6267 ], [ %.pn707, %6266 ], [ %.pn705, %6261 ], [ %.pn702.pn, %6256 ], [ %.pn700, %6248 ], [ %6243, %6242 ], [ %6212, %6211 ], [ %.pn698, %6210 ], [ %.pn696, %6205 ], [ %.pn693.pn, %6200 ], [ %.pn691, %6192 ], [ %6161, %6160 ], [ %6159, %6158 ], [ %6157, %6156 ], [ %.pn689, %6155 ], [ %6150, %6149 ], [ %6121, %6120 ], [ %.pn687, %6119 ], [ %.pn684.pn, %6114 ], [ %.pn681.pn, %6106 ], [ %6098, %6097 ], [ %6067, %6066 ], [ %.pn679, %6065 ], [ %.pn677, %6060 ], [ %.pn674.pn, %6055 ], [ %.pn671.pn, %6047 ], [ %5998, %5997 ], [ %5996, %5995 ], [ %5994, %5993 ], [ %5968, %5967 ], [ %5966, %5965 ], [ %5964, %5963 ], [ %5935, %5934 ], [ %5933, %5932 ], [ %5931, %5930 ], [ %.pn852, %5905 ], [ %5887, %5886 ], [ %5885, %5884 ], [ %5883, %5882 ], [ %.pn850, %5881 ], [ %.pn846.pn.pn, %5876 ], [ %5839, %5838 ], [ %5837, %5836 ], [ %5835, %5834 ], [ %.pn844, %5833 ], [ %.pn842, %5804 ], [ %5780, %5779 ], [ %5778, %5777 ], [ %5776, %5775 ], [ %5755, %5754 ], [ %5753, %5752 ], [ %5751, %5750 ], [ %.pn840, %5730 ], [ %5713, %5712 ], [ %5711, %5710 ], [ %5709, %5708 ], [ %.pn838, %5707 ], [ %5678, %5677 ], [ %5672, %5671 ], [ %.pn862, %5670 ], [ %.pn860, %5665 ], [ %.pn858, %5660 ], [ %.pn855.pn, %5655 ], [ %5620, %5619 ], [ %5614, %5613 ], [ %.pn870, %5612 ], [ %.pn868, %5607 ], [ %.pn865, %5582 ], [ %5565, %5564 ], [ %5559, %5558 ], [ %.pn886, %5557 ], [ %.pn884, %5530 ], [ %.pn882, %5539 ], [ %.pn879, %5516 ], [ %.pn877, %5507 ], [ %.pn874.pn, %5502 ], [ %5465, %5464 ], [ %5459, %5458 ], [ %.pn899, %5457 ], [ %.pn897, %5430 ], [ %.pn895, %5439 ], [ %.pn892, %5425 ], [ %.pn889.pn, %5420 ], [ %5392, %5391 ], [ %5386, %5385 ], [ %.pn912, %5384 ], [ %.pn910, %5357 ], [ %.pn908, %5366 ], [ %.pn905, %5352 ], [ %.pn902.pn, %5347 ], [ %5319, %5318 ], [ %5313, %5312 ], [ %.pn925, %5311 ], [ %.pn923, %5306 ], [ %.pn920.pn, %5301 ], [ %5268, %5267 ], [ %5266, %5265 ], [ %5264, %5263 ], [ %.pn917, %5242 ], [ %5222, %5221 ], [ %5220, %5219 ], [ %5218, %5217 ], [ %.pn915, %5216 ], [ %5168, %5167 ], [ %5166, %5165 ], [ %5164, %5163 ], [ %.pn835, %5162 ], [ %5129, %5128 ], [ %5127, %5126 ], [ %5125, %5124 ], [ %.pn833, %5123 ], [ %5087, %5086 ], [ %5081, %5080 ], [ %.pn1058, %5079 ], [ %.pn1055.pn, %5074 ], [ %5066, %5065 ], [ %5039, %5038 ], [ %.pn1053, %5037 ], [ %.pn1050.pn, %5032 ], [ %.pn1047.pn, %5024 ], [ %5016, %5015 ], [ %4985, %4984 ], [ %.pn1045, %4983 ], [ %.pn1042.pn, %4978 ], [ %.pn1039.pn, %4970 ], [ %.pn1037, %4962 ], [ %4922, %4921 ], [ %4920, %4919 ], [ %4918, %4917 ], [ %.pn950, %4916 ], [ %4885, %4884 ], [ %4883, %4882 ], [ %4881, %4880 ], [ %.pn948, %4879 ], [ %4846, %4845 ], [ %4844, %4843 ], [ %4842, %4841 ], [ %.pn946, %4811 ], [ %4785, %4784 ], [ %4783, %4782 ], [ %4781, %4780 ], [ %.pn944, %4779 ], [ %.pn942, %4774 ], [ %4729, %4728 ], [ %4727, %4726 ], [ %4725, %4724 ], [ %.pn940, %4723 ], [ %4697, %4696 ], [ %4689, %4688 ], [ %.pn938, %4687 ], [ %4632, %4631 ], [ %4630, %4629 ], [ %4628, %4627 ], [ %.pn936, %4626 ], [ %.pn934, %4621 ], [ %4583, %4582 ], [ %4581, %4580 ], [ %4579, %4578 ], [ %.pn932, %4577 ], [ %4545, %4544 ], [ %4543, %4542 ], [ %4541, %4540 ], [ %4539, %4538 ], [ %4515, %4514 ], [ %.pn957, %4513 ], [ %.pn955, %4508 ], [ %.pn952.pn, %4503 ], [ %4465, %4464 ], [ %4459, %4458 ], [ %.pn966, %4457 ], [ %.pn964, %4452 ], [ %.pn961.pn, %4447 ], [ %.pn959, %4439 ], [ %4407, %4406 ], [ %4401, %4400 ], [ %.pn977, %4399 ], [ %.pn975, %4394 ], [ %.pn972.pn, %4389 ], [ %.pn970, %4350 ], [ %.pn968, %4359 ], [ %4335, %4334 ], [ %4329, %4328 ], [ %.pn990, %4327 ], [ %.pn987.pn, %4322 ], [ %.pn985, %4286 ], [ %.pn983, %4295 ], [ %.pn981, %4273 ], [ %.pn979, %4262 ], [ %4246, %4245 ], [ %4240, %4239 ], [ %.pn1001, %4238 ], [ %.pn999, %4233 ], [ %.pn996.pn, %4228 ], [ %.pn994, %4189 ], [ %.pn992, %4198 ], [ %4174, %4173 ], [ %4168, %4167 ], [ %.pn1012, %4166 ], [ %.pn1010, %4161 ], [ %.pn1007.pn, %4156 ], [ %.pn1005, %4117 ], [ %.pn1003, %4126 ], [ %4102, %4101 ], [ %4096, %4095 ], [ %.pn1023, %4094 ], [ %.pn1021, %4089 ], [ %.pn1018.pn, %4084 ], [ %.pn1016, %4045 ], [ %.pn1014, %4054 ], [ %4029, %4028 ], [ %4027, %4026 ], [ %4025, %4024 ], [ %.pn1027, %4023 ], [ %.pn1025, %4018 ], [ %3981, %3980 ], [ %3979, %3978 ], [ %3977, %3976 ], [ %.pn1029, %3975 ], [ %3947, %3946 ], [ %3945, %3944 ], [ %3943, %3942 ], [ %.pn1031, %3941 ], [ %3913, %3912 ], [ %3911, %3910 ], [ %3909, %3908 ], [ %.pn1035, %3907 ], [ %.pn1033, %3902 ], [ %3851, %3850 ], [ %3849, %3848 ], [ %3847, %3846 ], [ %.pn929, %3845 ], [ %3782, %3781 ], [ %3776, %3775 ], [ %.pn1139, %3774 ], [ %.pn1136.pn, %3769 ], [ %3761, %3760 ], [ %3734, %3733 ], [ %.pn1134, %3732 ], [ %.pn1132, %3727 ], [ %.pn1129.pn, %3722 ], [ %.pn1126.pn, %3714 ], [ %3677, %3676 ], [ %3675, %3674 ], [ %3673, %3672 ], [ %.pn1124, %3671 ], [ %.pn1122, %3666 ], [ %3634, %3633 ], [ %3632, %3631 ], [ %3630, %3629 ], [ %.pn1120, %3628 ], [ %3578, %3577 ], [ %3576, %3575 ], [ %3574, %3573 ], [ %.pn1117, %3572 ], [ %3541, %3540 ], [ %3539, %3538 ], [ %3537, %3536 ], [ %.pn1115, %3535 ], [ %3505, %3504 ], [ %3503, %3502 ], [ %3501, %3500 ], [ %.pn1113, %3499 ], [ %3465, %3464 ], [ %3463, %3462 ], [ %3461, %3460 ], [ %.pn1111, %3459 ], [ %3421, %3420 ], [ %3415, %3414 ], [ %.pn1102, %3413 ], [ %.pn1099.pn, %3408 ], [ %3378, %3377 ], [ %3376, %3375 ], [ %3374, %3373 ], [ %.pn1097, %3372 ], [ %3344, %3343 ], [ %3342, %3341 ], [ %3340, %3339 ], [ %3317, %3316 ], [ %3315, %3314 ], [ %3313, %3312 ], [ %.pn1095, %3295 ], [ %3280, %3279 ], [ %3278, %3277 ], [ %3276, %3275 ], [ %.pn1093, %3274 ], [ %3244, %3243 ], [ %3242, %3241 ], [ %3240, %3239 ], [ %.pn1091, %3238 ], [ %3233, %3232 ], [ %3198, %3197 ], [ %.pn1089, %3196 ], [ %.pn1087, %3191 ], [ %.pn1085, %3186 ], [ %3181, %3180 ], [ %3156, %3155 ], [ %.pn1083, %3154 ], [ %.pn1078.pn.pn.pn, %3149 ], [ %.pn1076, %3135 ], [ %.pn1073.pn, %3130 ], [ %3092, %3091 ], [ %3090, %3089 ], [ %3088, %3087 ], [ %3065, %3064 ], [ %3063, %3062 ], [ %3061, %3060 ], [ %3041, %3040 ], [ %3039, %3038 ], [ %3037, %3036 ], [ %.pn1104, %3035 ], [ %3005, %3004 ], [ %3003, %3002 ], [ %3001, %3000 ], [ %2980, %2979 ], [ %2978, %2977 ], [ %2976, %2975 ], [ %.pn1106, %2974 ], [ %2944, %2943 ], [ %2942, %2941 ], [ %2940, %2939 ], [ %2919, %2918 ], [ %2917, %2916 ], [ %2915, %2914 ], [ %.pn1108, %2913 ], [ %2876, %2875 ], [ %2874, %2873 ], [ %2872, %2871 ], [ %.pn1071, %2870 ], [ %.pn1069, %2811 ], [ %.pn1067, %2806 ], [ %.pn1065, %2841 ], [ %.pn1063, %2836 ], [ %2773, %2772 ], [ %2771, %2770 ], [ %2769, %2768 ], [ %.pn1061, %2767 ], [ %2728, %2727 ], [ %2722, %2721 ], [ %.pn1167, %2720 ], [ %.pn1164.pn, %2715 ], [ %2685, %2684 ], [ %2683, %2682 ], [ %2681, %2680 ], [ %.pn1162, %2679 ], [ %2650, %2649 ], [ %2648, %2647 ], [ %2646, %2645 ], [ %.pn1160, %2644 ], [ %2639, %2638 ], [ %2610, %2609 ], [ %.pn1158, %2608 ], [ %.pn1156, %2603 ], [ %.pn1154, %2598 ], [ %2593, %2592 ], [ %2568, %2567 ], [ %.pn1152, %2566 ], [ %.pn1147.pn.pn.pn, %2561 ], [ %.pn1145, %2547 ], [ %.pn1142.pn, %2542 ], [ %2472, %2471 ], [ %2470, %2469 ], [ %2468, %2467 ], [ %2445, %2444 ], [ %2443, %2442 ], [ %2441, %2440 ], [ %2419, %2418 ], [ %2417, %2416 ], [ %2415, %2414 ], [ %.pn1176, %2413 ], [ %2377, %2376 ], [ %2375, %2374 ], [ %2373, %2372 ], [ %.pn1174, %2371 ], [ %2336, %2335 ], [ %2330, %2329 ], [ %.pn1221, %2328 ], [ %.pn1219, %2323 ], [ %.pn1217, %2318 ], [ %2313, %2312 ], [ %2284, %2283 ], [ %.pn1215, %2282 ], [ %.pn1210.pn.pn.pn, %2277 ], [ %.pn1203.pn.pn.pn.pn.pn, %2263 ], [ %2198, %2197 ], [ %2196, %2195 ], [ %2194, %2193 ], [ %.pn1201, %2192 ], [ %2187, %2186 ], [ %2159, %2158 ], [ %.pn1199, %2157 ], [ %.pn1196.pn, %2152 ], [ %.pn1194, %2144 ], [ %2139, %2138 ], [ %2111, %2110 ], [ %.pn1192, %2109 ], [ %.pn1187.pn.pn.pn, %2104 ], [ %.pn1180.pn.pn.pn.pn.pn, %2090 ], [ %2001, %2000 ], [ %1999, %1998 ], [ %1997, %1996 ], [ %.pn595, %1995 ], [ %1990, %1989 ], [ %1988, %1987 ], [ %.pn593, %1931 ], [ %1899, %1898 ], [ %1897, %1896 ], [ %1895, %1894 ], [ %.pn591, %1893 ], [ %1843, %1842 ], [ %1796, %1795 ], [ %.pn589, %1794 ], [ %.pn587, %1789 ], [ %1747, %1746 ], [ %1745, %1744 ], [ %1743, %1742 ], [ %.pn582.pn.pn.pn, %1721 ], [ %1669, %1668 ], [ %1667, %1666 ], [ %1665, %1664 ], [ %.pn576.pn.pn.pn, %1663 ], [ %1603, %1602 ], [ %1601, %1600 ], [ %1599, %1598 ], [ %1576, %1575 ], [ %1574, %1573 ], [ %1572, %1571 ], [ %1546, %1545 ], [ %1540, %1539 ], [ %.pn574, %1538 ], [ %.pn572, %1533 ], [ %1528, %1527 ], [ %1508, %1507 ], [ %.pn570, %1506 ], [ %.pn568, %1501 ], [ %.pn566, %1496 ], [ %1491, %1490 ], [ %1468, %1467 ], [ %.pn564, %1466 ], [ %.pn562, %1461 ], [ %1456, %1455 ], [ %1436, %1435 ], [ %.pn560, %1434 ], [ %.pn558, %1429 ], [ %.pn556, %1424 ], [ %.pn554, %1419 ], [ %1393, %1392 ], [ %1391, %1390 ], [ %1389, %1388 ], [ %1387, %1386 ], [ %1364, %1363 ], [ %.pn552, %1362 ], [ %.pn550, %1357 ], [ %1337, %1336 ], [ %1335, %1334 ], [ %1333, %1332 ], [ %1331, %1330 ], [ %1307, %1306 ], [ %.pn548, %1305 ], [ %.pn546, %1300 ], [ %.pn544, %1295 ], [ %.pn542, %1260 ], [ %.pn540, %1273 ], [ %1255, %1254 ], [ %1236, %1235 ], [ %.pn538, %1234 ], [ %.pn536, %1229 ], [ %.pn534, %1224 ], [ %.pn532, %1219 ], [ %1193, %1192 ], [ %1191, %1190 ], [ %1189, %1188 ], [ %.pn530, %1187 ], [ %.pn528, %1182 ], [ %1177, %1176 ], [ %1153, %1152 ], [ %.pn526, %1151 ], [ %.pn524, %1146 ], [ %1126, %1125 ], [ %1124, %1123 ], [ %1122, %1121 ], [ %.pn522, %1120 ], [ %.pn520, %1115 ], [ %1110, %1109 ], [ %1086, %1085 ], [ %.pn518, %1084 ], [ %.pn516, %1079 ], [ %.pn514, %1074 ], [ %.pn, %1069 ], [ %1037, %1036 ], [ %1035, %1034 ], [ %1033, %1032 ], [ %1012, %1011 ], [ %1010, %1009 ], [ %1008, %1007 ], [ %981, %980 ], [ %979, %978 ], [ %977, %976 ], [ %956, %955 ], [ %954, %953 ], [ %952, %951 ], [ %950, %949 ], [ %948, %947 ], [ %946, %945 ], [ %944, %943 ], [ %lpad.loopexit, %.loopexit ], [ %lpad.loopexit1268, %.loopexit.split-lp.loopexit ], [ %lpad.loopexit1272, %.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1275, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1279, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1282, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1286, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1289, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1294, %.loopexit.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.loopexit1297, %.loopexit.split-lp.loopexit.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.loopexit1301, %.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1304, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1308, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1311, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1315, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1318, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1322, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1325, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1329, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1332, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1336, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1339, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1343, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1346, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1350, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1353, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1357, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1360, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1364, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1367, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1371, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1374, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1378, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1381, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1385, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1388, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1392, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1395, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1399, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1402, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1406, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1409, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1413, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1416, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1420, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1423, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1427, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1430, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1434, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1437, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1441, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1444, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1448, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1451, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1455, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1458, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1462, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.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.loopexit1469, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1466 ], [ %lpad.loopexit1477, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1474 ], [ %lpad.loopexit1484, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1481 ], [ %lpad.loopexit1492, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1489 ], [ %lpad.loopexit1499, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1496 ], [ %lpad.loopexit1507, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1504 ], [ %lpad.loopexit1514, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1511 ], [ %lpad.loopexit1522, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1519 ], [ %lpad.loopexit1529, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1526 ], [ %lpad.loopexit1537, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1534 ], [ %lpad.loopexit1544, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1541 ], [ %lpad.loopexit1552, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1549 ], [ %lpad.loopexit1559, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1556 ], [ %lpad.loopexit1567, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1564 ], [ %lpad.loopexit1574, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1571 ], [ %lpad.loopexit1582, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1579 ], [ %lpad.loopexit1589, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1586 ], [ %lpad.loopexit1597, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1594 ], [ %lpad.loopexit1604, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1601 ], [ %lpad.loopexit1612, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1609 ], [ %lpad.loopexit1619, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1616 ], [ %lpad.loopexit1627, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1624 ], [ %lpad.loopexit1634, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1631 ], [ %lpad.loopexit1642, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1639 ], [ %lpad.loopexit1649, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1646 ], [ %lpad.loopexit1656, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1653 ], [ %lpad.loopexit1663, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1660 ], [ %lpad.loopexit1671, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1668 ], [ %lpad.loopexit1678, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1675 ], [ %lpad.loopexit1686, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1683 ], [ %lpad.loopexit1693, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1690 ], [ %lpad.loopexit1701, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1698 ], [ %lpad.loopexit1708, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1705 ], [ %lpad.loopexit1716, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1713 ], [ %lpad.loopexit1723, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1720 ], [ %lpad.loopexit1731, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1728 ], [ %lpad.loopexit1738, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1735 ], [ %lpad.loopexit1746, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1743 ], [ %lpad.loopexit1753, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1750 ], [ %lpad.loopexit1761, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1758 ], [ %lpad.loopexit1768, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1765 ], [ %lpad.loopexit1776, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1773 ], [ %lpad.loopexit1783, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1780 ], [ %lpad.loopexit1791, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1788 ], [ %lpad.loopexit1798, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1795 ], [ %lpad.loopexit1806, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1803 ], [ %lpad.loopexit1813, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1810 ], [ %lpad.loopexit1821, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1818 ], [ %lpad.loopexit1828, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1825 ], [ %lpad.loopexit1836, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1833 ], [ %lpad.loopexit1843, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1840 ], [ %lpad.loopexit1851, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1848 ], [ %lpad.loopexit1858, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1855 ], [ %lpad.loopexit1866, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1863 ], [ %lpad.loopexit1873, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1870 ], [ %lpad.loopexit1881, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1878 ], [ %lpad.loopexit1888, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1885 ], [ %lpad.loopexit1896, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1893 ], [ %lpad.loopexit1903, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1900 ], [ %lpad.loopexit1911, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1908 ], [ %lpad.loopexit1918, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1915 ], [ %lpad.loopexit1926, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1923 ], [ %lpad.loopexit1933, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1930 ], [ %lpad.loopexit1941, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1938 ], [ %lpad.loopexit1948, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1945 ], [ %lpad.loopexit1955, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1952 ], [ %lpad.loopexit1962, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1959 ], [ %lpad.loopexit1970, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1967 ], [ %lpad.loopexit1977, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1974 ], [ %lpad.loopexit1985, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1982 ], [ %lpad.loopexit1992, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1989 ], [ %lpad.loopexit2000, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1997 ], [ %lpad.loopexit2007, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2004 ], [ %lpad.loopexit2015, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2012 ], [ %lpad.loopexit2022, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2019 ], [ %lpad.loopexit2030, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2027 ], [ %lpad.loopexit2037, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2034 ], [ %lpad.loopexit2045, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2042 ], [ %lpad.loopexit2052, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2049 ], [ %lpad.loopexit2060, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2057 ], [ %lpad.loopexit2067, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2064 ], [ %lpad.loopexit2075, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2072 ], [ %lpad.loopexit2082, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2079 ], [ %lpad.loopexit2090, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2087 ], [ %lpad.loopexit2097, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2094 ], [ %lpad.loopexit2105, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2102 ], [ %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.sp2104 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %32) #6
  br label %7714

7714:                                             ; preds = %.loopexit.split-lp, %941
  %.pn1231.pn = phi { ptr, i32 } [ %.pn1231, %.loopexit.split-lp ], [ %942, %941 ]
  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 %7715

7715:                                             ; preds = %7714, %939
  %.pn1231.pn.pn = phi { ptr, i32 } [ %.pn1231.pn, %7714 ], [ %940, %939 ]
  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 %7716

7716:                                             ; preds = %7715, %937
  %.pn1231.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn, %7715 ], [ %938, %937 ]
  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 %7717

7717:                                             ; preds = %7716, %935
  %.pn1231.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn, %7716 ], [ %936, %935 ]
  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 %7718

7718:                                             ; preds = %7717, %933
  %.pn1231.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn, %7717 ], [ %934, %933 ]
  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 %7719

7719:                                             ; preds = %7718, %931
  %.pn1231.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn, %7718 ], [ %932, %931 ]
  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 %7720

7720:                                             ; preds = %7719, %929
  %.pn1231.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn, %7719 ], [ %930, %929 ]
  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 %7721

7721:                                             ; preds = %7720, %927
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn, %7720 ], [ %928, %927 ]
  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 %7722

7722:                                             ; preds = %7721, %925
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn, %7721 ], [ %926, %925 ]
  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 %7723

7723:                                             ; preds = %7722, %923
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7722 ], [ %924, %923 ]
  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 %7724

7724:                                             ; preds = %7723, %921
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7723 ], [ %922, %921 ]
  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 %7725

7725:                                             ; preds = %7724, %919
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7724 ], [ %920, %919 ]
  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 %7726

7726:                                             ; preds = %7725, %917
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7725 ], [ %918, %917 ]
  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 %7727

7727:                                             ; preds = %7726, %915
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7726 ], [ %916, %915 ]
  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 %7728

7728:                                             ; preds = %7727, %913
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7727 ], [ %914, %913 ]
  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 %7729

7729:                                             ; preds = %7728, %911
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7728 ], [ %912, %911 ]
  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 %7730

7730:                                             ; preds = %7729, %909
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7729 ], [ %910, %909 ]
  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 %7731

7731:                                             ; preds = %7730, %907
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7730 ], [ %908, %907 ]
  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 %7732

7732:                                             ; preds = %7731, %905
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7731 ], [ %906, %905 ]
  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 %7733

7733:                                             ; preds = %7732, %903
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7732 ], [ %904, %903 ]
  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 %7734

7734:                                             ; preds = %7733, %901
  %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7733 ], [ %902, %901 ]
  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 %7735

7735:                                             ; preds = %7734, %899
  %.pn1231.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 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7734 ], [ %900, %899 ]
  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 %7736

7736:                                             ; preds = %7735, %897
  %.pn1231.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 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7735 ], [ %898, %897 ]
  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 %7737

7737:                                             ; preds = %7736, %895
  %.pn1231.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 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7736 ], [ %896, %895 ]
  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 %7738

7738:                                             ; preds = %7737, %893
  %.pn1231.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 } [ %.pn1231.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7737 ], [ %894, %893 ]
  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 %7739

7739:                                             ; preds = %7738, %891
  %.pn1231.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 } [ %.pn1231.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, %7738 ], [ %892, %891 ]
  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 %7740

7740:                                             ; preds = %7739, %889
  %.pn1231.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 } [ %.pn1231.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, %7739 ], [ %890, %889 ]
  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 %7741

7741:                                             ; preds = %7740, %887
  %.pn1231.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 } [ %.pn1231.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, %7740 ], [ %888, %887 ]
  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 %7742

7742:                                             ; preds = %7741, %885
  %.pn1231.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 } [ %.pn1231.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, %7741 ], [ %886, %885 ]
  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 %7743

7743:                                             ; preds = %7742, %883
  %.pn1231.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 } [ %.pn1231.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, %7742 ], [ %884, %883 ]
  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 } %.pn1231.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 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: 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: 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 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 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 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 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: 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: 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