; LLVM IR from gem5/gem5 :: src/systemc/tests/systemc/misc/sim_tests/cycle_dw8051_demo (cycle_model)

; 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"

%struct.instr = type { i32, i32, %struct.operand, %struct.operand, %struct.operand, i32 }
%struct.operand = type { i32, i32 }
%struct.cycle_model = type <{ %"class.sc_core::sc_module", %"class.sc_core::sc_in", ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, [65536 x i32], [65536 x i32], [2048 x i32], i32, [8 x i32], [4 x i8], ptr, i32, i32, i32, [4 x i8] }>
%"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.0", %"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.0" = type { %"struct.std::_Vector_base.1" }
%"struct.std::_Vector_base.1" = 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" = 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.8" }
%"class.sc_core::sc_port_base" = type { %"class.sc_core::sc_object", ptr }
%"class.std::vector.8" = type { %"struct.std::_Vector_base.9" }
%"struct.std::_Vector_base.9" = 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 }

; Function Attrs: mustprogress nounwind uwtable
define dso_local void @_ZN11cycle_model6decodeEiP5instr(ptr noundef nonnull align 8 dereferenceable(533052) %0, i32 noundef %1, ptr noundef %2) #0 align 2 {
  %4 = alloca ptr, align 8
  %5 = alloca i32, align 4
  %6 = alloca ptr, align 8
  store ptr %0, ptr %4, align 8, !tbaa !5
  store i32 %1, ptr %5, align 4, !tbaa !9
  store ptr %2, ptr %6, align 8, !tbaa !5
  %7 = load ptr, ptr %4, align 8
  %8 = load ptr, ptr %6, align 8, !tbaa !5
  %9 = getelementptr inbounds %struct.instr, ptr %8, i32 0, i32 0
  store i32 22, ptr %9, align 4, !tbaa !11
  %10 = load ptr, ptr %6, align 8, !tbaa !5
  %11 = getelementptr inbounds %struct.instr, ptr %10, i32 0, i32 1
  store i32 0, ptr %11, align 4, !tbaa !16
  %12 = load ptr, ptr %6, align 8, !tbaa !5
  %13 = getelementptr inbounds %struct.instr, ptr %12, i32 0, i32 2
  %14 = getelementptr inbounds %struct.operand, ptr %13, i32 0, i32 0
  store i32 0, ptr %14, align 4, !tbaa !17
  %15 = load ptr, ptr %6, align 8, !tbaa !5
  %16 = getelementptr inbounds %struct.instr, ptr %15, i32 0, i32 2
  %17 = getelementptr inbounds %struct.operand, ptr %16, i32 0, i32 1
  store i32 -1, ptr %17, align 4, !tbaa !18
  %18 = load ptr, ptr %6, align 8, !tbaa !5
  %19 = getelementptr inbounds %struct.instr, ptr %18, i32 0, i32 3
  %20 = getelementptr inbounds %struct.operand, ptr %19, i32 0, i32 0
  store i32 0, ptr %20, align 4, !tbaa !19
  %21 = load ptr, ptr %6, align 8, !tbaa !5
  %22 = getelementptr inbounds %struct.instr, ptr %21, i32 0, i32 3
  %23 = getelementptr inbounds %struct.operand, ptr %22, i32 0, i32 1
  store i32 -1, ptr %23, align 4, !tbaa !20
  %24 = load ptr, ptr %6, align 8, !tbaa !5
  %25 = getelementptr inbounds %struct.instr, ptr %24, i32 0, i32 4
  %26 = getelementptr inbounds %struct.operand, ptr %25, i32 0, i32 0
  store i32 0, ptr %26, align 4, !tbaa !21
  %27 = load ptr, ptr %6, align 8, !tbaa !5
  %28 = getelementptr inbounds %struct.instr, ptr %27, i32 0, i32 4
  %29 = getelementptr inbounds %struct.operand, ptr %28, i32 0, i32 1
  store i32 -1, ptr %29, align 4, !tbaa !22
  %30 = load i32, ptr %5, align 4, !tbaa !9
  switch i32 %30, label %1150 [
    i32 40, label %31
    i32 41, label %31
    i32 42, label %31
    i32 43, label %31
    i32 44, label %31
    i32 45, label %31
    i32 46, label %31
    i32 47, label %31
    i32 37, label %52
    i32 38, label %68
    i32 39, label %68
    i32 36, label %89
    i32 152, label %105
    i32 153, label %105
    i32 154, label %105
    i32 155, label %105
    i32 156, label %105
    i32 157, label %105
    i32 158, label %105
    i32 159, label %105
    i32 149, label %126
    i32 150, label %142
    i32 151, label %142
    i32 148, label %163
    i32 4, label %179
    i32 8, label %192
    i32 9, label %192
    i32 10, label %192
    i32 11, label %192
    i32 12, label %192
    i32 13, label %192
    i32 14, label %192
    i32 15, label %192
    i32 5, label %215
    i32 6, label %228
    i32 7, label %228
    i32 20, label %251
    i32 24, label %264
    i32 25, label %264
    i32 26, label %264
    i32 27, label %264
    i32 28, label %264
    i32 29, label %264
    i32 30, label %264
    i32 31, label %264
    i32 21, label %287
    i32 22, label %300
    i32 23, label %300
    i32 88, label %323
    i32 89, label %323
    i32 90, label %323
    i32 91, label %323
    i32 92, label %323
    i32 93, label %323
    i32 94, label %323
    i32 95, label %323
    i32 85, label %344
    i32 86, label %360
    i32 87, label %360
    i32 84, label %381
    i32 82, label %397
    i32 83, label %413
    i32 72, label %429
    i32 73, label %429
    i32 74, label %429
    i32 75, label %429
    i32 76, label %429
    i32 77, label %429
    i32 78, label %429
    i32 79, label %429
    i32 69, label %450
    i32 70, label %466
    i32 71, label %466
    i32 68, label %487
    i32 66, label %503
    i32 67, label %519
    i32 104, label %535
    i32 105, label %535
    i32 106, label %535
    i32 107, label %535
    i32 108, label %535
    i32 109, label %535
    i32 110, label %535
    i32 111, label %535
    i32 101, label %556
    i32 102, label %572
    i32 103, label %572
    i32 100, label %593
    i32 98, label %609
    i32 99, label %625
    i32 244, label %641
    i32 35, label %654
    i32 3, label %667
    i32 232, label %680
    i32 233, label %680
    i32 234, label %680
    i32 235, label %680
    i32 236, label %680
    i32 237, label %680
    i32 238, label %680
    i32 239, label %680
    i32 229, label %698
    i32 230, label %711
    i32 231, label %711
    i32 116, label %729
    i32 248, label %742
    i32 249, label %742
    i32 250, label %742
    i32 251, label %742
    i32 252, label %742
    i32 253, label %742
    i32 254, label %742
    i32 255, label %742
    i32 168, label %760
    i32 169, label %760
    i32 170, label %760
    i32 171, label %760
    i32 172, label %760
    i32 173, label %760
    i32 174, label %760
    i32 175, label %760
    i32 120, label %778
    i32 121, label %778
    i32 122, label %778
    i32 123, label %778
    i32 124, label %778
    i32 125, label %778
    i32 126, label %778
    i32 127, label %778
    i32 245, label %796
    i32 136, label %809
    i32 137, label %809
    i32 138, label %809
    i32 139, label %809
    i32 140, label %809
    i32 141, label %809
    i32 142, label %809
    i32 143, label %809
    i32 133, label %827
    i32 134, label %840
    i32 135, label %840
    i32 117, label %858
    i32 246, label %871
    i32 247, label %871
    i32 166, label %889
    i32 167, label %889
    i32 118, label %907
    i32 119, label %907
    i32 226, label %925
    i32 227, label %925
    i32 242, label %946
    i32 243, label %946
    i32 17, label %967
    i32 49, label %967
    i32 81, label %967
    i32 113, label %967
    i32 145, label %967
    i32 177, label %967
    i32 209, label %967
    i32 241, label %967
    i32 18, label %983
    i32 34, label %993
    i32 1, label %998
    i32 33, label %998
    i32 65, label %998
    i32 97, label %998
    i32 129, label %998
    i32 161, label %998
    i32 193, label %998
    i32 225, label %998
    i32 2, label %1014
    i32 96, label %1024
    i32 112, label %1034
    i32 181, label %1044
    i32 180, label %1060
    i32 184, label %1076
    i32 185, label %1076
    i32 186, label %1076
    i32 187, label %1076
    i32 188, label %1076
    i32 189, label %1076
    i32 190, label %1076
    i32 191, label %1076
    i32 182, label %1097
    i32 183, label %1097
    i32 216, label %1118
    i32 217, label %1118
    i32 218, label %1118
    i32 219, label %1118
    i32 220, label %1118
    i32 221, label %1118
    i32 222, label %1118
    i32 223, label %1118
    i32 213, label %1136
    i32 0, label %1149
  ]

31:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %32 = load ptr, ptr %6, align 8, !tbaa !5
  %33 = getelementptr inbounds %struct.instr, ptr %32, i32 0, i32 0
  store i32 0, ptr %33, align 4, !tbaa !11
  %34 = load ptr, ptr %6, align 8, !tbaa !5
  %35 = getelementptr inbounds %struct.instr, ptr %34, i32 0, i32 1
  store i32 2, ptr %35, align 4, !tbaa !16
  %36 = load ptr, ptr %6, align 8, !tbaa !5
  %37 = getelementptr inbounds %struct.instr, ptr %36, i32 0, i32 2
  %38 = getelementptr inbounds %struct.operand, ptr %37, i32 0, i32 0
  store i32 2, ptr %38, align 4, !tbaa !17
  %39 = load i32, ptr %5, align 4, !tbaa !9
  %40 = and i32 %39, 7
  %41 = load ptr, ptr %6, align 8, !tbaa !5
  %42 = getelementptr inbounds %struct.instr, ptr %41, i32 0, i32 2
  %43 = getelementptr inbounds %struct.operand, ptr %42, i32 0, i32 1
  store i32 %40, ptr %43, align 4, !tbaa !18
  %44 = load ptr, ptr %6, align 8, !tbaa !5
  %45 = getelementptr inbounds %struct.instr, ptr %44, i32 0, i32 3
  %46 = getelementptr inbounds %struct.operand, ptr %45, i32 0, i32 0
  store i32 1, ptr %46, align 4, !tbaa !19
  %47 = load ptr, ptr %6, align 8, !tbaa !5
  %48 = getelementptr inbounds %struct.instr, ptr %47, i32 0, i32 4
  %49 = getelementptr inbounds %struct.operand, ptr %48, i32 0, i32 0
  store i32 1, ptr %49, align 4, !tbaa !21
  %50 = load ptr, ptr %6, align 8, !tbaa !5
  %51 = getelementptr inbounds %struct.instr, ptr %50, i32 0, i32 5
  store i32 1, ptr %51, align 4, !tbaa !23
  br label %1151

52:                                               ; preds = %3
  %53 = load ptr, ptr %6, align 8, !tbaa !5
  %54 = getelementptr inbounds %struct.instr, ptr %53, i32 0, i32 0
  store i32 0, ptr %54, align 4, !tbaa !11
  %55 = load ptr, ptr %6, align 8, !tbaa !5
  %56 = getelementptr inbounds %struct.instr, ptr %55, i32 0, i32 1
  store i32 2, ptr %56, align 4, !tbaa !16
  %57 = load ptr, ptr %6, align 8, !tbaa !5
  %58 = getelementptr inbounds %struct.instr, ptr %57, i32 0, i32 2
  %59 = getelementptr inbounds %struct.operand, ptr %58, i32 0, i32 0
  store i32 3, ptr %59, align 4, !tbaa !17
  %60 = load ptr, ptr %6, align 8, !tbaa !5
  %61 = getelementptr inbounds %struct.instr, ptr %60, i32 0, i32 3
  %62 = getelementptr inbounds %struct.operand, ptr %61, i32 0, i32 0
  store i32 1, ptr %62, align 4, !tbaa !19
  %63 = load ptr, ptr %6, align 8, !tbaa !5
  %64 = getelementptr inbounds %struct.instr, ptr %63, i32 0, i32 4
  %65 = getelementptr inbounds %struct.operand, ptr %64, i32 0, i32 0
  store i32 1, ptr %65, align 4, !tbaa !21
  %66 = load ptr, ptr %6, align 8, !tbaa !5
  %67 = getelementptr inbounds %struct.instr, ptr %66, i32 0, i32 5
  store i32 2, ptr %67, align 4, !tbaa !23
  br label %1151

68:                                               ; preds = %3, %3
  %69 = load ptr, ptr %6, align 8, !tbaa !5
  %70 = getelementptr inbounds %struct.instr, ptr %69, i32 0, i32 0
  store i32 0, ptr %70, align 4, !tbaa !11
  %71 = load ptr, ptr %6, align 8, !tbaa !5
  %72 = getelementptr inbounds %struct.instr, ptr %71, i32 0, i32 1
  store i32 2, ptr %72, align 4, !tbaa !16
  %73 = load ptr, ptr %6, align 8, !tbaa !5
  %74 = getelementptr inbounds %struct.instr, ptr %73, i32 0, i32 2
  %75 = getelementptr inbounds %struct.operand, ptr %74, i32 0, i32 0
  store i32 4, ptr %75, align 4, !tbaa !17
  %76 = load i32, ptr %5, align 4, !tbaa !9
  %77 = and i32 %76, 1
  %78 = load ptr, ptr %6, align 8, !tbaa !5
  %79 = getelementptr inbounds %struct.instr, ptr %78, i32 0, i32 2
  %80 = getelementptr inbounds %struct.operand, ptr %79, i32 0, i32 1
  store i32 %77, ptr %80, align 4, !tbaa !18
  %81 = load ptr, ptr %6, align 8, !tbaa !5
  %82 = getelementptr inbounds %struct.instr, ptr %81, i32 0, i32 3
  %83 = getelementptr inbounds %struct.operand, ptr %82, i32 0, i32 0
  store i32 1, ptr %83, align 4, !tbaa !19
  %84 = load ptr, ptr %6, align 8, !tbaa !5
  %85 = getelementptr inbounds %struct.instr, ptr %84, i32 0, i32 4
  %86 = getelementptr inbounds %struct.operand, ptr %85, i32 0, i32 0
  store i32 1, ptr %86, align 4, !tbaa !21
  %87 = load ptr, ptr %6, align 8, !tbaa !5
  %88 = getelementptr inbounds %struct.instr, ptr %87, i32 0, i32 5
  store i32 1, ptr %88, align 4, !tbaa !23
  br label %1151

89:                                               ; preds = %3
  %90 = load ptr, ptr %6, align 8, !tbaa !5
  %91 = getelementptr inbounds %struct.instr, ptr %90, i32 0, i32 0
  store i32 0, ptr %91, align 4, !tbaa !11
  %92 = load ptr, ptr %6, align 8, !tbaa !5
  %93 = getelementptr inbounds %struct.instr, ptr %92, i32 0, i32 1
  store i32 2, ptr %93, align 4, !tbaa !16
  %94 = load ptr, ptr %6, align 8, !tbaa !5
  %95 = getelementptr inbounds %struct.instr, ptr %94, i32 0, i32 2
  %96 = getelementptr inbounds %struct.operand, ptr %95, i32 0, i32 0
  store i32 7, ptr %96, align 4, !tbaa !17
  %97 = load ptr, ptr %6, align 8, !tbaa !5
  %98 = getelementptr inbounds %struct.instr, ptr %97, i32 0, i32 3
  %99 = getelementptr inbounds %struct.operand, ptr %98, i32 0, i32 0
  store i32 1, ptr %99, align 4, !tbaa !19
  %100 = load ptr, ptr %6, align 8, !tbaa !5
  %101 = getelementptr inbounds %struct.instr, ptr %100, i32 0, i32 4
  %102 = getelementptr inbounds %struct.operand, ptr %101, i32 0, i32 0
  store i32 1, ptr %102, align 4, !tbaa !21
  %103 = load ptr, ptr %6, align 8, !tbaa !5
  %104 = getelementptr inbounds %struct.instr, ptr %103, i32 0, i32 5
  store i32 2, ptr %104, align 4, !tbaa !23
  br label %1151

105:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %106 = load ptr, ptr %6, align 8, !tbaa !5
  %107 = getelementptr inbounds %struct.instr, ptr %106, i32 0, i32 0
  store i32 1, ptr %107, align 4, !tbaa !11
  %108 = load ptr, ptr %6, align 8, !tbaa !5
  %109 = getelementptr inbounds %struct.instr, ptr %108, i32 0, i32 1
  store i32 2, ptr %109, align 4, !tbaa !16
  %110 = load ptr, ptr %6, align 8, !tbaa !5
  %111 = getelementptr inbounds %struct.instr, ptr %110, i32 0, i32 2
  %112 = getelementptr inbounds %struct.operand, ptr %111, i32 0, i32 0
  store i32 2, ptr %112, align 4, !tbaa !17
  %113 = load i32, ptr %5, align 4, !tbaa !9
  %114 = and i32 %113, 7
  %115 = load ptr, ptr %6, align 8, !tbaa !5
  %116 = getelementptr inbounds %struct.instr, ptr %115, i32 0, i32 2
  %117 = getelementptr inbounds %struct.operand, ptr %116, i32 0, i32 1
  store i32 %114, ptr %117, align 4, !tbaa !18
  %118 = load ptr, ptr %6, align 8, !tbaa !5
  %119 = getelementptr inbounds %struct.instr, ptr %118, i32 0, i32 3
  %120 = getelementptr inbounds %struct.operand, ptr %119, i32 0, i32 0
  store i32 1, ptr %120, align 4, !tbaa !19
  %121 = load ptr, ptr %6, align 8, !tbaa !5
  %122 = getelementptr inbounds %struct.instr, ptr %121, i32 0, i32 4
  %123 = getelementptr inbounds %struct.operand, ptr %122, i32 0, i32 0
  store i32 1, ptr %123, align 4, !tbaa !21
  %124 = load ptr, ptr %6, align 8, !tbaa !5
  %125 = getelementptr inbounds %struct.instr, ptr %124, i32 0, i32 5
  store i32 1, ptr %125, align 4, !tbaa !23
  br label %1151

126:                                              ; preds = %3
  %127 = load ptr, ptr %6, align 8, !tbaa !5
  %128 = getelementptr inbounds %struct.instr, ptr %127, i32 0, i32 0
  store i32 1, ptr %128, align 4, !tbaa !11
  %129 = load ptr, ptr %6, align 8, !tbaa !5
  %130 = getelementptr inbounds %struct.instr, ptr %129, i32 0, i32 1
  store i32 2, ptr %130, align 4, !tbaa !16
  %131 = load ptr, ptr %6, align 8, !tbaa !5
  %132 = getelementptr inbounds %struct.instr, ptr %131, i32 0, i32 2
  %133 = getelementptr inbounds %struct.operand, ptr %132, i32 0, i32 0
  store i32 3, ptr %133, align 4, !tbaa !17
  %134 = load ptr, ptr %6, align 8, !tbaa !5
  %135 = getelementptr inbounds %struct.instr, ptr %134, i32 0, i32 3
  %136 = getelementptr inbounds %struct.operand, ptr %135, i32 0, i32 0
  store i32 1, ptr %136, align 4, !tbaa !19
  %137 = load ptr, ptr %6, align 8, !tbaa !5
  %138 = getelementptr inbounds %struct.instr, ptr %137, i32 0, i32 4
  %139 = getelementptr inbounds %struct.operand, ptr %138, i32 0, i32 0
  store i32 1, ptr %139, align 4, !tbaa !21
  %140 = load ptr, ptr %6, align 8, !tbaa !5
  %141 = getelementptr inbounds %struct.instr, ptr %140, i32 0, i32 5
  store i32 2, ptr %141, align 4, !tbaa !23
  br label %1151

142:                                              ; preds = %3, %3
  %143 = load ptr, ptr %6, align 8, !tbaa !5
  %144 = getelementptr inbounds %struct.instr, ptr %143, i32 0, i32 0
  store i32 1, ptr %144, align 4, !tbaa !11
  %145 = load ptr, ptr %6, align 8, !tbaa !5
  %146 = getelementptr inbounds %struct.instr, ptr %145, i32 0, i32 1
  store i32 2, ptr %146, align 4, !tbaa !16
  %147 = load ptr, ptr %6, align 8, !tbaa !5
  %148 = getelementptr inbounds %struct.instr, ptr %147, i32 0, i32 2
  %149 = getelementptr inbounds %struct.operand, ptr %148, i32 0, i32 0
  store i32 4, ptr %149, align 4, !tbaa !17
  %150 = load i32, ptr %5, align 4, !tbaa !9
  %151 = and i32 %150, 1
  %152 = load ptr, ptr %6, align 8, !tbaa !5
  %153 = getelementptr inbounds %struct.instr, ptr %152, i32 0, i32 2
  %154 = getelementptr inbounds %struct.operand, ptr %153, i32 0, i32 1
  store i32 %151, ptr %154, align 4, !tbaa !18
  %155 = load ptr, ptr %6, align 8, !tbaa !5
  %156 = getelementptr inbounds %struct.instr, ptr %155, i32 0, i32 3
  %157 = getelementptr inbounds %struct.operand, ptr %156, i32 0, i32 0
  store i32 1, ptr %157, align 4, !tbaa !19
  %158 = load ptr, ptr %6, align 8, !tbaa !5
  %159 = getelementptr inbounds %struct.instr, ptr %158, i32 0, i32 4
  %160 = getelementptr inbounds %struct.operand, ptr %159, i32 0, i32 0
  store i32 1, ptr %160, align 4, !tbaa !21
  %161 = load ptr, ptr %6, align 8, !tbaa !5
  %162 = getelementptr inbounds %struct.instr, ptr %161, i32 0, i32 5
  store i32 1, ptr %162, align 4, !tbaa !23
  br label %1151

163:                                              ; preds = %3
  %164 = load ptr, ptr %6, align 8, !tbaa !5
  %165 = getelementptr inbounds %struct.instr, ptr %164, i32 0, i32 0
  store i32 1, ptr %165, align 4, !tbaa !11
  %166 = load ptr, ptr %6, align 8, !tbaa !5
  %167 = getelementptr inbounds %struct.instr, ptr %166, i32 0, i32 1
  store i32 2, ptr %167, align 4, !tbaa !16
  %168 = load ptr, ptr %6, align 8, !tbaa !5
  %169 = getelementptr inbounds %struct.instr, ptr %168, i32 0, i32 2
  %170 = getelementptr inbounds %struct.operand, ptr %169, i32 0, i32 0
  store i32 7, ptr %170, align 4, !tbaa !17
  %171 = load ptr, ptr %6, align 8, !tbaa !5
  %172 = getelementptr inbounds %struct.instr, ptr %171, i32 0, i32 3
  %173 = getelementptr inbounds %struct.operand, ptr %172, i32 0, i32 0
  store i32 1, ptr %173, align 4, !tbaa !19
  %174 = load ptr, ptr %6, align 8, !tbaa !5
  %175 = getelementptr inbounds %struct.instr, ptr %174, i32 0, i32 4
  %176 = getelementptr inbounds %struct.operand, ptr %175, i32 0, i32 0
  store i32 1, ptr %176, align 4, !tbaa !21
  %177 = load ptr, ptr %6, align 8, !tbaa !5
  %178 = getelementptr inbounds %struct.instr, ptr %177, i32 0, i32 5
  store i32 2, ptr %178, align 4, !tbaa !23
  br label %1151

179:                                              ; preds = %3
  %180 = load ptr, ptr %6, align 8, !tbaa !5
  %181 = getelementptr inbounds %struct.instr, ptr %180, i32 0, i32 0
  store i32 2, ptr %181, align 4, !tbaa !11
  %182 = load ptr, ptr %6, align 8, !tbaa !5
  %183 = getelementptr inbounds %struct.instr, ptr %182, i32 0, i32 1
  store i32 1, ptr %183, align 4, !tbaa !16
  %184 = load ptr, ptr %6, align 8, !tbaa !5
  %185 = getelementptr inbounds %struct.instr, ptr %184, i32 0, i32 2
  %186 = getelementptr inbounds %struct.operand, ptr %185, i32 0, i32 0
  store i32 1, ptr %186, align 4, !tbaa !17
  %187 = load ptr, ptr %6, align 8, !tbaa !5
  %188 = getelementptr inbounds %struct.instr, ptr %187, i32 0, i32 4
  %189 = getelementptr inbounds %struct.operand, ptr %188, i32 0, i32 0
  store i32 1, ptr %189, align 4, !tbaa !21
  %190 = load ptr, ptr %6, align 8, !tbaa !5
  %191 = getelementptr inbounds %struct.instr, ptr %190, i32 0, i32 5
  store i32 1, ptr %191, align 4, !tbaa !23
  br label %1151

192:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %193 = load ptr, ptr %6, align 8, !tbaa !5
  %194 = getelementptr inbounds %struct.instr, ptr %193, i32 0, i32 0
  store i32 2, ptr %194, align 4, !tbaa !11
  %195 = load ptr, ptr %6, align 8, !tbaa !5
  %196 = getelementptr inbounds %struct.instr, ptr %195, i32 0, i32 1
  store i32 1, ptr %196, align 4, !tbaa !16
  %197 = load ptr, ptr %6, align 8, !tbaa !5
  %198 = getelementptr inbounds %struct.instr, ptr %197, i32 0, i32 2
  %199 = getelementptr inbounds %struct.operand, ptr %198, i32 0, i32 0
  store i32 2, ptr %199, align 4, !tbaa !17
  %200 = load i32, ptr %5, align 4, !tbaa !9
  %201 = and i32 %200, 7
  %202 = load ptr, ptr %6, align 8, !tbaa !5
  %203 = getelementptr inbounds %struct.instr, ptr %202, i32 0, i32 2
  %204 = getelementptr inbounds %struct.operand, ptr %203, i32 0, i32 1
  store i32 %201, ptr %204, align 4, !tbaa !18
  %205 = load ptr, ptr %6, align 8, !tbaa !5
  %206 = getelementptr inbounds %struct.instr, ptr %205, i32 0, i32 4
  %207 = getelementptr inbounds %struct.operand, ptr %206, i32 0, i32 0
  store i32 2, ptr %207, align 4, !tbaa !21
  %208 = load i32, ptr %5, align 4, !tbaa !9
  %209 = and i32 %208, 7
  %210 = load ptr, ptr %6, align 8, !tbaa !5
  %211 = getelementptr inbounds %struct.instr, ptr %210, i32 0, i32 4
  %212 = getelementptr inbounds %struct.operand, ptr %211, i32 0, i32 1
  store i32 %209, ptr %212, align 4, !tbaa !22
  %213 = load ptr, ptr %6, align 8, !tbaa !5
  %214 = getelementptr inbounds %struct.instr, ptr %213, i32 0, i32 5
  store i32 1, ptr %214, align 4, !tbaa !23
  br label %1151

215:                                              ; preds = %3
  %216 = load ptr, ptr %6, align 8, !tbaa !5
  %217 = getelementptr inbounds %struct.instr, ptr %216, i32 0, i32 0
  store i32 2, ptr %217, align 4, !tbaa !11
  %218 = load ptr, ptr %6, align 8, !tbaa !5
  %219 = getelementptr inbounds %struct.instr, ptr %218, i32 0, i32 1
  store i32 1, ptr %219, align 4, !tbaa !16
  %220 = load ptr, ptr %6, align 8, !tbaa !5
  %221 = getelementptr inbounds %struct.instr, ptr %220, i32 0, i32 2
  %222 = getelementptr inbounds %struct.operand, ptr %221, i32 0, i32 0
  store i32 3, ptr %222, align 4, !tbaa !17
  %223 = load ptr, ptr %6, align 8, !tbaa !5
  %224 = getelementptr inbounds %struct.instr, ptr %223, i32 0, i32 4
  %225 = getelementptr inbounds %struct.operand, ptr %224, i32 0, i32 0
  store i32 3, ptr %225, align 4, !tbaa !21
  %226 = load ptr, ptr %6, align 8, !tbaa !5
  %227 = getelementptr inbounds %struct.instr, ptr %226, i32 0, i32 5
  store i32 2, ptr %227, align 4, !tbaa !23
  br label %1151

228:                                              ; preds = %3, %3
  %229 = load ptr, ptr %6, align 8, !tbaa !5
  %230 = getelementptr inbounds %struct.instr, ptr %229, i32 0, i32 0
  store i32 2, ptr %230, align 4, !tbaa !11
  %231 = load ptr, ptr %6, align 8, !tbaa !5
  %232 = getelementptr inbounds %struct.instr, ptr %231, i32 0, i32 1
  store i32 1, ptr %232, align 4, !tbaa !16
  %233 = load ptr, ptr %6, align 8, !tbaa !5
  %234 = getelementptr inbounds %struct.instr, ptr %233, i32 0, i32 2
  %235 = getelementptr inbounds %struct.operand, ptr %234, i32 0, i32 0
  store i32 4, ptr %235, align 4, !tbaa !17
  %236 = load i32, ptr %5, align 4, !tbaa !9
  %237 = and i32 %236, 1
  %238 = load ptr, ptr %6, align 8, !tbaa !5
  %239 = getelementptr inbounds %struct.instr, ptr %238, i32 0, i32 2
  %240 = getelementptr inbounds %struct.operand, ptr %239, i32 0, i32 1
  store i32 %237, ptr %240, align 4, !tbaa !18
  %241 = load ptr, ptr %6, align 8, !tbaa !5
  %242 = getelementptr inbounds %struct.instr, ptr %241, i32 0, i32 4
  %243 = getelementptr inbounds %struct.operand, ptr %242, i32 0, i32 0
  store i32 4, ptr %243, align 4, !tbaa !21
  %244 = load i32, ptr %5, align 4, !tbaa !9
  %245 = and i32 %244, 1
  %246 = load ptr, ptr %6, align 8, !tbaa !5
  %247 = getelementptr inbounds %struct.instr, ptr %246, i32 0, i32 4
  %248 = getelementptr inbounds %struct.operand, ptr %247, i32 0, i32 1
  store i32 %245, ptr %248, align 4, !tbaa !22
  %249 = load ptr, ptr %6, align 8, !tbaa !5
  %250 = getelementptr inbounds %struct.instr, ptr %249, i32 0, i32 5
  store i32 1, ptr %250, align 4, !tbaa !23
  br label %1151

251:                                              ; preds = %3
  %252 = load ptr, ptr %6, align 8, !tbaa !5
  %253 = getelementptr inbounds %struct.instr, ptr %252, i32 0, i32 0
  store i32 3, ptr %253, align 4, !tbaa !11
  %254 = load ptr, ptr %6, align 8, !tbaa !5
  %255 = getelementptr inbounds %struct.instr, ptr %254, i32 0, i32 1
  store i32 1, ptr %255, align 4, !tbaa !16
  %256 = load ptr, ptr %6, align 8, !tbaa !5
  %257 = getelementptr inbounds %struct.instr, ptr %256, i32 0, i32 2
  %258 = getelementptr inbounds %struct.operand, ptr %257, i32 0, i32 0
  store i32 1, ptr %258, align 4, !tbaa !17
  %259 = load ptr, ptr %6, align 8, !tbaa !5
  %260 = getelementptr inbounds %struct.instr, ptr %259, i32 0, i32 4
  %261 = getelementptr inbounds %struct.operand, ptr %260, i32 0, i32 0
  store i32 1, ptr %261, align 4, !tbaa !21
  %262 = load ptr, ptr %6, align 8, !tbaa !5
  %263 = getelementptr inbounds %struct.instr, ptr %262, i32 0, i32 5
  store i32 1, ptr %263, align 4, !tbaa !23
  br label %1151

264:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %265 = load ptr, ptr %6, align 8, !tbaa !5
  %266 = getelementptr inbounds %struct.instr, ptr %265, i32 0, i32 0
  store i32 3, ptr %266, align 4, !tbaa !11
  %267 = load ptr, ptr %6, align 8, !tbaa !5
  %268 = getelementptr inbounds %struct.instr, ptr %267, i32 0, i32 1
  store i32 1, ptr %268, align 4, !tbaa !16
  %269 = load ptr, ptr %6, align 8, !tbaa !5
  %270 = getelementptr inbounds %struct.instr, ptr %269, i32 0, i32 2
  %271 = getelementptr inbounds %struct.operand, ptr %270, i32 0, i32 0
  store i32 2, ptr %271, align 4, !tbaa !17
  %272 = load i32, ptr %5, align 4, !tbaa !9
  %273 = and i32 %272, 7
  %274 = load ptr, ptr %6, align 8, !tbaa !5
  %275 = getelementptr inbounds %struct.instr, ptr %274, i32 0, i32 2
  %276 = getelementptr inbounds %struct.operand, ptr %275, i32 0, i32 1
  store i32 %273, ptr %276, align 4, !tbaa !18
  %277 = load ptr, ptr %6, align 8, !tbaa !5
  %278 = getelementptr inbounds %struct.instr, ptr %277, i32 0, i32 4
  %279 = getelementptr inbounds %struct.operand, ptr %278, i32 0, i32 0
  store i32 2, ptr %279, align 4, !tbaa !21
  %280 = load i32, ptr %5, align 4, !tbaa !9
  %281 = and i32 %280, 7
  %282 = load ptr, ptr %6, align 8, !tbaa !5
  %283 = getelementptr inbounds %struct.instr, ptr %282, i32 0, i32 4
  %284 = getelementptr inbounds %struct.operand, ptr %283, i32 0, i32 1
  store i32 %281, ptr %284, align 4, !tbaa !22
  %285 = load ptr, ptr %6, align 8, !tbaa !5
  %286 = getelementptr inbounds %struct.instr, ptr %285, i32 0, i32 5
  store i32 1, ptr %286, align 4, !tbaa !23
  br label %1151

287:                                              ; preds = %3
  %288 = load ptr, ptr %6, align 8, !tbaa !5
  %289 = getelementptr inbounds %struct.instr, ptr %288, i32 0, i32 0
  store i32 3, ptr %289, align 4, !tbaa !11
  %290 = load ptr, ptr %6, align 8, !tbaa !5
  %291 = getelementptr inbounds %struct.instr, ptr %290, i32 0, i32 1
  store i32 1, ptr %291, align 4, !tbaa !16
  %292 = load ptr, ptr %6, align 8, !tbaa !5
  %293 = getelementptr inbounds %struct.instr, ptr %292, i32 0, i32 2
  %294 = getelementptr inbounds %struct.operand, ptr %293, i32 0, i32 0
  store i32 3, ptr %294, align 4, !tbaa !17
  %295 = load ptr, ptr %6, align 8, !tbaa !5
  %296 = getelementptr inbounds %struct.instr, ptr %295, i32 0, i32 4
  %297 = getelementptr inbounds %struct.operand, ptr %296, i32 0, i32 0
  store i32 3, ptr %297, align 4, !tbaa !21
  %298 = load ptr, ptr %6, align 8, !tbaa !5
  %299 = getelementptr inbounds %struct.instr, ptr %298, i32 0, i32 5
  store i32 2, ptr %299, align 4, !tbaa !23
  br label %1151

300:                                              ; preds = %3, %3
  %301 = load ptr, ptr %6, align 8, !tbaa !5
  %302 = getelementptr inbounds %struct.instr, ptr %301, i32 0, i32 0
  store i32 3, ptr %302, align 4, !tbaa !11
  %303 = load ptr, ptr %6, align 8, !tbaa !5
  %304 = getelementptr inbounds %struct.instr, ptr %303, i32 0, i32 1
  store i32 1, ptr %304, align 4, !tbaa !16
  %305 = load ptr, ptr %6, align 8, !tbaa !5
  %306 = getelementptr inbounds %struct.instr, ptr %305, i32 0, i32 2
  %307 = getelementptr inbounds %struct.operand, ptr %306, i32 0, i32 0
  store i32 4, ptr %307, align 4, !tbaa !17
  %308 = load i32, ptr %5, align 4, !tbaa !9
  %309 = and i32 %308, 1
  %310 = load ptr, ptr %6, align 8, !tbaa !5
  %311 = getelementptr inbounds %struct.instr, ptr %310, i32 0, i32 2
  %312 = getelementptr inbounds %struct.operand, ptr %311, i32 0, i32 1
  store i32 %309, ptr %312, align 4, !tbaa !18
  %313 = load ptr, ptr %6, align 8, !tbaa !5
  %314 = getelementptr inbounds %struct.instr, ptr %313, i32 0, i32 4
  %315 = getelementptr inbounds %struct.operand, ptr %314, i32 0, i32 0
  store i32 4, ptr %315, align 4, !tbaa !21
  %316 = load i32, ptr %5, align 4, !tbaa !9
  %317 = and i32 %316, 1
  %318 = load ptr, ptr %6, align 8, !tbaa !5
  %319 = getelementptr inbounds %struct.instr, ptr %318, i32 0, i32 4
  %320 = getelementptr inbounds %struct.operand, ptr %319, i32 0, i32 1
  store i32 %317, ptr %320, align 4, !tbaa !22
  %321 = load ptr, ptr %6, align 8, !tbaa !5
  %322 = getelementptr inbounds %struct.instr, ptr %321, i32 0, i32 5
  store i32 1, ptr %322, align 4, !tbaa !23
  br label %1151

323:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %324 = load ptr, ptr %6, align 8, !tbaa !5
  %325 = getelementptr inbounds %struct.instr, ptr %324, i32 0, i32 0
  store i32 6, ptr %325, align 4, !tbaa !11
  %326 = load ptr, ptr %6, align 8, !tbaa !5
  %327 = getelementptr inbounds %struct.instr, ptr %326, i32 0, i32 1
  store i32 2, ptr %327, align 4, !tbaa !16
  %328 = load ptr, ptr %6, align 8, !tbaa !5
  %329 = getelementptr inbounds %struct.instr, ptr %328, i32 0, i32 2
  %330 = getelementptr inbounds %struct.operand, ptr %329, i32 0, i32 0
  store i32 2, ptr %330, align 4, !tbaa !17
  %331 = load i32, ptr %5, align 4, !tbaa !9
  %332 = and i32 %331, 7
  %333 = load ptr, ptr %6, align 8, !tbaa !5
  %334 = getelementptr inbounds %struct.instr, ptr %333, i32 0, i32 2
  %335 = getelementptr inbounds %struct.operand, ptr %334, i32 0, i32 1
  store i32 %332, ptr %335, align 4, !tbaa !18
  %336 = load ptr, ptr %6, align 8, !tbaa !5
  %337 = getelementptr inbounds %struct.instr, ptr %336, i32 0, i32 3
  %338 = getelementptr inbounds %struct.operand, ptr %337, i32 0, i32 0
  store i32 1, ptr %338, align 4, !tbaa !19
  %339 = load ptr, ptr %6, align 8, !tbaa !5
  %340 = getelementptr inbounds %struct.instr, ptr %339, i32 0, i32 4
  %341 = getelementptr inbounds %struct.operand, ptr %340, i32 0, i32 0
  store i32 1, ptr %341, align 4, !tbaa !21
  %342 = load ptr, ptr %6, align 8, !tbaa !5
  %343 = getelementptr inbounds %struct.instr, ptr %342, i32 0, i32 5
  store i32 1, ptr %343, align 4, !tbaa !23
  br label %1151

344:                                              ; preds = %3
  %345 = load ptr, ptr %6, align 8, !tbaa !5
  %346 = getelementptr inbounds %struct.instr, ptr %345, i32 0, i32 0
  store i32 6, ptr %346, align 4, !tbaa !11
  %347 = load ptr, ptr %6, align 8, !tbaa !5
  %348 = getelementptr inbounds %struct.instr, ptr %347, i32 0, i32 1
  store i32 2, ptr %348, align 4, !tbaa !16
  %349 = load ptr, ptr %6, align 8, !tbaa !5
  %350 = getelementptr inbounds %struct.instr, ptr %349, i32 0, i32 2
  %351 = getelementptr inbounds %struct.operand, ptr %350, i32 0, i32 0
  store i32 3, ptr %351, align 4, !tbaa !17
  %352 = load ptr, ptr %6, align 8, !tbaa !5
  %353 = getelementptr inbounds %struct.instr, ptr %352, i32 0, i32 3
  %354 = getelementptr inbounds %struct.operand, ptr %353, i32 0, i32 0
  store i32 1, ptr %354, align 4, !tbaa !19
  %355 = load ptr, ptr %6, align 8, !tbaa !5
  %356 = getelementptr inbounds %struct.instr, ptr %355, i32 0, i32 4
  %357 = getelementptr inbounds %struct.operand, ptr %356, i32 0, i32 0
  store i32 1, ptr %357, align 4, !tbaa !21
  %358 = load ptr, ptr %6, align 8, !tbaa !5
  %359 = getelementptr inbounds %struct.instr, ptr %358, i32 0, i32 5
  store i32 2, ptr %359, align 4, !tbaa !23
  br label %1151

360:                                              ; preds = %3, %3
  %361 = load ptr, ptr %6, align 8, !tbaa !5
  %362 = getelementptr inbounds %struct.instr, ptr %361, i32 0, i32 0
  store i32 6, ptr %362, align 4, !tbaa !11
  %363 = load ptr, ptr %6, align 8, !tbaa !5
  %364 = getelementptr inbounds %struct.instr, ptr %363, i32 0, i32 1
  store i32 2, ptr %364, align 4, !tbaa !16
  %365 = load ptr, ptr %6, align 8, !tbaa !5
  %366 = getelementptr inbounds %struct.instr, ptr %365, i32 0, i32 2
  %367 = getelementptr inbounds %struct.operand, ptr %366, i32 0, i32 0
  store i32 4, ptr %367, align 4, !tbaa !17
  %368 = load i32, ptr %5, align 4, !tbaa !9
  %369 = and i32 %368, 1
  %370 = load ptr, ptr %6, align 8, !tbaa !5
  %371 = getelementptr inbounds %struct.instr, ptr %370, i32 0, i32 2
  %372 = getelementptr inbounds %struct.operand, ptr %371, i32 0, i32 1
  store i32 %369, ptr %372, align 4, !tbaa !18
  %373 = load ptr, ptr %6, align 8, !tbaa !5
  %374 = getelementptr inbounds %struct.instr, ptr %373, i32 0, i32 3
  %375 = getelementptr inbounds %struct.operand, ptr %374, i32 0, i32 0
  store i32 1, ptr %375, align 4, !tbaa !19
  %376 = load ptr, ptr %6, align 8, !tbaa !5
  %377 = getelementptr inbounds %struct.instr, ptr %376, i32 0, i32 4
  %378 = getelementptr inbounds %struct.operand, ptr %377, i32 0, i32 0
  store i32 1, ptr %378, align 4, !tbaa !21
  %379 = load ptr, ptr %6, align 8, !tbaa !5
  %380 = getelementptr inbounds %struct.instr, ptr %379, i32 0, i32 5
  store i32 1, ptr %380, align 4, !tbaa !23
  br label %1151

381:                                              ; preds = %3
  %382 = load ptr, ptr %6, align 8, !tbaa !5
  %383 = getelementptr inbounds %struct.instr, ptr %382, i32 0, i32 0
  store i32 6, ptr %383, align 4, !tbaa !11
  %384 = load ptr, ptr %6, align 8, !tbaa !5
  %385 = getelementptr inbounds %struct.instr, ptr %384, i32 0, i32 1
  store i32 2, ptr %385, align 4, !tbaa !16
  %386 = load ptr, ptr %6, align 8, !tbaa !5
  %387 = getelementptr inbounds %struct.instr, ptr %386, i32 0, i32 2
  %388 = getelementptr inbounds %struct.operand, ptr %387, i32 0, i32 0
  store i32 7, ptr %388, align 4, !tbaa !17
  %389 = load ptr, ptr %6, align 8, !tbaa !5
  %390 = getelementptr inbounds %struct.instr, ptr %389, i32 0, i32 3
  %391 = getelementptr inbounds %struct.operand, ptr %390, i32 0, i32 0
  store i32 1, ptr %391, align 4, !tbaa !19
  %392 = load ptr, ptr %6, align 8, !tbaa !5
  %393 = getelementptr inbounds %struct.instr, ptr %392, i32 0, i32 4
  %394 = getelementptr inbounds %struct.operand, ptr %393, i32 0, i32 0
  store i32 1, ptr %394, align 4, !tbaa !21
  %395 = load ptr, ptr %6, align 8, !tbaa !5
  %396 = getelementptr inbounds %struct.instr, ptr %395, i32 0, i32 5
  store i32 2, ptr %396, align 4, !tbaa !23
  br label %1151

397:                                              ; preds = %3
  %398 = load ptr, ptr %6, align 8, !tbaa !5
  %399 = getelementptr inbounds %struct.instr, ptr %398, i32 0, i32 0
  store i32 6, ptr %399, align 4, !tbaa !11
  %400 = load ptr, ptr %6, align 8, !tbaa !5
  %401 = getelementptr inbounds %struct.instr, ptr %400, i32 0, i32 1
  store i32 2, ptr %401, align 4, !tbaa !16
  %402 = load ptr, ptr %6, align 8, !tbaa !5
  %403 = getelementptr inbounds %struct.instr, ptr %402, i32 0, i32 2
  %404 = getelementptr inbounds %struct.operand, ptr %403, i32 0, i32 0
  store i32 3, ptr %404, align 4, !tbaa !17
  %405 = load ptr, ptr %6, align 8, !tbaa !5
  %406 = getelementptr inbounds %struct.instr, ptr %405, i32 0, i32 3
  %407 = getelementptr inbounds %struct.operand, ptr %406, i32 0, i32 0
  store i32 1, ptr %407, align 4, !tbaa !19
  %408 = load ptr, ptr %6, align 8, !tbaa !5
  %409 = getelementptr inbounds %struct.instr, ptr %408, i32 0, i32 4
  %410 = getelementptr inbounds %struct.operand, ptr %409, i32 0, i32 0
  store i32 3, ptr %410, align 4, !tbaa !21
  %411 = load ptr, ptr %6, align 8, !tbaa !5
  %412 = getelementptr inbounds %struct.instr, ptr %411, i32 0, i32 5
  store i32 2, ptr %412, align 4, !tbaa !23
  br label %1151

413:                                              ; preds = %3
  %414 = load ptr, ptr %6, align 8, !tbaa !5
  %415 = getelementptr inbounds %struct.instr, ptr %414, i32 0, i32 0
  store i32 6, ptr %415, align 4, !tbaa !11
  %416 = load ptr, ptr %6, align 8, !tbaa !5
  %417 = getelementptr inbounds %struct.instr, ptr %416, i32 0, i32 1
  store i32 2, ptr %417, align 4, !tbaa !16
  %418 = load ptr, ptr %6, align 8, !tbaa !5
  %419 = getelementptr inbounds %struct.instr, ptr %418, i32 0, i32 2
  %420 = getelementptr inbounds %struct.operand, ptr %419, i32 0, i32 0
  store i32 3, ptr %420, align 4, !tbaa !17
  %421 = load ptr, ptr %6, align 8, !tbaa !5
  %422 = getelementptr inbounds %struct.instr, ptr %421, i32 0, i32 3
  %423 = getelementptr inbounds %struct.operand, ptr %422, i32 0, i32 0
  store i32 7, ptr %423, align 4, !tbaa !19
  %424 = load ptr, ptr %6, align 8, !tbaa !5
  %425 = getelementptr inbounds %struct.instr, ptr %424, i32 0, i32 4
  %426 = getelementptr inbounds %struct.operand, ptr %425, i32 0, i32 0
  store i32 3, ptr %426, align 4, !tbaa !21
  %427 = load ptr, ptr %6, align 8, !tbaa !5
  %428 = getelementptr inbounds %struct.instr, ptr %427, i32 0, i32 5
  store i32 3, ptr %428, align 4, !tbaa !23
  br label %1151

429:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %430 = load ptr, ptr %6, align 8, !tbaa !5
  %431 = getelementptr inbounds %struct.instr, ptr %430, i32 0, i32 0
  store i32 7, ptr %431, align 4, !tbaa !11
  %432 = load ptr, ptr %6, align 8, !tbaa !5
  %433 = getelementptr inbounds %struct.instr, ptr %432, i32 0, i32 1
  store i32 2, ptr %433, align 4, !tbaa !16
  %434 = load ptr, ptr %6, align 8, !tbaa !5
  %435 = getelementptr inbounds %struct.instr, ptr %434, i32 0, i32 2
  %436 = getelementptr inbounds %struct.operand, ptr %435, i32 0, i32 0
  store i32 2, ptr %436, align 4, !tbaa !17
  %437 = load i32, ptr %5, align 4, !tbaa !9
  %438 = and i32 %437, 7
  %439 = load ptr, ptr %6, align 8, !tbaa !5
  %440 = getelementptr inbounds %struct.instr, ptr %439, i32 0, i32 2
  %441 = getelementptr inbounds %struct.operand, ptr %440, i32 0, i32 1
  store i32 %438, ptr %441, align 4, !tbaa !18
  %442 = load ptr, ptr %6, align 8, !tbaa !5
  %443 = getelementptr inbounds %struct.instr, ptr %442, i32 0, i32 3
  %444 = getelementptr inbounds %struct.operand, ptr %443, i32 0, i32 0
  store i32 1, ptr %444, align 4, !tbaa !19
  %445 = load ptr, ptr %6, align 8, !tbaa !5
  %446 = getelementptr inbounds %struct.instr, ptr %445, i32 0, i32 4
  %447 = getelementptr inbounds %struct.operand, ptr %446, i32 0, i32 0
  store i32 1, ptr %447, align 4, !tbaa !21
  %448 = load ptr, ptr %6, align 8, !tbaa !5
  %449 = getelementptr inbounds %struct.instr, ptr %448, i32 0, i32 5
  store i32 1, ptr %449, align 4, !tbaa !23
  br label %1151

450:                                              ; preds = %3
  %451 = load ptr, ptr %6, align 8, !tbaa !5
  %452 = getelementptr inbounds %struct.instr, ptr %451, i32 0, i32 0
  store i32 7, ptr %452, align 4, !tbaa !11
  %453 = load ptr, ptr %6, align 8, !tbaa !5
  %454 = getelementptr inbounds %struct.instr, ptr %453, i32 0, i32 1
  store i32 2, ptr %454, align 4, !tbaa !16
  %455 = load ptr, ptr %6, align 8, !tbaa !5
  %456 = getelementptr inbounds %struct.instr, ptr %455, i32 0, i32 2
  %457 = getelementptr inbounds %struct.operand, ptr %456, i32 0, i32 0
  store i32 3, ptr %457, align 4, !tbaa !17
  %458 = load ptr, ptr %6, align 8, !tbaa !5
  %459 = getelementptr inbounds %struct.instr, ptr %458, i32 0, i32 3
  %460 = getelementptr inbounds %struct.operand, ptr %459, i32 0, i32 0
  store i32 1, ptr %460, align 4, !tbaa !19
  %461 = load ptr, ptr %6, align 8, !tbaa !5
  %462 = getelementptr inbounds %struct.instr, ptr %461, i32 0, i32 4
  %463 = getelementptr inbounds %struct.operand, ptr %462, i32 0, i32 0
  store i32 1, ptr %463, align 4, !tbaa !21
  %464 = load ptr, ptr %6, align 8, !tbaa !5
  %465 = getelementptr inbounds %struct.instr, ptr %464, i32 0, i32 5
  store i32 2, ptr %465, align 4, !tbaa !23
  br label %1151

466:                                              ; preds = %3, %3
  %467 = load ptr, ptr %6, align 8, !tbaa !5
  %468 = getelementptr inbounds %struct.instr, ptr %467, i32 0, i32 0
  store i32 7, ptr %468, align 4, !tbaa !11
  %469 = load ptr, ptr %6, align 8, !tbaa !5
  %470 = getelementptr inbounds %struct.instr, ptr %469, i32 0, i32 1
  store i32 2, ptr %470, align 4, !tbaa !16
  %471 = load ptr, ptr %6, align 8, !tbaa !5
  %472 = getelementptr inbounds %struct.instr, ptr %471, i32 0, i32 2
  %473 = getelementptr inbounds %struct.operand, ptr %472, i32 0, i32 0
  store i32 4, ptr %473, align 4, !tbaa !17
  %474 = load i32, ptr %5, align 4, !tbaa !9
  %475 = and i32 %474, 1
  %476 = load ptr, ptr %6, align 8, !tbaa !5
  %477 = getelementptr inbounds %struct.instr, ptr %476, i32 0, i32 2
  %478 = getelementptr inbounds %struct.operand, ptr %477, i32 0, i32 1
  store i32 %475, ptr %478, align 4, !tbaa !18
  %479 = load ptr, ptr %6, align 8, !tbaa !5
  %480 = getelementptr inbounds %struct.instr, ptr %479, i32 0, i32 3
  %481 = getelementptr inbounds %struct.operand, ptr %480, i32 0, i32 0
  store i32 1, ptr %481, align 4, !tbaa !19
  %482 = load ptr, ptr %6, align 8, !tbaa !5
  %483 = getelementptr inbounds %struct.instr, ptr %482, i32 0, i32 4
  %484 = getelementptr inbounds %struct.operand, ptr %483, i32 0, i32 0
  store i32 1, ptr %484, align 4, !tbaa !21
  %485 = load ptr, ptr %6, align 8, !tbaa !5
  %486 = getelementptr inbounds %struct.instr, ptr %485, i32 0, i32 5
  store i32 1, ptr %486, align 4, !tbaa !23
  br label %1151

487:                                              ; preds = %3
  %488 = load ptr, ptr %6, align 8, !tbaa !5
  %489 = getelementptr inbounds %struct.instr, ptr %488, i32 0, i32 0
  store i32 7, ptr %489, align 4, !tbaa !11
  %490 = load ptr, ptr %6, align 8, !tbaa !5
  %491 = getelementptr inbounds %struct.instr, ptr %490, i32 0, i32 1
  store i32 2, ptr %491, align 4, !tbaa !16
  %492 = load ptr, ptr %6, align 8, !tbaa !5
  %493 = getelementptr inbounds %struct.instr, ptr %492, i32 0, i32 2
  %494 = getelementptr inbounds %struct.operand, ptr %493, i32 0, i32 0
  store i32 7, ptr %494, align 4, !tbaa !17
  %495 = load ptr, ptr %6, align 8, !tbaa !5
  %496 = getelementptr inbounds %struct.instr, ptr %495, i32 0, i32 3
  %497 = getelementptr inbounds %struct.operand, ptr %496, i32 0, i32 0
  store i32 1, ptr %497, align 4, !tbaa !19
  %498 = load ptr, ptr %6, align 8, !tbaa !5
  %499 = getelementptr inbounds %struct.instr, ptr %498, i32 0, i32 4
  %500 = getelementptr inbounds %struct.operand, ptr %499, i32 0, i32 0
  store i32 1, ptr %500, align 4, !tbaa !21
  %501 = load ptr, ptr %6, align 8, !tbaa !5
  %502 = getelementptr inbounds %struct.instr, ptr %501, i32 0, i32 5
  store i32 2, ptr %502, align 4, !tbaa !23
  br label %1151

503:                                              ; preds = %3
  %504 = load ptr, ptr %6, align 8, !tbaa !5
  %505 = getelementptr inbounds %struct.instr, ptr %504, i32 0, i32 0
  store i32 7, ptr %505, align 4, !tbaa !11
  %506 = load ptr, ptr %6, align 8, !tbaa !5
  %507 = getelementptr inbounds %struct.instr, ptr %506, i32 0, i32 1
  store i32 2, ptr %507, align 4, !tbaa !16
  %508 = load ptr, ptr %6, align 8, !tbaa !5
  %509 = getelementptr inbounds %struct.instr, ptr %508, i32 0, i32 2
  %510 = getelementptr inbounds %struct.operand, ptr %509, i32 0, i32 0
  store i32 3, ptr %510, align 4, !tbaa !17
  %511 = load ptr, ptr %6, align 8, !tbaa !5
  %512 = getelementptr inbounds %struct.instr, ptr %511, i32 0, i32 3
  %513 = getelementptr inbounds %struct.operand, ptr %512, i32 0, i32 0
  store i32 1, ptr %513, align 4, !tbaa !19
  %514 = load ptr, ptr %6, align 8, !tbaa !5
  %515 = getelementptr inbounds %struct.instr, ptr %514, i32 0, i32 4
  %516 = getelementptr inbounds %struct.operand, ptr %515, i32 0, i32 0
  store i32 3, ptr %516, align 4, !tbaa !21
  %517 = load ptr, ptr %6, align 8, !tbaa !5
  %518 = getelementptr inbounds %struct.instr, ptr %517, i32 0, i32 5
  store i32 2, ptr %518, align 4, !tbaa !23
  br label %1151

519:                                              ; preds = %3
  %520 = load ptr, ptr %6, align 8, !tbaa !5
  %521 = getelementptr inbounds %struct.instr, ptr %520, i32 0, i32 0
  store i32 7, ptr %521, align 4, !tbaa !11
  %522 = load ptr, ptr %6, align 8, !tbaa !5
  %523 = getelementptr inbounds %struct.instr, ptr %522, i32 0, i32 1
  store i32 2, ptr %523, align 4, !tbaa !16
  %524 = load ptr, ptr %6, align 8, !tbaa !5
  %525 = getelementptr inbounds %struct.instr, ptr %524, i32 0, i32 2
  %526 = getelementptr inbounds %struct.operand, ptr %525, i32 0, i32 0
  store i32 3, ptr %526, align 4, !tbaa !17
  %527 = load ptr, ptr %6, align 8, !tbaa !5
  %528 = getelementptr inbounds %struct.instr, ptr %527, i32 0, i32 3
  %529 = getelementptr inbounds %struct.operand, ptr %528, i32 0, i32 0
  store i32 7, ptr %529, align 4, !tbaa !19
  %530 = load ptr, ptr %6, align 8, !tbaa !5
  %531 = getelementptr inbounds %struct.instr, ptr %530, i32 0, i32 4
  %532 = getelementptr inbounds %struct.operand, ptr %531, i32 0, i32 0
  store i32 3, ptr %532, align 4, !tbaa !21
  %533 = load ptr, ptr %6, align 8, !tbaa !5
  %534 = getelementptr inbounds %struct.instr, ptr %533, i32 0, i32 5
  store i32 3, ptr %534, align 4, !tbaa !23
  br label %1151

535:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %536 = load ptr, ptr %6, align 8, !tbaa !5
  %537 = getelementptr inbounds %struct.instr, ptr %536, i32 0, i32 0
  store i32 8, ptr %537, align 4, !tbaa !11
  %538 = load ptr, ptr %6, align 8, !tbaa !5
  %539 = getelementptr inbounds %struct.instr, ptr %538, i32 0, i32 1
  store i32 2, ptr %539, align 4, !tbaa !16
  %540 = load ptr, ptr %6, align 8, !tbaa !5
  %541 = getelementptr inbounds %struct.instr, ptr %540, i32 0, i32 2
  %542 = getelementptr inbounds %struct.operand, ptr %541, i32 0, i32 0
  store i32 2, ptr %542, align 4, !tbaa !17
  %543 = load i32, ptr %5, align 4, !tbaa !9
  %544 = and i32 %543, 7
  %545 = load ptr, ptr %6, align 8, !tbaa !5
  %546 = getelementptr inbounds %struct.instr, ptr %545, i32 0, i32 2
  %547 = getelementptr inbounds %struct.operand, ptr %546, i32 0, i32 1
  store i32 %544, ptr %547, align 4, !tbaa !18
  %548 = load ptr, ptr %6, align 8, !tbaa !5
  %549 = getelementptr inbounds %struct.instr, ptr %548, i32 0, i32 3
  %550 = getelementptr inbounds %struct.operand, ptr %549, i32 0, i32 0
  store i32 1, ptr %550, align 4, !tbaa !19
  %551 = load ptr, ptr %6, align 8, !tbaa !5
  %552 = getelementptr inbounds %struct.instr, ptr %551, i32 0, i32 4
  %553 = getelementptr inbounds %struct.operand, ptr %552, i32 0, i32 0
  store i32 1, ptr %553, align 4, !tbaa !21
  %554 = load ptr, ptr %6, align 8, !tbaa !5
  %555 = getelementptr inbounds %struct.instr, ptr %554, i32 0, i32 5
  store i32 1, ptr %555, align 4, !tbaa !23
  br label %1151

556:                                              ; preds = %3
  %557 = load ptr, ptr %6, align 8, !tbaa !5
  %558 = getelementptr inbounds %struct.instr, ptr %557, i32 0, i32 0
  store i32 8, ptr %558, align 4, !tbaa !11
  %559 = load ptr, ptr %6, align 8, !tbaa !5
  %560 = getelementptr inbounds %struct.instr, ptr %559, i32 0, i32 1
  store i32 2, ptr %560, align 4, !tbaa !16
  %561 = load ptr, ptr %6, align 8, !tbaa !5
  %562 = getelementptr inbounds %struct.instr, ptr %561, i32 0, i32 2
  %563 = getelementptr inbounds %struct.operand, ptr %562, i32 0, i32 0
  store i32 3, ptr %563, align 4, !tbaa !17
  %564 = load ptr, ptr %6, align 8, !tbaa !5
  %565 = getelementptr inbounds %struct.instr, ptr %564, i32 0, i32 3
  %566 = getelementptr inbounds %struct.operand, ptr %565, i32 0, i32 0
  store i32 1, ptr %566, align 4, !tbaa !19
  %567 = load ptr, ptr %6, align 8, !tbaa !5
  %568 = getelementptr inbounds %struct.instr, ptr %567, i32 0, i32 4
  %569 = getelementptr inbounds %struct.operand, ptr %568, i32 0, i32 0
  store i32 1, ptr %569, align 4, !tbaa !21
  %570 = load ptr, ptr %6, align 8, !tbaa !5
  %571 = getelementptr inbounds %struct.instr, ptr %570, i32 0, i32 5
  store i32 2, ptr %571, align 4, !tbaa !23
  br label %1151

572:                                              ; preds = %3, %3
  %573 = load ptr, ptr %6, align 8, !tbaa !5
  %574 = getelementptr inbounds %struct.instr, ptr %573, i32 0, i32 0
  store i32 8, ptr %574, align 4, !tbaa !11
  %575 = load ptr, ptr %6, align 8, !tbaa !5
  %576 = getelementptr inbounds %struct.instr, ptr %575, i32 0, i32 1
  store i32 2, ptr %576, align 4, !tbaa !16
  %577 = load ptr, ptr %6, align 8, !tbaa !5
  %578 = getelementptr inbounds %struct.instr, ptr %577, i32 0, i32 2
  %579 = getelementptr inbounds %struct.operand, ptr %578, i32 0, i32 0
  store i32 4, ptr %579, align 4, !tbaa !17
  %580 = load i32, ptr %5, align 4, !tbaa !9
  %581 = and i32 %580, 1
  %582 = load ptr, ptr %6, align 8, !tbaa !5
  %583 = getelementptr inbounds %struct.instr, ptr %582, i32 0, i32 2
  %584 = getelementptr inbounds %struct.operand, ptr %583, i32 0, i32 1
  store i32 %581, ptr %584, align 4, !tbaa !18
  %585 = load ptr, ptr %6, align 8, !tbaa !5
  %586 = getelementptr inbounds %struct.instr, ptr %585, i32 0, i32 3
  %587 = getelementptr inbounds %struct.operand, ptr %586, i32 0, i32 0
  store i32 1, ptr %587, align 4, !tbaa !19
  %588 = load ptr, ptr %6, align 8, !tbaa !5
  %589 = getelementptr inbounds %struct.instr, ptr %588, i32 0, i32 4
  %590 = getelementptr inbounds %struct.operand, ptr %589, i32 0, i32 0
  store i32 1, ptr %590, align 4, !tbaa !21
  %591 = load ptr, ptr %6, align 8, !tbaa !5
  %592 = getelementptr inbounds %struct.instr, ptr %591, i32 0, i32 5
  store i32 1, ptr %592, align 4, !tbaa !23
  br label %1151

593:                                              ; preds = %3
  %594 = load ptr, ptr %6, align 8, !tbaa !5
  %595 = getelementptr inbounds %struct.instr, ptr %594, i32 0, i32 0
  store i32 8, ptr %595, align 4, !tbaa !11
  %596 = load ptr, ptr %6, align 8, !tbaa !5
  %597 = getelementptr inbounds %struct.instr, ptr %596, i32 0, i32 1
  store i32 2, ptr %597, align 4, !tbaa !16
  %598 = load ptr, ptr %6, align 8, !tbaa !5
  %599 = getelementptr inbounds %struct.instr, ptr %598, i32 0, i32 2
  %600 = getelementptr inbounds %struct.operand, ptr %599, i32 0, i32 0
  store i32 7, ptr %600, align 4, !tbaa !17
  %601 = load ptr, ptr %6, align 8, !tbaa !5
  %602 = getelementptr inbounds %struct.instr, ptr %601, i32 0, i32 3
  %603 = getelementptr inbounds %struct.operand, ptr %602, i32 0, i32 0
  store i32 1, ptr %603, align 4, !tbaa !19
  %604 = load ptr, ptr %6, align 8, !tbaa !5
  %605 = getelementptr inbounds %struct.instr, ptr %604, i32 0, i32 4
  %606 = getelementptr inbounds %struct.operand, ptr %605, i32 0, i32 0
  store i32 1, ptr %606, align 4, !tbaa !21
  %607 = load ptr, ptr %6, align 8, !tbaa !5
  %608 = getelementptr inbounds %struct.instr, ptr %607, i32 0, i32 5
  store i32 2, ptr %608, align 4, !tbaa !23
  br label %1151

609:                                              ; preds = %3
  %610 = load ptr, ptr %6, align 8, !tbaa !5
  %611 = getelementptr inbounds %struct.instr, ptr %610, i32 0, i32 0
  store i32 8, ptr %611, align 4, !tbaa !11
  %612 = load ptr, ptr %6, align 8, !tbaa !5
  %613 = getelementptr inbounds %struct.instr, ptr %612, i32 0, i32 1
  store i32 2, ptr %613, align 4, !tbaa !16
  %614 = load ptr, ptr %6, align 8, !tbaa !5
  %615 = getelementptr inbounds %struct.instr, ptr %614, i32 0, i32 2
  %616 = getelementptr inbounds %struct.operand, ptr %615, i32 0, i32 0
  store i32 3, ptr %616, align 4, !tbaa !17
  %617 = load ptr, ptr %6, align 8, !tbaa !5
  %618 = getelementptr inbounds %struct.instr, ptr %617, i32 0, i32 3
  %619 = getelementptr inbounds %struct.operand, ptr %618, i32 0, i32 0
  store i32 1, ptr %619, align 4, !tbaa !19
  %620 = load ptr, ptr %6, align 8, !tbaa !5
  %621 = getelementptr inbounds %struct.instr, ptr %620, i32 0, i32 4
  %622 = getelementptr inbounds %struct.operand, ptr %621, i32 0, i32 0
  store i32 3, ptr %622, align 4, !tbaa !21
  %623 = load ptr, ptr %6, align 8, !tbaa !5
  %624 = getelementptr inbounds %struct.instr, ptr %623, i32 0, i32 5
  store i32 2, ptr %624, align 4, !tbaa !23
  br label %1151

625:                                              ; preds = %3
  %626 = load ptr, ptr %6, align 8, !tbaa !5
  %627 = getelementptr inbounds %struct.instr, ptr %626, i32 0, i32 0
  store i32 8, ptr %627, align 4, !tbaa !11
  %628 = load ptr, ptr %6, align 8, !tbaa !5
  %629 = getelementptr inbounds %struct.instr, ptr %628, i32 0, i32 1
  store i32 2, ptr %629, align 4, !tbaa !16
  %630 = load ptr, ptr %6, align 8, !tbaa !5
  %631 = getelementptr inbounds %struct.instr, ptr %630, i32 0, i32 2
  %632 = getelementptr inbounds %struct.operand, ptr %631, i32 0, i32 0
  store i32 3, ptr %632, align 4, !tbaa !17
  %633 = load ptr, ptr %6, align 8, !tbaa !5
  %634 = getelementptr inbounds %struct.instr, ptr %633, i32 0, i32 3
  %635 = getelementptr inbounds %struct.operand, ptr %634, i32 0, i32 0
  store i32 7, ptr %635, align 4, !tbaa !19
  %636 = load ptr, ptr %6, align 8, !tbaa !5
  %637 = getelementptr inbounds %struct.instr, ptr %636, i32 0, i32 4
  %638 = getelementptr inbounds %struct.operand, ptr %637, i32 0, i32 0
  store i32 3, ptr %638, align 4, !tbaa !21
  %639 = load ptr, ptr %6, align 8, !tbaa !5
  %640 = getelementptr inbounds %struct.instr, ptr %639, i32 0, i32 5
  store i32 3, ptr %640, align 4, !tbaa !23
  br label %1151

641:                                              ; preds = %3
  %642 = load ptr, ptr %6, align 8, !tbaa !5
  %643 = getelementptr inbounds %struct.instr, ptr %642, i32 0, i32 0
  store i32 10, ptr %643, align 4, !tbaa !11
  %644 = load ptr, ptr %6, align 8, !tbaa !5
  %645 = getelementptr inbounds %struct.instr, ptr %644, i32 0, i32 1
  store i32 1, ptr %645, align 4, !tbaa !16
  %646 = load ptr, ptr %6, align 8, !tbaa !5
  %647 = getelementptr inbounds %struct.instr, ptr %646, i32 0, i32 2
  %648 = getelementptr inbounds %struct.operand, ptr %647, i32 0, i32 0
  store i32 1, ptr %648, align 4, !tbaa !17
  %649 = load ptr, ptr %6, align 8, !tbaa !5
  %650 = getelementptr inbounds %struct.instr, ptr %649, i32 0, i32 4
  %651 = getelementptr inbounds %struct.operand, ptr %650, i32 0, i32 0
  store i32 1, ptr %651, align 4, !tbaa !21
  %652 = load ptr, ptr %6, align 8, !tbaa !5
  %653 = getelementptr inbounds %struct.instr, ptr %652, i32 0, i32 5
  store i32 1, ptr %653, align 4, !tbaa !23
  br label %1151

654:                                              ; preds = %3
  %655 = load ptr, ptr %6, align 8, !tbaa !5
  %656 = getelementptr inbounds %struct.instr, ptr %655, i32 0, i32 0
  store i32 11, ptr %656, align 4, !tbaa !11
  %657 = load ptr, ptr %6, align 8, !tbaa !5
  %658 = getelementptr inbounds %struct.instr, ptr %657, i32 0, i32 1
  store i32 1, ptr %658, align 4, !tbaa !16
  %659 = load ptr, ptr %6, align 8, !tbaa !5
  %660 = getelementptr inbounds %struct.instr, ptr %659, i32 0, i32 2
  %661 = getelementptr inbounds %struct.operand, ptr %660, i32 0, i32 0
  store i32 1, ptr %661, align 4, !tbaa !17
  %662 = load ptr, ptr %6, align 8, !tbaa !5
  %663 = getelementptr inbounds %struct.instr, ptr %662, i32 0, i32 4
  %664 = getelementptr inbounds %struct.operand, ptr %663, i32 0, i32 0
  store i32 1, ptr %664, align 4, !tbaa !21
  %665 = load ptr, ptr %6, align 8, !tbaa !5
  %666 = getelementptr inbounds %struct.instr, ptr %665, i32 0, i32 5
  store i32 1, ptr %666, align 4, !tbaa !23
  br label %1151

667:                                              ; preds = %3
  %668 = load ptr, ptr %6, align 8, !tbaa !5
  %669 = getelementptr inbounds %struct.instr, ptr %668, i32 0, i32 0
  store i32 12, ptr %669, align 4, !tbaa !11
  %670 = load ptr, ptr %6, align 8, !tbaa !5
  %671 = getelementptr inbounds %struct.instr, ptr %670, i32 0, i32 1
  store i32 1, ptr %671, align 4, !tbaa !16
  %672 = load ptr, ptr %6, align 8, !tbaa !5
  %673 = getelementptr inbounds %struct.instr, ptr %672, i32 0, i32 2
  %674 = getelementptr inbounds %struct.operand, ptr %673, i32 0, i32 0
  store i32 1, ptr %674, align 4, !tbaa !17
  %675 = load ptr, ptr %6, align 8, !tbaa !5
  %676 = getelementptr inbounds %struct.instr, ptr %675, i32 0, i32 4
  %677 = getelementptr inbounds %struct.operand, ptr %676, i32 0, i32 0
  store i32 1, ptr %677, align 4, !tbaa !21
  %678 = load ptr, ptr %6, align 8, !tbaa !5
  %679 = getelementptr inbounds %struct.instr, ptr %678, i32 0, i32 5
  store i32 1, ptr %679, align 4, !tbaa !23
  br label %1151

680:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %681 = load ptr, ptr %6, align 8, !tbaa !5
  %682 = getelementptr inbounds %struct.instr, ptr %681, i32 0, i32 0
  store i32 13, ptr %682, align 4, !tbaa !11
  %683 = load ptr, ptr %6, align 8, !tbaa !5
  %684 = getelementptr inbounds %struct.instr, ptr %683, i32 0, i32 1
  store i32 1, ptr %684, align 4, !tbaa !16
  %685 = load ptr, ptr %6, align 8, !tbaa !5
  %686 = getelementptr inbounds %struct.instr, ptr %685, i32 0, i32 2
  %687 = getelementptr inbounds %struct.operand, ptr %686, i32 0, i32 0
  store i32 2, ptr %687, align 4, !tbaa !17
  %688 = load i32, ptr %5, align 4, !tbaa !9
  %689 = and i32 %688, 7
  %690 = load ptr, ptr %6, align 8, !tbaa !5
  %691 = getelementptr inbounds %struct.instr, ptr %690, i32 0, i32 2
  %692 = getelementptr inbounds %struct.operand, ptr %691, i32 0, i32 1
  store i32 %689, ptr %692, align 4, !tbaa !18
  %693 = load ptr, ptr %6, align 8, !tbaa !5
  %694 = getelementptr inbounds %struct.instr, ptr %693, i32 0, i32 4
  %695 = getelementptr inbounds %struct.operand, ptr %694, i32 0, i32 0
  store i32 1, ptr %695, align 4, !tbaa !21
  %696 = load ptr, ptr %6, align 8, !tbaa !5
  %697 = getelementptr inbounds %struct.instr, ptr %696, i32 0, i32 5
  store i32 1, ptr %697, align 4, !tbaa !23
  br label %1151

698:                                              ; preds = %3
  %699 = load ptr, ptr %6, align 8, !tbaa !5
  %700 = getelementptr inbounds %struct.instr, ptr %699, i32 0, i32 0
  store i32 13, ptr %700, align 4, !tbaa !11
  %701 = load ptr, ptr %6, align 8, !tbaa !5
  %702 = getelementptr inbounds %struct.instr, ptr %701, i32 0, i32 1
  store i32 1, ptr %702, align 4, !tbaa !16
  %703 = load ptr, ptr %6, align 8, !tbaa !5
  %704 = getelementptr inbounds %struct.instr, ptr %703, i32 0, i32 2
  %705 = getelementptr inbounds %struct.operand, ptr %704, i32 0, i32 0
  store i32 3, ptr %705, align 4, !tbaa !17
  %706 = load ptr, ptr %6, align 8, !tbaa !5
  %707 = getelementptr inbounds %struct.instr, ptr %706, i32 0, i32 4
  %708 = getelementptr inbounds %struct.operand, ptr %707, i32 0, i32 0
  store i32 1, ptr %708, align 4, !tbaa !21
  %709 = load ptr, ptr %6, align 8, !tbaa !5
  %710 = getelementptr inbounds %struct.instr, ptr %709, i32 0, i32 5
  store i32 2, ptr %710, align 4, !tbaa !23
  br label %1151

711:                                              ; preds = %3, %3
  %712 = load ptr, ptr %6, align 8, !tbaa !5
  %713 = getelementptr inbounds %struct.instr, ptr %712, i32 0, i32 0
  store i32 13, ptr %713, align 4, !tbaa !11
  %714 = load ptr, ptr %6, align 8, !tbaa !5
  %715 = getelementptr inbounds %struct.instr, ptr %714, i32 0, i32 1
  store i32 1, ptr %715, align 4, !tbaa !16
  %716 = load ptr, ptr %6, align 8, !tbaa !5
  %717 = getelementptr inbounds %struct.instr, ptr %716, i32 0, i32 2
  %718 = getelementptr inbounds %struct.operand, ptr %717, i32 0, i32 0
  store i32 4, ptr %718, align 4, !tbaa !17
  %719 = load i32, ptr %5, align 4, !tbaa !9
  %720 = and i32 %719, 1
  %721 = load ptr, ptr %6, align 8, !tbaa !5
  %722 = getelementptr inbounds %struct.instr, ptr %721, i32 0, i32 2
  %723 = getelementptr inbounds %struct.operand, ptr %722, i32 0, i32 1
  store i32 %720, ptr %723, align 4, !tbaa !18
  %724 = load ptr, ptr %6, align 8, !tbaa !5
  %725 = getelementptr inbounds %struct.instr, ptr %724, i32 0, i32 4
  %726 = getelementptr inbounds %struct.operand, ptr %725, i32 0, i32 0
  store i32 1, ptr %726, align 4, !tbaa !21
  %727 = load ptr, ptr %6, align 8, !tbaa !5
  %728 = getelementptr inbounds %struct.instr, ptr %727, i32 0, i32 5
  store i32 1, ptr %728, align 4, !tbaa !23
  br label %1151

729:                                              ; preds = %3
  %730 = load ptr, ptr %6, align 8, !tbaa !5
  %731 = getelementptr inbounds %struct.instr, ptr %730, i32 0, i32 0
  store i32 13, ptr %731, align 4, !tbaa !11
  %732 = load ptr, ptr %6, align 8, !tbaa !5
  %733 = getelementptr inbounds %struct.instr, ptr %732, i32 0, i32 1
  store i32 1, ptr %733, align 4, !tbaa !16
  %734 = load ptr, ptr %6, align 8, !tbaa !5
  %735 = getelementptr inbounds %struct.instr, ptr %734, i32 0, i32 2
  %736 = getelementptr inbounds %struct.operand, ptr %735, i32 0, i32 0
  store i32 7, ptr %736, align 4, !tbaa !17
  %737 = load ptr, ptr %6, align 8, !tbaa !5
  %738 = getelementptr inbounds %struct.instr, ptr %737, i32 0, i32 4
  %739 = getelementptr inbounds %struct.operand, ptr %738, i32 0, i32 0
  store i32 1, ptr %739, align 4, !tbaa !21
  %740 = load ptr, ptr %6, align 8, !tbaa !5
  %741 = getelementptr inbounds %struct.instr, ptr %740, i32 0, i32 5
  store i32 2, ptr %741, align 4, !tbaa !23
  br label %1151

742:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %743 = load ptr, ptr %6, align 8, !tbaa !5
  %744 = getelementptr inbounds %struct.instr, ptr %743, i32 0, i32 0
  store i32 13, ptr %744, align 4, !tbaa !11
  %745 = load ptr, ptr %6, align 8, !tbaa !5
  %746 = getelementptr inbounds %struct.instr, ptr %745, i32 0, i32 1
  store i32 1, ptr %746, align 4, !tbaa !16
  %747 = load ptr, ptr %6, align 8, !tbaa !5
  %748 = getelementptr inbounds %struct.instr, ptr %747, i32 0, i32 2
  %749 = getelementptr inbounds %struct.operand, ptr %748, i32 0, i32 0
  store i32 1, ptr %749, align 4, !tbaa !17
  %750 = load ptr, ptr %6, align 8, !tbaa !5
  %751 = getelementptr inbounds %struct.instr, ptr %750, i32 0, i32 4
  %752 = getelementptr inbounds %struct.operand, ptr %751, i32 0, i32 0
  store i32 2, ptr %752, align 4, !tbaa !21
  %753 = load i32, ptr %5, align 4, !tbaa !9
  %754 = and i32 %753, 7
  %755 = load ptr, ptr %6, align 8, !tbaa !5
  %756 = getelementptr inbounds %struct.instr, ptr %755, i32 0, i32 4
  %757 = getelementptr inbounds %struct.operand, ptr %756, i32 0, i32 1
  store i32 %754, ptr %757, align 4, !tbaa !22
  %758 = load ptr, ptr %6, align 8, !tbaa !5
  %759 = getelementptr inbounds %struct.instr, ptr %758, i32 0, i32 5
  store i32 1, ptr %759, align 4, !tbaa !23
  br label %1151

760:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %761 = load ptr, ptr %6, align 8, !tbaa !5
  %762 = getelementptr inbounds %struct.instr, ptr %761, i32 0, i32 0
  store i32 13, ptr %762, align 4, !tbaa !11
  %763 = load ptr, ptr %6, align 8, !tbaa !5
  %764 = getelementptr inbounds %struct.instr, ptr %763, i32 0, i32 1
  store i32 1, ptr %764, align 4, !tbaa !16
  %765 = load ptr, ptr %6, align 8, !tbaa !5
  %766 = getelementptr inbounds %struct.instr, ptr %765, i32 0, i32 2
  %767 = getelementptr inbounds %struct.operand, ptr %766, i32 0, i32 0
  store i32 3, ptr %767, align 4, !tbaa !17
  %768 = load ptr, ptr %6, align 8, !tbaa !5
  %769 = getelementptr inbounds %struct.instr, ptr %768, i32 0, i32 4
  %770 = getelementptr inbounds %struct.operand, ptr %769, i32 0, i32 0
  store i32 2, ptr %770, align 4, !tbaa !21
  %771 = load i32, ptr %5, align 4, !tbaa !9
  %772 = and i32 %771, 7
  %773 = load ptr, ptr %6, align 8, !tbaa !5
  %774 = getelementptr inbounds %struct.instr, ptr %773, i32 0, i32 4
  %775 = getelementptr inbounds %struct.operand, ptr %774, i32 0, i32 1
  store i32 %772, ptr %775, align 4, !tbaa !22
  %776 = load ptr, ptr %6, align 8, !tbaa !5
  %777 = getelementptr inbounds %struct.instr, ptr %776, i32 0, i32 5
  store i32 2, ptr %777, align 4, !tbaa !23
  br label %1151

778:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %779 = load ptr, ptr %6, align 8, !tbaa !5
  %780 = getelementptr inbounds %struct.instr, ptr %779, i32 0, i32 0
  store i32 13, ptr %780, align 4, !tbaa !11
  %781 = load ptr, ptr %6, align 8, !tbaa !5
  %782 = getelementptr inbounds %struct.instr, ptr %781, i32 0, i32 1
  store i32 1, ptr %782, align 4, !tbaa !16
  %783 = load ptr, ptr %6, align 8, !tbaa !5
  %784 = getelementptr inbounds %struct.instr, ptr %783, i32 0, i32 2
  %785 = getelementptr inbounds %struct.operand, ptr %784, i32 0, i32 0
  store i32 7, ptr %785, align 4, !tbaa !17
  %786 = load ptr, ptr %6, align 8, !tbaa !5
  %787 = getelementptr inbounds %struct.instr, ptr %786, i32 0, i32 4
  %788 = getelementptr inbounds %struct.operand, ptr %787, i32 0, i32 0
  store i32 2, ptr %788, align 4, !tbaa !21
  %789 = load i32, ptr %5, align 4, !tbaa !9
  %790 = and i32 %789, 7
  %791 = load ptr, ptr %6, align 8, !tbaa !5
  %792 = getelementptr inbounds %struct.instr, ptr %791, i32 0, i32 4
  %793 = getelementptr inbounds %struct.operand, ptr %792, i32 0, i32 1
  store i32 %790, ptr %793, align 4, !tbaa !22
  %794 = load ptr, ptr %6, align 8, !tbaa !5
  %795 = getelementptr inbounds %struct.instr, ptr %794, i32 0, i32 5
  store i32 2, ptr %795, align 4, !tbaa !23
  br label %1151

796:                                              ; preds = %3
  %797 = load ptr, ptr %6, align 8, !tbaa !5
  %798 = getelementptr inbounds %struct.instr, ptr %797, i32 0, i32 0
  store i32 13, ptr %798, align 4, !tbaa !11
  %799 = load ptr, ptr %6, align 8, !tbaa !5
  %800 = getelementptr inbounds %struct.instr, ptr %799, i32 0, i32 1
  store i32 1, ptr %800, align 4, !tbaa !16
  %801 = load ptr, ptr %6, align 8, !tbaa !5
  %802 = getelementptr inbounds %struct.instr, ptr %801, i32 0, i32 2
  %803 = getelementptr inbounds %struct.operand, ptr %802, i32 0, i32 0
  store i32 1, ptr %803, align 4, !tbaa !17
  %804 = load ptr, ptr %6, align 8, !tbaa !5
  %805 = getelementptr inbounds %struct.instr, ptr %804, i32 0, i32 4
  %806 = getelementptr inbounds %struct.operand, ptr %805, i32 0, i32 0
  store i32 3, ptr %806, align 4, !tbaa !21
  %807 = load ptr, ptr %6, align 8, !tbaa !5
  %808 = getelementptr inbounds %struct.instr, ptr %807, i32 0, i32 5
  store i32 2, ptr %808, align 4, !tbaa !23
  br label %809

809:                                              ; preds = %796, %3, %3, %3, %3, %3, %3, %3, %3
  %810 = load ptr, ptr %6, align 8, !tbaa !5
  %811 = getelementptr inbounds %struct.instr, ptr %810, i32 0, i32 0
  store i32 13, ptr %811, align 4, !tbaa !11
  %812 = load ptr, ptr %6, align 8, !tbaa !5
  %813 = getelementptr inbounds %struct.instr, ptr %812, i32 0, i32 1
  store i32 1, ptr %813, align 4, !tbaa !16
  %814 = load ptr, ptr %6, align 8, !tbaa !5
  %815 = getelementptr inbounds %struct.instr, ptr %814, i32 0, i32 2
  %816 = getelementptr inbounds %struct.operand, ptr %815, i32 0, i32 0
  store i32 2, ptr %816, align 4, !tbaa !17
  %817 = load i32, ptr %5, align 4, !tbaa !9
  %818 = and i32 %817, 7
  %819 = load ptr, ptr %6, align 8, !tbaa !5
  %820 = getelementptr inbounds %struct.instr, ptr %819, i32 0, i32 2
  %821 = getelementptr inbounds %struct.operand, ptr %820, i32 0, i32 1
  store i32 %818, ptr %821, align 4, !tbaa !18
  %822 = load ptr, ptr %6, align 8, !tbaa !5
  %823 = getelementptr inbounds %struct.instr, ptr %822, i32 0, i32 4
  %824 = getelementptr inbounds %struct.operand, ptr %823, i32 0, i32 0
  store i32 3, ptr %824, align 4, !tbaa !21
  %825 = load ptr, ptr %6, align 8, !tbaa !5
  %826 = getelementptr inbounds %struct.instr, ptr %825, i32 0, i32 5
  store i32 2, ptr %826, align 4, !tbaa !23
  br label %1151

827:                                              ; preds = %3
  %828 = load ptr, ptr %6, align 8, !tbaa !5
  %829 = getelementptr inbounds %struct.instr, ptr %828, i32 0, i32 0
  store i32 13, ptr %829, align 4, !tbaa !11
  %830 = load ptr, ptr %6, align 8, !tbaa !5
  %831 = getelementptr inbounds %struct.instr, ptr %830, i32 0, i32 1
  store i32 1, ptr %831, align 4, !tbaa !16
  %832 = load ptr, ptr %6, align 8, !tbaa !5
  %833 = getelementptr inbounds %struct.instr, ptr %832, i32 0, i32 2
  %834 = getelementptr inbounds %struct.operand, ptr %833, i32 0, i32 0
  store i32 3, ptr %834, align 4, !tbaa !17
  %835 = load ptr, ptr %6, align 8, !tbaa !5
  %836 = getelementptr inbounds %struct.instr, ptr %835, i32 0, i32 4
  %837 = getelementptr inbounds %struct.operand, ptr %836, i32 0, i32 0
  store i32 3, ptr %837, align 4, !tbaa !21
  %838 = load ptr, ptr %6, align 8, !tbaa !5
  %839 = getelementptr inbounds %struct.instr, ptr %838, i32 0, i32 5
  store i32 3, ptr %839, align 4, !tbaa !23
  br label %1151

840:                                              ; preds = %3, %3
  %841 = load ptr, ptr %6, align 8, !tbaa !5
  %842 = getelementptr inbounds %struct.instr, ptr %841, i32 0, i32 0
  store i32 13, ptr %842, align 4, !tbaa !11
  %843 = load ptr, ptr %6, align 8, !tbaa !5
  %844 = getelementptr inbounds %struct.instr, ptr %843, i32 0, i32 1
  store i32 1, ptr %844, align 4, !tbaa !16
  %845 = load ptr, ptr %6, align 8, !tbaa !5
  %846 = getelementptr inbounds %struct.instr, ptr %845, i32 0, i32 2
  %847 = getelementptr inbounds %struct.operand, ptr %846, i32 0, i32 0
  store i32 4, ptr %847, align 4, !tbaa !17
  %848 = load i32, ptr %5, align 4, !tbaa !9
  %849 = and i32 %848, 1
  %850 = load ptr, ptr %6, align 8, !tbaa !5
  %851 = getelementptr inbounds %struct.instr, ptr %850, i32 0, i32 2
  %852 = getelementptr inbounds %struct.operand, ptr %851, i32 0, i32 1
  store i32 %849, ptr %852, align 4, !tbaa !18
  %853 = load ptr, ptr %6, align 8, !tbaa !5
  %854 = getelementptr inbounds %struct.instr, ptr %853, i32 0, i32 4
  %855 = getelementptr inbounds %struct.operand, ptr %854, i32 0, i32 0
  store i32 3, ptr %855, align 4, !tbaa !21
  %856 = load ptr, ptr %6, align 8, !tbaa !5
  %857 = getelementptr inbounds %struct.instr, ptr %856, i32 0, i32 5
  store i32 2, ptr %857, align 4, !tbaa !23
  br label %1151

858:                                              ; preds = %3
  %859 = load ptr, ptr %6, align 8, !tbaa !5
  %860 = getelementptr inbounds %struct.instr, ptr %859, i32 0, i32 0
  store i32 13, ptr %860, align 4, !tbaa !11
  %861 = load ptr, ptr %6, align 8, !tbaa !5
  %862 = getelementptr inbounds %struct.instr, ptr %861, i32 0, i32 1
  store i32 1, ptr %862, align 4, !tbaa !16
  %863 = load ptr, ptr %6, align 8, !tbaa !5
  %864 = getelementptr inbounds %struct.instr, ptr %863, i32 0, i32 2
  %865 = getelementptr inbounds %struct.operand, ptr %864, i32 0, i32 0
  store i32 7, ptr %865, align 4, !tbaa !17
  %866 = load ptr, ptr %6, align 8, !tbaa !5
  %867 = getelementptr inbounds %struct.instr, ptr %866, i32 0, i32 4
  %868 = getelementptr inbounds %struct.operand, ptr %867, i32 0, i32 0
  store i32 3, ptr %868, align 4, !tbaa !21
  %869 = load ptr, ptr %6, align 8, !tbaa !5
  %870 = getelementptr inbounds %struct.instr, ptr %869, i32 0, i32 5
  store i32 2, ptr %870, align 4, !tbaa !23
  br label %1151

871:                                              ; preds = %3, %3
  %872 = load ptr, ptr %6, align 8, !tbaa !5
  %873 = getelementptr inbounds %struct.instr, ptr %872, i32 0, i32 0
  store i32 13, ptr %873, align 4, !tbaa !11
  %874 = load ptr, ptr %6, align 8, !tbaa !5
  %875 = getelementptr inbounds %struct.instr, ptr %874, i32 0, i32 1
  store i32 1, ptr %875, align 4, !tbaa !16
  %876 = load ptr, ptr %6, align 8, !tbaa !5
  %877 = getelementptr inbounds %struct.instr, ptr %876, i32 0, i32 2
  %878 = getelementptr inbounds %struct.operand, ptr %877, i32 0, i32 0
  store i32 1, ptr %878, align 4, !tbaa !17
  %879 = load ptr, ptr %6, align 8, !tbaa !5
  %880 = getelementptr inbounds %struct.instr, ptr %879, i32 0, i32 4
  %881 = getelementptr inbounds %struct.operand, ptr %880, i32 0, i32 0
  store i32 4, ptr %881, align 4, !tbaa !21
  %882 = load i32, ptr %5, align 4, !tbaa !9
  %883 = and i32 %882, 1
  %884 = load ptr, ptr %6, align 8, !tbaa !5
  %885 = getelementptr inbounds %struct.instr, ptr %884, i32 0, i32 4
  %886 = getelementptr inbounds %struct.operand, ptr %885, i32 0, i32 1
  store i32 %883, ptr %886, align 4, !tbaa !22
  %887 = load ptr, ptr %6, align 8, !tbaa !5
  %888 = getelementptr inbounds %struct.instr, ptr %887, i32 0, i32 5
  store i32 1, ptr %888, align 4, !tbaa !23
  br label %1151

889:                                              ; preds = %3, %3
  %890 = load ptr, ptr %6, align 8, !tbaa !5
  %891 = getelementptr inbounds %struct.instr, ptr %890, i32 0, i32 0
  store i32 13, ptr %891, align 4, !tbaa !11
  %892 = load ptr, ptr %6, align 8, !tbaa !5
  %893 = getelementptr inbounds %struct.instr, ptr %892, i32 0, i32 1
  store i32 1, ptr %893, align 4, !tbaa !16
  %894 = load ptr, ptr %6, align 8, !tbaa !5
  %895 = getelementptr inbounds %struct.instr, ptr %894, i32 0, i32 2
  %896 = getelementptr inbounds %struct.operand, ptr %895, i32 0, i32 0
  store i32 3, ptr %896, align 4, !tbaa !17
  %897 = load ptr, ptr %6, align 8, !tbaa !5
  %898 = getelementptr inbounds %struct.instr, ptr %897, i32 0, i32 4
  %899 = getelementptr inbounds %struct.operand, ptr %898, i32 0, i32 0
  store i32 4, ptr %899, align 4, !tbaa !21
  %900 = load i32, ptr %5, align 4, !tbaa !9
  %901 = and i32 %900, 1
  %902 = load ptr, ptr %6, align 8, !tbaa !5
  %903 = getelementptr inbounds %struct.instr, ptr %902, i32 0, i32 4
  %904 = getelementptr inbounds %struct.operand, ptr %903, i32 0, i32 1
  store i32 %901, ptr %904, align 4, !tbaa !22
  %905 = load ptr, ptr %6, align 8, !tbaa !5
  %906 = getelementptr inbounds %struct.instr, ptr %905, i32 0, i32 5
  store i32 2, ptr %906, align 4, !tbaa !23
  br label %1151

907:                                              ; preds = %3, %3
  %908 = load ptr, ptr %6, align 8, !tbaa !5
  %909 = getelementptr inbounds %struct.instr, ptr %908, i32 0, i32 0
  store i32 13, ptr %909, align 4, !tbaa !11
  %910 = load ptr, ptr %6, align 8, !tbaa !5
  %911 = getelementptr inbounds %struct.instr, ptr %910, i32 0, i32 1
  store i32 1, ptr %911, align 4, !tbaa !16
  %912 = load ptr, ptr %6, align 8, !tbaa !5
  %913 = getelementptr inbounds %struct.instr, ptr %912, i32 0, i32 2
  %914 = getelementptr inbounds %struct.operand, ptr %913, i32 0, i32 0
  store i32 7, ptr %914, align 4, !tbaa !17
  %915 = load ptr, ptr %6, align 8, !tbaa !5
  %916 = getelementptr inbounds %struct.instr, ptr %915, i32 0, i32 4
  %917 = getelementptr inbounds %struct.operand, ptr %916, i32 0, i32 0
  store i32 4, ptr %917, align 4, !tbaa !21
  %918 = load i32, ptr %5, align 4, !tbaa !9
  %919 = and i32 %918, 1
  %920 = load ptr, ptr %6, align 8, !tbaa !5
  %921 = getelementptr inbounds %struct.instr, ptr %920, i32 0, i32 4
  %922 = getelementptr inbounds %struct.operand, ptr %921, i32 0, i32 1
  store i32 %919, ptr %922, align 4, !tbaa !22
  %923 = load ptr, ptr %6, align 8, !tbaa !5
  %924 = getelementptr inbounds %struct.instr, ptr %923, i32 0, i32 5
  store i32 2, ptr %924, align 4, !tbaa !23
  br label %1151

925:                                              ; preds = %3, %3
  %926 = load ptr, ptr %6, align 8, !tbaa !5
  %927 = getelementptr inbounds %struct.instr, ptr %926, i32 0, i32 0
  store i32 13, ptr %927, align 4, !tbaa !11
  %928 = load ptr, ptr %6, align 8, !tbaa !5
  %929 = getelementptr inbounds %struct.instr, ptr %928, i32 0, i32 1
  store i32 1, ptr %929, align 4, !tbaa !16
  %930 = load ptr, ptr %6, align 8, !tbaa !5
  %931 = getelementptr inbounds %struct.instr, ptr %930, i32 0, i32 2
  %932 = getelementptr inbounds %struct.operand, ptr %931, i32 0, i32 0
  store i32 5, ptr %932, align 4, !tbaa !17
  %933 = load i32, ptr %5, align 4, !tbaa !9
  %934 = and i32 %933, 1
  %935 = load ptr, ptr %6, align 8, !tbaa !5
  %936 = getelementptr inbounds %struct.instr, ptr %935, i32 0, i32 2
  %937 = getelementptr inbounds %struct.operand, ptr %936, i32 0, i32 1
  store i32 %934, ptr %937, align 4, !tbaa !18
  %938 = load ptr, ptr %6, align 8, !tbaa !5
  %939 = getelementptr inbounds %struct.instr, ptr %938, i32 0, i32 4
  %940 = getelementptr inbounds %struct.operand, ptr %939, i32 0, i32 0
  store i32 1, ptr %940, align 4, !tbaa !21
  %941 = getelementptr inbounds %struct.cycle_model, ptr %7, i32 0, i32 23
  %942 = load i32, ptr %941, align 8, !tbaa !24
  %943 = add nsw i32 2, %942
  %944 = load ptr, ptr %6, align 8, !tbaa !5
  %945 = getelementptr inbounds %struct.instr, ptr %944, i32 0, i32 5
  store i32 %943, ptr %945, align 4, !tbaa !23
  br label %1151

946:                                              ; preds = %3, %3
  %947 = load ptr, ptr %6, align 8, !tbaa !5
  %948 = getelementptr inbounds %struct.instr, ptr %947, i32 0, i32 0
  store i32 13, ptr %948, align 4, !tbaa !11
  %949 = load ptr, ptr %6, align 8, !tbaa !5
  %950 = getelementptr inbounds %struct.instr, ptr %949, i32 0, i32 1
  store i32 1, ptr %950, align 4, !tbaa !16
  %951 = load ptr, ptr %6, align 8, !tbaa !5
  %952 = getelementptr inbounds %struct.instr, ptr %951, i32 0, i32 2
  %953 = getelementptr inbounds %struct.operand, ptr %952, i32 0, i32 0
  store i32 1, ptr %953, align 4, !tbaa !17
  %954 = load ptr, ptr %6, align 8, !tbaa !5
  %955 = getelementptr inbounds %struct.instr, ptr %954, i32 0, i32 4
  %956 = getelementptr inbounds %struct.operand, ptr %955, i32 0, i32 0
  store i32 5, ptr %956, align 4, !tbaa !21
  %957 = load i32, ptr %5, align 4, !tbaa !9
  %958 = and i32 %957, 1
  %959 = load ptr, ptr %6, align 8, !tbaa !5
  %960 = getelementptr inbounds %struct.instr, ptr %959, i32 0, i32 4
  %961 = getelementptr inbounds %struct.operand, ptr %960, i32 0, i32 1
  store i32 %958, ptr %961, align 4, !tbaa !22
  %962 = getelementptr inbounds %struct.cycle_model, ptr %7, i32 0, i32 23
  %963 = load i32, ptr %962, align 8, !tbaa !24
  %964 = add nsw i32 2, %963
  %965 = load ptr, ptr %6, align 8, !tbaa !5
  %966 = getelementptr inbounds %struct.instr, ptr %965, i32 0, i32 5
  store i32 %964, ptr %966, align 4, !tbaa !23
  br label %1151

967:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %968 = load ptr, ptr %6, align 8, !tbaa !5
  %969 = getelementptr inbounds %struct.instr, ptr %968, i32 0, i32 0
  store i32 14, ptr %969, align 4, !tbaa !11
  %970 = load ptr, ptr %6, align 8, !tbaa !5
  %971 = getelementptr inbounds %struct.instr, ptr %970, i32 0, i32 1
  store i32 1, ptr %971, align 4, !tbaa !16
  %972 = load ptr, ptr %6, align 8, !tbaa !5
  %973 = getelementptr inbounds %struct.instr, ptr %972, i32 0, i32 2
  %974 = getelementptr inbounds %struct.operand, ptr %973, i32 0, i32 0
  store i32 9, ptr %974, align 4, !tbaa !17
  %975 = load i32, ptr %5, align 4, !tbaa !9
  %976 = ashr i32 %975, 5
  %977 = and i32 %976, 7
  %978 = load ptr, ptr %6, align 8, !tbaa !5
  %979 = getelementptr inbounds %struct.instr, ptr %978, i32 0, i32 2
  %980 = getelementptr inbounds %struct.operand, ptr %979, i32 0, i32 1
  store i32 %977, ptr %980, align 4, !tbaa !18
  %981 = load ptr, ptr %6, align 8, !tbaa !5
  %982 = getelementptr inbounds %struct.instr, ptr %981, i32 0, i32 5
  store i32 3, ptr %982, align 4, !tbaa !23
  br label %1151

983:                                              ; preds = %3
  %984 = load ptr, ptr %6, align 8, !tbaa !5
  %985 = getelementptr inbounds %struct.instr, ptr %984, i32 0, i32 0
  store i32 14, ptr %985, align 4, !tbaa !11
  %986 = load ptr, ptr %6, align 8, !tbaa !5
  %987 = getelementptr inbounds %struct.instr, ptr %986, i32 0, i32 1
  store i32 1, ptr %987, align 4, !tbaa !16
  %988 = load ptr, ptr %6, align 8, !tbaa !5
  %989 = getelementptr inbounds %struct.instr, ptr %988, i32 0, i32 2
  %990 = getelementptr inbounds %struct.operand, ptr %989, i32 0, i32 0
  store i32 10, ptr %990, align 4, !tbaa !17
  %991 = load ptr, ptr %6, align 8, !tbaa !5
  %992 = getelementptr inbounds %struct.instr, ptr %991, i32 0, i32 5
  store i32 4, ptr %992, align 4, !tbaa !23
  br label %1151

993:                                              ; preds = %3
  %994 = load ptr, ptr %6, align 8, !tbaa !5
  %995 = getelementptr inbounds %struct.instr, ptr %994, i32 0, i32 0
  store i32 15, ptr %995, align 4, !tbaa !11
  %996 = load ptr, ptr %6, align 8, !tbaa !5
  %997 = getelementptr inbounds %struct.instr, ptr %996, i32 0, i32 5
  store i32 4, ptr %997, align 4, !tbaa !23
  br label %1151

998:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %999 = load ptr, ptr %6, align 8, !tbaa !5
  %1000 = getelementptr inbounds %struct.instr, ptr %999, i32 0, i32 0
  store i32 16, ptr %1000, align 4, !tbaa !11
  %1001 = load ptr, ptr %6, align 8, !tbaa !5
  %1002 = getelementptr inbounds %struct.instr, ptr %1001, i32 0, i32 1
  store i32 1, ptr %1002, align 4, !tbaa !16
  %1003 = load ptr, ptr %6, align 8, !tbaa !5
  %1004 = getelementptr inbounds %struct.instr, ptr %1003, i32 0, i32 2
  %1005 = getelementptr inbounds %struct.operand, ptr %1004, i32 0, i32 0
  store i32 9, ptr %1005, align 4, !tbaa !17
  %1006 = load i32, ptr %5, align 4, !tbaa !9
  %1007 = ashr i32 %1006, 5
  %1008 = and i32 %1007, 7
  %1009 = load ptr, ptr %6, align 8, !tbaa !5
  %1010 = getelementptr inbounds %struct.instr, ptr %1009, i32 0, i32 2
  %1011 = getelementptr inbounds %struct.operand, ptr %1010, i32 0, i32 1
  store i32 %1008, ptr %1011, align 4, !tbaa !18
  %1012 = load ptr, ptr %6, align 8, !tbaa !5
  %1013 = getelementptr inbounds %struct.instr, ptr %1012, i32 0, i32 5
  store i32 3, ptr %1013, align 4, !tbaa !23
  br label %1151

1014:                                             ; preds = %3
  %1015 = load ptr, ptr %6, align 8, !tbaa !5
  %1016 = getelementptr inbounds %struct.instr, ptr %1015, i32 0, i32 0
  store i32 16, ptr %1016, align 4, !tbaa !11
  %1017 = load ptr, ptr %6, align 8, !tbaa !5
  %1018 = getelementptr inbounds %struct.instr, ptr %1017, i32 0, i32 1
  store i32 1, ptr %1018, align 4, !tbaa !16
  %1019 = load ptr, ptr %6, align 8, !tbaa !5
  %1020 = getelementptr inbounds %struct.instr, ptr %1019, i32 0, i32 2
  %1021 = getelementptr inbounds %struct.operand, ptr %1020, i32 0, i32 0
  store i32 10, ptr %1021, align 4, !tbaa !17
  %1022 = load ptr, ptr %6, align 8, !tbaa !5
  %1023 = getelementptr inbounds %struct.instr, ptr %1022, i32 0, i32 5
  store i32 4, ptr %1023, align 4, !tbaa !23
  br label %1151

1024:                                             ; preds = %3
  %1025 = load ptr, ptr %6, align 8, !tbaa !5
  %1026 = getelementptr inbounds %struct.instr, ptr %1025, i32 0, i32 0
  store i32 18, ptr %1026, align 4, !tbaa !11
  %1027 = load ptr, ptr %6, align 8, !tbaa !5
  %1028 = getelementptr inbounds %struct.instr, ptr %1027, i32 0, i32 1
  store i32 1, ptr %1028, align 4, !tbaa !16
  %1029 = load ptr, ptr %6, align 8, !tbaa !5
  %1030 = getelementptr inbounds %struct.instr, ptr %1029, i32 0, i32 2
  %1031 = getelementptr inbounds %struct.operand, ptr %1030, i32 0, i32 0
  store i32 6, ptr %1031, align 4, !tbaa !17
  %1032 = load ptr, ptr %6, align 8, !tbaa !5
  %1033 = getelementptr inbounds %struct.instr, ptr %1032, i32 0, i32 5
  store i32 3, ptr %1033, align 4, !tbaa !23
  br label %1151

1034:                                             ; preds = %3
  %1035 = load ptr, ptr %6, align 8, !tbaa !5
  %1036 = getelementptr inbounds %struct.instr, ptr %1035, i32 0, i32 0
  store i32 19, ptr %1036, align 4, !tbaa !11
  %1037 = load ptr, ptr %6, align 8, !tbaa !5
  %1038 = getelementptr inbounds %struct.instr, ptr %1037, i32 0, i32 1
  store i32 1, ptr %1038, align 4, !tbaa !16
  %1039 = load ptr, ptr %6, align 8, !tbaa !5
  %1040 = getelementptr inbounds %struct.instr, ptr %1039, i32 0, i32 2
  %1041 = getelementptr inbounds %struct.operand, ptr %1040, i32 0, i32 0
  store i32 6, ptr %1041, align 4, !tbaa !17
  %1042 = load ptr, ptr %6, align 8, !tbaa !5
  %1043 = getelementptr inbounds %struct.instr, ptr %1042, i32 0, i32 5
  store i32 3, ptr %1043, align 4, !tbaa !23
  br label %1151

1044:                                             ; preds = %3
  %1045 = load ptr, ptr %6, align 8, !tbaa !5
  %1046 = getelementptr inbounds %struct.instr, ptr %1045, i32 0, i32 0
  store i32 20, ptr %1046, align 4, !tbaa !11
  %1047 = load ptr, ptr %6, align 8, !tbaa !5
  %1048 = getelementptr inbounds %struct.instr, ptr %1047, i32 0, i32 1
  store i32 2, ptr %1048, align 4, !tbaa !16
  %1049 = load ptr, ptr %6, align 8, !tbaa !5
  %1050 = getelementptr inbounds %struct.instr, ptr %1049, i32 0, i32 2
  %1051 = getelementptr inbounds %struct.operand, ptr %1050, i32 0, i32 0
  store i32 1, ptr %1051, align 4, !tbaa !17
  %1052 = load ptr, ptr %6, align 8, !tbaa !5
  %1053 = getelementptr inbounds %struct.instr, ptr %1052, i32 0, i32 3
  %1054 = getelementptr inbounds %struct.operand, ptr %1053, i32 0, i32 0
  store i32 3, ptr %1054, align 4, !tbaa !19
  %1055 = load ptr, ptr %6, align 8, !tbaa !5
  %1056 = getelementptr inbounds %struct.instr, ptr %1055, i32 0, i32 4
  %1057 = getelementptr inbounds %struct.operand, ptr %1056, i32 0, i32 0
  store i32 6, ptr %1057, align 4, !tbaa !21
  %1058 = load ptr, ptr %6, align 8, !tbaa !5
  %1059 = getelementptr inbounds %struct.instr, ptr %1058, i32 0, i32 5
  store i32 4, ptr %1059, align 4, !tbaa !23
  br label %1151

1060:                                             ; preds = %3
  %1061 = load ptr, ptr %6, align 8, !tbaa !5
  %1062 = getelementptr inbounds %struct.instr, ptr %1061, i32 0, i32 0
  store i32 20, ptr %1062, align 4, !tbaa !11
  %1063 = load ptr, ptr %6, align 8, !tbaa !5
  %1064 = getelementptr inbounds %struct.instr, ptr %1063, i32 0, i32 1
  store i32 2, ptr %1064, align 4, !tbaa !16
  %1065 = load ptr, ptr %6, align 8, !tbaa !5
  %1066 = getelementptr inbounds %struct.instr, ptr %1065, i32 0, i32 2
  %1067 = getelementptr inbounds %struct.operand, ptr %1066, i32 0, i32 0
  store i32 1, ptr %1067, align 4, !tbaa !17
  %1068 = load ptr, ptr %6, align 8, !tbaa !5
  %1069 = getelementptr inbounds %struct.instr, ptr %1068, i32 0, i32 3
  %1070 = getelementptr inbounds %struct.operand, ptr %1069, i32 0, i32 0
  store i32 7, ptr %1070, align 4, !tbaa !19
  %1071 = load ptr, ptr %6, align 8, !tbaa !5
  %1072 = getelementptr inbounds %struct.instr, ptr %1071, i32 0, i32 4
  %1073 = getelementptr inbounds %struct.operand, ptr %1072, i32 0, i32 0
  store i32 6, ptr %1073, align 4, !tbaa !21
  %1074 = load ptr, ptr %6, align 8, !tbaa !5
  %1075 = getelementptr inbounds %struct.instr, ptr %1074, i32 0, i32 5
  store i32 4, ptr %1075, align 4, !tbaa !23
  br label %1151

1076:                                             ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %1077 = load ptr, ptr %6, align 8, !tbaa !5
  %1078 = getelementptr inbounds %struct.instr, ptr %1077, i32 0, i32 0
  store i32 20, ptr %1078, align 4, !tbaa !11
  %1079 = load ptr, ptr %6, align 8, !tbaa !5
  %1080 = getelementptr inbounds %struct.instr, ptr %1079, i32 0, i32 1
  store i32 2, ptr %1080, align 4, !tbaa !16
  %1081 = load ptr, ptr %6, align 8, !tbaa !5
  %1082 = getelementptr inbounds %struct.instr, ptr %1081, i32 0, i32 2
  %1083 = getelementptr inbounds %struct.operand, ptr %1082, i32 0, i32 0
  store i32 2, ptr %1083, align 4, !tbaa !17
  %1084 = load i32, ptr %5, align 4, !tbaa !9
  %1085 = and i32 %1084, 7
  %1086 = load ptr, ptr %6, align 8, !tbaa !5
  %1087 = getelementptr inbounds %struct.instr, ptr %1086, i32 0, i32 2
  %1088 = getelementptr inbounds %struct.operand, ptr %1087, i32 0, i32 1
  store i32 %1085, ptr %1088, align 4, !tbaa !18
  %1089 = load ptr, ptr %6, align 8, !tbaa !5
  %1090 = getelementptr inbounds %struct.instr, ptr %1089, i32 0, i32 3
  %1091 = getelementptr inbounds %struct.operand, ptr %1090, i32 0, i32 0
  store i32 7, ptr %1091, align 4, !tbaa !19
  %1092 = load ptr, ptr %6, align 8, !tbaa !5
  %1093 = getelementptr inbounds %struct.instr, ptr %1092, i32 0, i32 4
  %1094 = getelementptr inbounds %struct.operand, ptr %1093, i32 0, i32 0
  store i32 6, ptr %1094, align 4, !tbaa !21
  %1095 = load ptr, ptr %6, align 8, !tbaa !5
  %1096 = getelementptr inbounds %struct.instr, ptr %1095, i32 0, i32 5
  store i32 4, ptr %1096, align 4, !tbaa !23
  br label %1151

1097:                                             ; preds = %3, %3
  %1098 = load ptr, ptr %6, align 8, !tbaa !5
  %1099 = getelementptr inbounds %struct.instr, ptr %1098, i32 0, i32 0
  store i32 20, ptr %1099, align 4, !tbaa !11
  %1100 = load ptr, ptr %6, align 8, !tbaa !5
  %1101 = getelementptr inbounds %struct.instr, ptr %1100, i32 0, i32 1
  store i32 2, ptr %1101, align 4, !tbaa !16
  %1102 = load ptr, ptr %6, align 8, !tbaa !5
  %1103 = getelementptr inbounds %struct.instr, ptr %1102, i32 0, i32 2
  %1104 = getelementptr inbounds %struct.operand, ptr %1103, i32 0, i32 0
  store i32 4, ptr %1104, align 4, !tbaa !17
  %1105 = load i32, ptr %5, align 4, !tbaa !9
  %1106 = and i32 %1105, 1
  %1107 = load ptr, ptr %6, align 8, !tbaa !5
  %1108 = getelementptr inbounds %struct.instr, ptr %1107, i32 0, i32 2
  %1109 = getelementptr inbounds %struct.operand, ptr %1108, i32 0, i32 1
  store i32 %1106, ptr %1109, align 4, !tbaa !18
  %1110 = load ptr, ptr %6, align 8, !tbaa !5
  %1111 = getelementptr inbounds %struct.instr, ptr %1110, i32 0, i32 3
  %1112 = getelementptr inbounds %struct.operand, ptr %1111, i32 0, i32 0
  store i32 7, ptr %1112, align 4, !tbaa !19
  %1113 = load ptr, ptr %6, align 8, !tbaa !5
  %1114 = getelementptr inbounds %struct.instr, ptr %1113, i32 0, i32 4
  %1115 = getelementptr inbounds %struct.operand, ptr %1114, i32 0, i32 0
  store i32 6, ptr %1115, align 4, !tbaa !21
  %1116 = load ptr, ptr %6, align 8, !tbaa !5
  %1117 = getelementptr inbounds %struct.instr, ptr %1116, i32 0, i32 5
  store i32 4, ptr %1117, align 4, !tbaa !23
  br label %1151

1118:                                             ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  %1119 = load ptr, ptr %6, align 8, !tbaa !5
  %1120 = getelementptr inbounds %struct.instr, ptr %1119, i32 0, i32 0
  store i32 21, ptr %1120, align 4, !tbaa !11
  %1121 = load ptr, ptr %6, align 8, !tbaa !5
  %1122 = getelementptr inbounds %struct.instr, ptr %1121, i32 0, i32 1
  store i32 2, ptr %1122, align 4, !tbaa !16
  %1123 = load ptr, ptr %6, align 8, !tbaa !5
  %1124 = getelementptr inbounds %struct.instr, ptr %1123, i32 0, i32 2
  %1125 = getelementptr inbounds %struct.operand, ptr %1124, i32 0, i32 0
  store i32 2, ptr %1125, align 4, !tbaa !17
  %1126 = load i32, ptr %5, align 4, !tbaa !9
  %1127 = and i32 %1126, 7
  %1128 = load ptr, ptr %6, align 8, !tbaa !5
  %1129 = getelementptr inbounds %struct.instr, ptr %1128, i32 0, i32 2
  %1130 = getelementptr inbounds %struct.operand, ptr %1129, i32 0, i32 1
  store i32 %1127, ptr %1130, align 4, !tbaa !18
  %1131 = load ptr, ptr %6, align 8, !tbaa !5
  %1132 = getelementptr inbounds %struct.instr, ptr %1131, i32 0, i32 3
  %1133 = getelementptr inbounds %struct.operand, ptr %1132, i32 0, i32 0
  store i32 6, ptr %1133, align 4, !tbaa !19
  %1134 = load ptr, ptr %6, align 8, !tbaa !5
  %1135 = getelementptr inbounds %struct.instr, ptr %1134, i32 0, i32 5
  store i32 3, ptr %1135, align 4, !tbaa !23
  br label %1151

1136:                                             ; preds = %3
  %1137 = load ptr, ptr %6, align 8, !tbaa !5
  %1138 = getelementptr inbounds %struct.instr, ptr %1137, i32 0, i32 0
  store i32 21, ptr %1138, align 4, !tbaa !11
  %1139 = load ptr, ptr %6, align 8, !tbaa !5
  %1140 = getelementptr inbounds %struct.instr, ptr %1139, i32 0, i32 1
  store i32 2, ptr %1140, align 4, !tbaa !16
  %1141 = load ptr, ptr %6, align 8, !tbaa !5
  %1142 = getelementptr inbounds %struct.instr, ptr %1141, i32 0, i32 2
  %1143 = getelementptr inbounds %struct.operand, ptr %1142, i32 0, i32 0
  store i32 3, ptr %1143, align 4, !tbaa !17
  %1144 = load ptr, ptr %6, align 8, !tbaa !5
  %1145 = getelementptr inbounds %struct.instr, ptr %1144, i32 0, i32 3
  %1146 = getelementptr inbounds %struct.operand, ptr %1145, i32 0, i32 0
  store i32 6, ptr %1146, align 4, !tbaa !19
  %1147 = load ptr, ptr %6, align 8, !tbaa !5
  %1148 = getelementptr inbounds %struct.instr, ptr %1147, i32 0, i32 5
  store i32 4, ptr %1148, align 4, !tbaa !23
  br label %1151

1149:                                             ; preds = %3
  br label %1151

1150:                                             ; preds = %3
  br label %1151

1151:                                             ; preds = %1150, %1149, %1136, %1118, %1097, %1076, %1060, %1044, %1034, %1024, %1014, %998, %993, %983, %967, %946, %925, %907, %889, %871, %858, %840, %827, %809, %778, %760, %742, %729, %711, %698, %680, %667, %654, %641, %625, %609, %593, %572, %556, %535, %519, %503, %487, %466, %450, %429, %413, %397, %381, %360, %344, %323, %300, %287, %264, %251, %228, %215, %192, %179, %163, %142, %126, %105, %89, %68, %52, %31
  ret void
}

attributes #0 = { 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" }

!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 = !{!"int", !7, i64 0}
!11 = !{!12, !13, i64 0}
!12 = !{!"_ZTS5instr", !13, i64 0, !10, i64 4, !14, i64 8, !14, i64 16, !14, i64 24, !10, i64 32}
!13 = !{!"_ZTS10instr_type", !7, i64 0}
!14 = !{!"_ZTS7operand", !15, i64 0, !10, i64 4}
!15 = !{!"_ZTS7op_type", !7, i64 0}
!16 = !{!12, !10, i64 4}
!17 = !{!12, !15, i64 8}
!18 = !{!12, !10, i64 12}
!19 = !{!12, !15, i64 16}
!20 = !{!12, !10, i64 20}
!21 = !{!12, !15, i64 24}
!22 = !{!12, !10, i64 28}
!23 = !{!12, !10, i64 32}
!24 = !{!25, !10, i64 533048}
!25 = !{!"_ZTS11cycle_model", !26, i64 0, !47, i64 232, !6, i64 416, !6, i64 424, !6, i64 432, !6, i64 440, !6, i64 448, !6, i64 456, !6, i64 464, !6, i64 472, !6, i64 480, !6, i64 488, !6, i64 496, !6, i64 504, !7, i64 512, !7, i64 262656, !7, i64 524800, !10, i64 532992, !7, i64 532996, !6, i64 533032, !10, i64 533040, !10, i64 533044, !10, i64 533048}
!26 = !{!"_ZTSN7sc_core9sc_moduleE", !27, i64 0, !39, i64 112, !40, i64 120, !42, i64 144, !44, i64 168, !46, i64 192, !6, i64 200, !10, i64 208, !6, i64 216, !6, i64 224}
!27 = !{!"_ZTSN7sc_core9sc_objectE", !6, i64 8, !28, i64 16, !32, i64 40, !36, i64 64, !6, i64 96, !6, i64 104}
!28 = !{!"_ZTSSt6vectorIPN7sc_core8sc_eventESaIS2_EE", !29, i64 0}
!29 = !{!"_ZTSSt12_Vector_baseIPN7sc_core8sc_eventESaIS2_EE", !30, i64 0}
!30 = !{!"_ZTSNSt12_Vector_baseIPN7sc_core8sc_eventESaIS2_EE12_Vector_implE", !31, i64 0}
!31 = !{!"_ZTSNSt12_Vector_baseIPN7sc_core8sc_eventESaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!32 = !{!"_ZTSSt6vectorIPN7sc_core9sc_objectESaIS2_EE", !33, i64 0}
!33 = !{!"_ZTSSt12_Vector_baseIPN7sc_core9sc_objectESaIS2_EE", !34, i64 0}
!34 = !{!"_ZTSNSt12_Vector_baseIPN7sc_core9sc_objectESaIS2_EE12_Vector_implE", !35, i64 0}
!35 = !{!"_ZTSNSt12_Vector_baseIPN7sc_core9sc_objectESaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!36 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !37, i64 0, !38, i64 8, !7, i64 16}
!37 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !6, i64 0}
!38 = !{!"long", !7, i64 0}
!39 = !{!"_ZTSN7sc_core15sc_process_hostE"}
!40 = !{!"_ZTSN7sc_core12sc_sensitiveE", !6, i64 0, !41, i64 8, !6, i64 16}
!41 = !{!"_ZTSN7sc_core12sc_sensitiveUt_E", !7, i64 0}
!42 = !{!"_ZTSN7sc_core16sc_sensitive_posE", !6, i64 0, !43, i64 8, !6, i64 16}
!43 = !{!"_ZTSN7sc_core16sc_sensitive_posUt_E", !7, i64 0}
!44 = !{!"_ZTSN7sc_core16sc_sensitive_negE", !6, i64 0, !45, i64 8, !6, i64 16}
!45 = !{!"_ZTSN7sc_core16sc_sensitive_negUt_E", !7, i64 0}
!46 = !{!"bool", !7, i64 0}
!47 = !{!"_ZTSN7sc_core5sc_inIbEE", !48, i64 0, !6, i64 152, !6, i64 160, !6, i64 168, !6, i64 176}
!48 = !{!"_ZTSN7sc_core7sc_portINS_15sc_signal_in_ifIbEELi1ELNS_14sc_port_policyE0EEE", !49, i64 0}
!49 = !{!"_ZTSN7sc_core9sc_port_bINS_15sc_signal_in_ifIbEEEE", !50, i64 0, !6, i64 120, !51, i64 128}
!50 = !{!"_ZTSN7sc_core12sc_port_baseE", !27, i64 0, !6, i64 112}
!51 = !{!"_ZTSSt6vectorIPN7sc_core15sc_signal_in_ifIbEESaIS3_EE", !52, i64 0}
!52 = !{!"_ZTSSt12_Vector_baseIPN7sc_core15sc_signal_in_ifIbEESaIS3_EE", !53, i64 0}
!53 = !{!"_ZTSNSt12_Vector_baseIPN7sc_core15sc_signal_in_ifIbEESaIS3_EE12_Vector_implE", !54, i64 0}
!54 = !{!"_ZTSNSt12_Vector_baseIPN7sc_core15sc_signal_in_ifIbEESaIS3_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}


; 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"

; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(argmem: readwrite) uwtable
define dso_local void @_ZN11cycle_model6decodeEiP5instr(ptr nocapture noundef nonnull readonly align 8 dereferenceable(533052) %0, i32 noundef %1, ptr noundef writeonly %2) local_unnamed_addr #0 align 2 {
  %4 = getelementptr inbounds i8, ptr %2, i64 4
  %5 = getelementptr inbounds i8, ptr %2, i64 8
  %6 = getelementptr inbounds i8, ptr %2, i64 12
  store <4 x i32> <i32 22, i32 0, i32 0, i32 -1>, ptr %2, align 4, !tbaa !5
  %7 = getelementptr inbounds i8, ptr %2, i64 16
  %8 = getelementptr inbounds i8, ptr %2, i64 24
  %9 = getelementptr inbounds i8, ptr %2, i64 28
  store <4 x i32> <i32 0, i32 -1, i32 0, i32 -1>, ptr %7, align 4, !tbaa !5
  switch i32 %1, label %114 [
    i32 40, label %10
    i32 41, label %10
    i32 42, label %10
    i32 43, label %10
    i32 44, label %10
    i32 45, label %10
    i32 46, label %10
    i32 47, label %10
    i32 37, label %12
    i32 38, label %13
    i32 39, label %13
    i32 36, label %15
    i32 152, label %16
    i32 153, label %16
    i32 154, label %16
    i32 155, label %16
    i32 156, label %16
    i32 157, label %16
    i32 158, label %16
    i32 159, label %16
    i32 149, label %18
    i32 150, label %19
    i32 151, label %19
    i32 148, label %21
    i32 4, label %22
    i32 8, label %23
    i32 9, label %23
    i32 10, label %23
    i32 11, label %23
    i32 12, label %23
    i32 13, label %23
    i32 14, label %23
    i32 15, label %23
    i32 5, label %25
    i32 6, label %26
    i32 7, label %26
    i32 20, label %28
    i32 24, label %29
    i32 25, label %29
    i32 26, label %29
    i32 27, label %29
    i32 28, label %29
    i32 29, label %29
    i32 30, label %29
    i32 31, label %29
    i32 21, label %31
    i32 22, label %32
    i32 23, label %32
    i32 88, label %34
    i32 89, label %34
    i32 90, label %34
    i32 91, label %34
    i32 92, label %34
    i32 93, label %34
    i32 94, label %34
    i32 95, label %34
    i32 85, label %36
    i32 86, label %37
    i32 87, label %37
    i32 84, label %39
    i32 82, label %40
    i32 83, label %41
    i32 72, label %42
    i32 73, label %42
    i32 74, label %42
    i32 75, label %42
    i32 76, label %42
    i32 77, label %42
    i32 78, label %42
    i32 79, label %42
    i32 69, label %44
    i32 70, label %45
    i32 71, label %45
    i32 68, label %47
    i32 66, label %48
    i32 67, label %49
    i32 104, label %50
    i32 105, label %50
    i32 106, label %50
    i32 107, label %50
    i32 108, label %50
    i32 109, label %50
    i32 110, label %50
    i32 111, label %50
    i32 101, label %52
    i32 102, label %53
    i32 103, label %53
    i32 100, label %55
    i32 98, label %56
    i32 99, label %57
    i32 244, label %58
    i32 35, label %59
    i32 3, label %60
    i32 232, label %61
    i32 233, label %61
    i32 234, label %61
    i32 235, label %61
    i32 236, label %61
    i32 237, label %61
    i32 238, label %61
    i32 239, label %61
    i32 229, label %63
    i32 230, label %64
    i32 231, label %64
    i32 116, label %66
    i32 248, label %67
    i32 249, label %67
    i32 250, label %67
    i32 251, label %67
    i32 252, label %67
    i32 253, label %67
    i32 254, label %67
    i32 255, label %67
    i32 168, label %69
    i32 169, label %69
    i32 170, label %69
    i32 171, label %69
    i32 172, label %69
    i32 173, label %69
    i32 174, label %69
    i32 175, label %69
    i32 120, label %71
    i32 121, label %71
    i32 122, label %71
    i32 123, label %71
    i32 124, label %71
    i32 125, label %71
    i32 126, label %71
    i32 127, label %71
    i32 245, label %73
    i32 136, label %73
    i32 137, label %73
    i32 138, label %73
    i32 139, label %73
    i32 140, label %73
    i32 141, label %73
    i32 142, label %73
    i32 143, label %73
    i32 133, label %75
    i32 134, label %76
    i32 135, label %76
    i32 117, label %78
    i32 246, label %79
    i32 247, label %79
    i32 166, label %81
    i32 167, label %81
    i32 118, label %83
    i32 119, label %83
    i32 226, label %85
    i32 227, label %85
    i32 242, label %90
    i32 243, label %90
    i32 17, label %95
    i32 49, label %95
    i32 81, label %95
    i32 113, label %95
    i32 145, label %95
    i32 177, label %95
    i32 209, label %95
    i32 241, label %95
    i32 18, label %97
    i32 34, label %98
    i32 1, label %99
    i32 33, label %99
    i32 65, label %99
    i32 97, label %99
    i32 129, label %99
    i32 161, label %99
    i32 193, label %99
    i32 225, label %99
    i32 2, label %101
    i32 96, label %102
    i32 112, label %103
    i32 181, label %104
    i32 180, label %105
    i32 184, label %106
    i32 185, label %106
    i32 186, label %106
    i32 187, label %106
    i32 188, label %106
    i32 189, label %106
    i32 190, label %106
    i32 191, label %106
    i32 182, label %108
    i32 183, label %108
    i32 216, label %110
    i32 217, label %110
    i32 218, label %110
    i32 219, label %110
    i32 220, label %110
    i32 221, label %110
    i32 222, label %110
    i32 223, label %110
    i32 213, label %112
  ]

10:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 0, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 2, ptr %5, align 4, !tbaa !15
  %11 = and i32 %1, 7
  store i32 %11, ptr %6, align 4, !tbaa !16
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

12:                                               ; preds = %3
  store i32 0, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

13:                                               ; preds = %3, %3
  store i32 0, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 4, ptr %5, align 4, !tbaa !15
  %14 = and i32 %1, 1
  store i32 %14, ptr %6, align 4, !tbaa !16
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

15:                                               ; preds = %3
  store i32 0, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 7, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

16:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 1, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 2, ptr %5, align 4, !tbaa !15
  %17 = and i32 %1, 7
  store i32 %17, ptr %6, align 4, !tbaa !16
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

18:                                               ; preds = %3
  store i32 1, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

19:                                               ; preds = %3, %3
  store i32 1, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 4, ptr %5, align 4, !tbaa !15
  %20 = and i32 %1, 1
  store i32 %20, ptr %6, align 4, !tbaa !16
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

21:                                               ; preds = %3
  store i32 1, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 7, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

22:                                               ; preds = %3
  store i32 2, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 1, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

23:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 2, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 2, ptr %5, align 4, !tbaa !15
  %24 = and i32 %1, 7
  store i32 %24, ptr %6, align 4, !tbaa !16
  store i32 2, ptr %8, align 4, !tbaa !18
  store i32 %24, ptr %9, align 4, !tbaa !19
  br label %.sink.split

25:                                               ; preds = %3
  store i32 2, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 3, ptr %8, align 4, !tbaa !18
  br label %.sink.split

26:                                               ; preds = %3, %3
  store i32 2, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 4, ptr %5, align 4, !tbaa !15
  %27 = and i32 %1, 1
  store i32 %27, ptr %6, align 4, !tbaa !16
  store i32 4, ptr %8, align 4, !tbaa !18
  store i32 %27, ptr %9, align 4, !tbaa !19
  br label %.sink.split

28:                                               ; preds = %3
  store i32 3, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 1, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

29:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 3, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 2, ptr %5, align 4, !tbaa !15
  %30 = and i32 %1, 7
  store i32 %30, ptr %6, align 4, !tbaa !16
  store i32 2, ptr %8, align 4, !tbaa !18
  store i32 %30, ptr %9, align 4, !tbaa !19
  br label %.sink.split

31:                                               ; preds = %3
  store i32 3, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 3, ptr %8, align 4, !tbaa !18
  br label %.sink.split

32:                                               ; preds = %3, %3
  store i32 3, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 4, ptr %5, align 4, !tbaa !15
  %33 = and i32 %1, 1
  store i32 %33, ptr %6, align 4, !tbaa !16
  store i32 4, ptr %8, align 4, !tbaa !18
  store i32 %33, ptr %9, align 4, !tbaa !19
  br label %.sink.split

34:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 6, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 2, ptr %5, align 4, !tbaa !15
  %35 = and i32 %1, 7
  store i32 %35, ptr %6, align 4, !tbaa !16
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

36:                                               ; preds = %3
  store i32 6, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

37:                                               ; preds = %3, %3
  store i32 6, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 4, ptr %5, align 4, !tbaa !15
  %38 = and i32 %1, 1
  store i32 %38, ptr %6, align 4, !tbaa !16
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

39:                                               ; preds = %3
  store i32 6, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 7, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

40:                                               ; preds = %3
  store i32 6, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 3, ptr %8, align 4, !tbaa !18
  br label %.sink.split

41:                                               ; preds = %3
  store i32 6, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 7, ptr %7, align 4, !tbaa !17
  store i32 3, ptr %8, align 4, !tbaa !18
  br label %.sink.split

42:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 7, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 2, ptr %5, align 4, !tbaa !15
  %43 = and i32 %1, 7
  store i32 %43, ptr %6, align 4, !tbaa !16
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

44:                                               ; preds = %3
  store i32 7, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

45:                                               ; preds = %3, %3
  store i32 7, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 4, ptr %5, align 4, !tbaa !15
  %46 = and i32 %1, 1
  store i32 %46, ptr %6, align 4, !tbaa !16
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

47:                                               ; preds = %3
  store i32 7, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 7, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

48:                                               ; preds = %3
  store i32 7, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 3, ptr %8, align 4, !tbaa !18
  br label %.sink.split

49:                                               ; preds = %3
  store i32 7, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 7, ptr %7, align 4, !tbaa !17
  store i32 3, ptr %8, align 4, !tbaa !18
  br label %.sink.split

50:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 8, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 2, ptr %5, align 4, !tbaa !15
  %51 = and i32 %1, 7
  store i32 %51, ptr %6, align 4, !tbaa !16
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

52:                                               ; preds = %3
  store i32 8, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

53:                                               ; preds = %3, %3
  store i32 8, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 4, ptr %5, align 4, !tbaa !15
  %54 = and i32 %1, 1
  store i32 %54, ptr %6, align 4, !tbaa !16
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

55:                                               ; preds = %3
  store i32 8, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 7, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

56:                                               ; preds = %3
  store i32 8, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %7, align 4, !tbaa !17
  store i32 3, ptr %8, align 4, !tbaa !18
  br label %.sink.split

57:                                               ; preds = %3
  store i32 8, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 7, ptr %7, align 4, !tbaa !17
  store i32 3, ptr %8, align 4, !tbaa !18
  br label %.sink.split

58:                                               ; preds = %3
  store i32 10, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 1, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

59:                                               ; preds = %3
  store i32 11, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 1, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

60:                                               ; preds = %3
  store i32 12, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 1, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

61:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 2, ptr %5, align 4, !tbaa !15
  %62 = and i32 %1, 7
  store i32 %62, ptr %6, align 4, !tbaa !16
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

63:                                               ; preds = %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

64:                                               ; preds = %3, %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 4, ptr %5, align 4, !tbaa !15
  %65 = and i32 %1, 1
  store i32 %65, ptr %6, align 4, !tbaa !16
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

66:                                               ; preds = %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 7, ptr %5, align 4, !tbaa !15
  store i32 1, ptr %8, align 4, !tbaa !18
  br label %.sink.split

67:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 1, ptr %5, align 4, !tbaa !15
  store i32 2, ptr %8, align 4, !tbaa !18
  %68 = and i32 %1, 7
  store i32 %68, ptr %9, align 4, !tbaa !19
  br label %.sink.split

69:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 2, ptr %8, align 4, !tbaa !18
  %70 = and i32 %1, 7
  store i32 %70, ptr %9, align 4, !tbaa !19
  br label %.sink.split

71:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 7, ptr %5, align 4, !tbaa !15
  store i32 2, ptr %8, align 4, !tbaa !18
  %72 = and i32 %1, 7
  store i32 %72, ptr %9, align 4, !tbaa !19
  br label %.sink.split

73:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3, %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 2, ptr %5, align 4, !tbaa !15
  %74 = and i32 %1, 7
  store i32 %74, ptr %6, align 4, !tbaa !16
  store i32 3, ptr %8, align 4, !tbaa !18
  br label %.sink.split

75:                                               ; preds = %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 3, ptr %8, align 4, !tbaa !18
  br label %.sink.split

76:                                               ; preds = %3, %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 4, ptr %5, align 4, !tbaa !15
  %77 = and i32 %1, 1
  store i32 %77, ptr %6, align 4, !tbaa !16
  store i32 3, ptr %8, align 4, !tbaa !18
  br label %.sink.split

78:                                               ; preds = %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 7, ptr %5, align 4, !tbaa !15
  store i32 3, ptr %8, align 4, !tbaa !18
  br label %.sink.split

79:                                               ; preds = %3, %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 1, ptr %5, align 4, !tbaa !15
  store i32 4, ptr %8, align 4, !tbaa !18
  %80 = and i32 %1, 1
  store i32 %80, ptr %9, align 4, !tbaa !19
  br label %.sink.split

81:                                               ; preds = %3, %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 4, ptr %8, align 4, !tbaa !18
  %82 = and i32 %1, 1
  store i32 %82, ptr %9, align 4, !tbaa !19
  br label %.sink.split

83:                                               ; preds = %3, %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 7, ptr %5, align 4, !tbaa !15
  store i32 4, ptr %8, align 4, !tbaa !18
  %84 = and i32 %1, 1
  store i32 %84, ptr %9, align 4, !tbaa !19
  br label %.sink.split

85:                                               ; preds = %3, %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 5, ptr %5, align 4, !tbaa !15
  %86 = and i32 %1, 1
  store i32 %86, ptr %6, align 4, !tbaa !16
  store i32 1, ptr %8, align 4, !tbaa !18
  %87 = getelementptr inbounds i8, ptr %0, i64 533048
  %88 = load i32, ptr %87, align 8, !tbaa !20
  %89 = add nsw i32 %88, 2
  br label %.sink.split

90:                                               ; preds = %3, %3
  store i32 13, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 1, ptr %5, align 4, !tbaa !15
  store i32 5, ptr %8, align 4, !tbaa !18
  %91 = and i32 %1, 1
  store i32 %91, ptr %9, align 4, !tbaa !19
  %92 = getelementptr inbounds i8, ptr %0, i64 533048
  %93 = load i32, ptr %92, align 8, !tbaa !20
  %94 = add nsw i32 %93, 2
  br label %.sink.split

95:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 14, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 9, ptr %5, align 4, !tbaa !15
  %96 = lshr i32 %1, 5
  store i32 %96, ptr %6, align 4, !tbaa !16
  br label %.sink.split

97:                                               ; preds = %3
  store i32 14, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 10, ptr %5, align 4, !tbaa !15
  br label %.sink.split

98:                                               ; preds = %3
  store i32 15, ptr %2, align 4, !tbaa !8
  br label %.sink.split

99:                                               ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 16, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 9, ptr %5, align 4, !tbaa !15
  %100 = lshr i32 %1, 5
  store i32 %100, ptr %6, align 4, !tbaa !16
  br label %.sink.split

101:                                              ; preds = %3
  store i32 16, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 10, ptr %5, align 4, !tbaa !15
  br label %.sink.split

102:                                              ; preds = %3
  store i32 18, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 6, ptr %5, align 4, !tbaa !15
  br label %.sink.split

103:                                              ; preds = %3
  store i32 19, ptr %2, align 4, !tbaa !8
  store i32 1, ptr %4, align 4, !tbaa !14
  store i32 6, ptr %5, align 4, !tbaa !15
  br label %.sink.split

104:                                              ; preds = %3
  store i32 20, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 1, ptr %5, align 4, !tbaa !15
  store i32 3, ptr %7, align 4, !tbaa !17
  store i32 6, ptr %8, align 4, !tbaa !18
  br label %.sink.split

105:                                              ; preds = %3
  store i32 20, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 1, ptr %5, align 4, !tbaa !15
  store i32 7, ptr %7, align 4, !tbaa !17
  store i32 6, ptr %8, align 4, !tbaa !18
  br label %.sink.split

106:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 20, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 2, ptr %5, align 4, !tbaa !15
  %107 = and i32 %1, 7
  store i32 %107, ptr %6, align 4, !tbaa !16
  store i32 7, ptr %7, align 4, !tbaa !17
  store i32 6, ptr %8, align 4, !tbaa !18
  br label %.sink.split

108:                                              ; preds = %3, %3
  store i32 20, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 4, ptr %5, align 4, !tbaa !15
  %109 = and i32 %1, 1
  store i32 %109, ptr %6, align 4, !tbaa !16
  store i32 7, ptr %7, align 4, !tbaa !17
  store i32 6, ptr %8, align 4, !tbaa !18
  br label %.sink.split

110:                                              ; preds = %3, %3, %3, %3, %3, %3, %3, %3
  store i32 21, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 2, ptr %5, align 4, !tbaa !15
  %111 = and i32 %1, 7
  store i32 %111, ptr %6, align 4, !tbaa !16
  store i32 6, ptr %7, align 4, !tbaa !17
  br label %.sink.split

112:                                              ; preds = %3
  store i32 21, ptr %2, align 4, !tbaa !8
  store i32 2, ptr %4, align 4, !tbaa !14
  store i32 3, ptr %5, align 4, !tbaa !15
  store i32 6, ptr %7, align 4, !tbaa !17
  br label %.sink.split

.sink.split:                                      ; preds = %10, %12, %13, %15, %16, %18, %19, %21, %22, %23, %25, %26, %28, %29, %31, %32, %34, %36, %37, %39, %40, %41, %42, %44, %45, %47, %48, %49, %50, %52, %53, %55, %56, %57, %58, %59, %60, %61, %63, %64, %66, %67, %69, %71, %73, %75, %76, %78, %79, %81, %83, %85, %90, %95, %97, %98, %99, %101, %102, %103, %104, %105, %106, %108, %110, %112
  %.sink = phi i32 [ 4, %112 ], [ 3, %110 ], [ 4, %108 ], [ 4, %106 ], [ 4, %105 ], [ 4, %104 ], [ 3, %103 ], [ 3, %102 ], [ 4, %101 ], [ 3, %99 ], [ 4, %98 ], [ 4, %97 ], [ 3, %95 ], [ %94, %90 ], [ %89, %85 ], [ 2, %83 ], [ 2, %81 ], [ 1, %79 ], [ 2, %78 ], [ 2, %76 ], [ 3, %75 ], [ 2, %73 ], [ 2, %71 ], [ 2, %69 ], [ 1, %67 ], [ 2, %66 ], [ 1, %64 ], [ 2, %63 ], [ 1, %61 ], [ 1, %60 ], [ 1, %59 ], [ 1, %58 ], [ 3, %57 ], [ 2, %56 ], [ 2, %55 ], [ 1, %53 ], [ 2, %52 ], [ 1, %50 ], [ 3, %49 ], [ 2, %48 ], [ 2, %47 ], [ 1, %45 ], [ 2, %44 ], [ 1, %42 ], [ 3, %41 ], [ 2, %40 ], [ 2, %39 ], [ 1, %37 ], [ 2, %36 ], [ 1, %34 ], [ 1, %32 ], [ 2, %31 ], [ 1, %29 ], [ 1, %28 ], [ 1, %26 ], [ 2, %25 ], [ 1, %23 ], [ 1, %22 ], [ 2, %21 ], [ 1, %19 ], [ 2, %18 ], [ 1, %16 ], [ 2, %15 ], [ 1, %13 ], [ 2, %12 ], [ 1, %10 ]
  %113 = getelementptr inbounds i8, ptr %2, i64 32
  store i32 %.sink, ptr %113, align 4, !tbaa !52
  br label %114

114:                                              ; preds = %.sink.split, %3
  ret void
}

attributes #0 = { mustprogress nofree norecurse nosync nounwind willreturn memory(argmem: readwrite) 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" }

!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 = !{!"omnipotent char", !7, i64 0}
!7 = !{!"Simple C++ TBAA"}
!8 = !{!9, !10, i64 0}
!9 = !{!"_ZTS5instr", !10, i64 0, !11, i64 4, !12, i64 8, !12, i64 16, !12, i64 24, !11, i64 32}
!10 = !{!"_ZTS10instr_type", !6, i64 0}
!11 = !{!"int", !6, i64 0}
!12 = !{!"_ZTS7operand", !13, i64 0, !11, i64 4}
!13 = !{!"_ZTS7op_type", !6, i64 0}
!14 = !{!9, !11, i64 4}
!15 = !{!9, !13, i64 8}
!16 = !{!9, !11, i64 12}
!17 = !{!9, !13, i64 16}
!18 = !{!9, !13, i64 24}
!19 = !{!9, !11, i64 28}
!20 = !{!21, !11, i64 533048}
!21 = !{!"_ZTS11cycle_model", !22, i64 0, !44, i64 232, !24, i64 416, !24, i64 424, !24, i64 432, !24, i64 440, !24, i64 448, !24, i64 456, !24, i64 464, !24, i64 472, !24, i64 480, !24, i64 488, !24, i64 496, !24, i64 504, !6, i64 512, !6, i64 262656, !6, i64 524800, !11, i64 532992, !6, i64 532996, !24, i64 533032, !11, i64 533040, !11, i64 533044, !11, i64 533048}
!22 = !{!"_ZTSN7sc_core9sc_moduleE", !23, i64 0, !36, i64 112, !37, i64 120, !39, i64 144, !41, i64 168, !43, i64 192, !24, i64 200, !11, i64 208, !24, i64 216, !24, i64 224}
!23 = !{!"_ZTSN7sc_core9sc_objectE", !24, i64 8, !25, i64 16, !29, i64 40, !33, i64 64, !24, i64 96, !24, i64 104}
!24 = !{!"any pointer", !6, i64 0}
!25 = !{!"_ZTSSt6vectorIPN7sc_core8sc_eventESaIS2_EE", !26, i64 0}
!26 = !{!"_ZTSSt12_Vector_baseIPN7sc_core8sc_eventESaIS2_EE", !27, i64 0}
!27 = !{!"_ZTSNSt12_Vector_baseIPN7sc_core8sc_eventESaIS2_EE12_Vector_implE", !28, i64 0}
!28 = !{!"_ZTSNSt12_Vector_baseIPN7sc_core8sc_eventESaIS2_EE17_Vector_impl_dataE", !24, i64 0, !24, i64 8, !24, i64 16}
!29 = !{!"_ZTSSt6vectorIPN7sc_core9sc_objectESaIS2_EE", !30, i64 0}
!30 = !{!"_ZTSSt12_Vector_baseIPN7sc_core9sc_objectESaIS2_EE", !31, i64 0}
!31 = !{!"_ZTSNSt12_Vector_baseIPN7sc_core9sc_objectESaIS2_EE12_Vector_implE", !32, i64 0}
!32 = !{!"_ZTSNSt12_Vector_baseIPN7sc_core9sc_objectESaIS2_EE17_Vector_impl_dataE", !24, i64 0, !24, i64 8, !24, i64 16}
!33 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !34, i64 0, !35, i64 8, !6, i64 16}
!34 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !24, i64 0}
!35 = !{!"long", !6, i64 0}
!36 = !{!"_ZTSN7sc_core15sc_process_hostE"}
!37 = !{!"_ZTSN7sc_core12sc_sensitiveE", !24, i64 0, !38, i64 8, !24, i64 16}
!38 = !{!"_ZTSN7sc_core12sc_sensitiveUt_E", !6, i64 0}
!39 = !{!"_ZTSN7sc_core16sc_sensitive_posE", !24, i64 0, !40, i64 8, !24, i64 16}
!40 = !{!"_ZTSN7sc_core16sc_sensitive_posUt_E", !6, i64 0}
!41 = !{!"_ZTSN7sc_core16sc_sensitive_negE", !24, i64 0, !42, i64 8, !24, i64 16}
!42 = !{!"_ZTSN7sc_core16sc_sensitive_negUt_E", !6, i64 0}
!43 = !{!"bool", !6, i64 0}
!44 = !{!"_ZTSN7sc_core5sc_inIbEE", !45, i64 0, !24, i64 152, !24, i64 160, !24, i64 168, !24, i64 176}
!45 = !{!"_ZTSN7sc_core7sc_portINS_15sc_signal_in_ifIbEELi1ELNS_14sc_port_policyE0EEE", !46, i64 0}
!46 = !{!"_ZTSN7sc_core9sc_port_bINS_15sc_signal_in_ifIbEEEE", !47, i64 0, !24, i64 120, !48, i64 128}
!47 = !{!"_ZTSN7sc_core12sc_port_baseE", !23, i64 0, !24, i64 112}
!48 = !{!"_ZTSSt6vectorIPN7sc_core15sc_signal_in_ifIbEESaIS3_EE", !49, i64 0}
!49 = !{!"_ZTSSt12_Vector_baseIPN7sc_core15sc_signal_in_ifIbEESaIS3_EE", !50, i64 0}
!50 = !{!"_ZTSNSt12_Vector_baseIPN7sc_core15sc_signal_in_ifIbEESaIS3_EE12_Vector_implE", !51, i64 0}
!51 = !{!"_ZTSNSt12_Vector_baseIPN7sc_core15sc_signal_in_ifIbEESaIS3_EE17_Vector_impl_dataE", !24, i64 0, !24, i64 8, !24, i64 16}
!52 = !{!9, !11, i64 32}


; Effective O3 passes: CorrelatedValuePropagationPass,DSEPass,EarlyCSEPass,GlobalOptPass,InstCombinePass,PostOrderFunctionAttrsPass,SLPVectorizerPass,SROAPass,SimplifyCFGPass