; LLVM IR from cruppstahl/upscaledb :: 3rdparty/simdcomp/src (simdintegratedbitpacking)

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

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #0

; Function Attrs: alwaysinline nounwind uwtable
declare hidden void @_mm_storeu_si128(ptr noundef, <2 x i64> noundef) #1

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #0

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_loadu_si128(ptr noundef) #1

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_or_si128(<2 x i64> noundef, <2 x i64> noundef) #1

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_slli_epi32(<2 x i64> noundef, i32 noundef) #1

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_set1_epi32(i32 noundef) #1

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_and_si128(<2 x i64> noundef, <2 x i64> noundef) #1

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_srli_epi32(<2 x i64> noundef, i32 noundef) #1

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_add_epi32(<2 x i64> noundef, <2 x i64> noundef) #1

; Function Attrs: nounwind uwtable
define dso_local <2 x i64> @iunpack7(<2 x i64> noundef %0, ptr noundef %1, ptr noundef %2) #2 {
  %4 = alloca <2 x i64>, align 16
  %5 = alloca ptr, align 8
  %6 = alloca ptr, align 8
  %7 = alloca ptr, align 8
  %8 = alloca <2 x i64>, align 16
  %9 = alloca <2 x i64>, align 16
  %10 = alloca <2 x i64>, align 16
  %11 = alloca <2 x i64>, align 16
  %12 = alloca <2 x i64>, align 16
  %13 = alloca <2 x i64>, align 16
  %14 = alloca <2 x i64>, align 16
  %15 = alloca <2 x i64>, align 16
  %16 = alloca <2 x i64>, align 16
  %17 = alloca <2 x i64>, align 16
  %18 = alloca <2 x i64>, align 16
  %19 = alloca <2 x i64>, align 16
  %20 = alloca <2 x i64>, align 16
  %21 = alloca <2 x i64>, align 16
  %22 = alloca <2 x i64>, align 16
  %23 = alloca <2 x i64>, align 16
  %24 = alloca <2 x i64>, align 16
  %25 = alloca <2 x i64>, align 16
  %26 = alloca <2 x i64>, align 16
  %27 = alloca <2 x i64>, align 16
  %28 = alloca <2 x i64>, align 16
  %29 = alloca <2 x i64>, align 16
  %30 = alloca <2 x i64>, align 16
  %31 = alloca <2 x i64>, align 16
  %32 = alloca <2 x i64>, align 16
  %33 = alloca <2 x i64>, align 16
  %34 = alloca <2 x i64>, align 16
  %35 = alloca <2 x i64>, align 16
  %36 = alloca <2 x i64>, align 16
  %37 = alloca <2 x i64>, align 16
  %38 = alloca <2 x i64>, align 16
  %39 = alloca <2 x i64>, align 16
  %40 = alloca <2 x i64>, align 16
  %41 = alloca <2 x i64>, align 16
  %42 = alloca <2 x i64>, align 16
  %43 = alloca <2 x i64>, align 16
  %44 = alloca <2 x i64>, align 16
  %45 = alloca <2 x i64>, align 16
  %46 = alloca <2 x i64>, align 16
  %47 = alloca <2 x i64>, align 16
  %48 = alloca <2 x i64>, align 16
  %49 = alloca <2 x i64>, align 16
  %50 = alloca <2 x i64>, align 16
  %51 = alloca <2 x i64>, align 16
  %52 = alloca <2 x i64>, align 16
  %53 = alloca <2 x i64>, align 16
  %54 = alloca <2 x i64>, align 16
  %55 = alloca <2 x i64>, align 16
  %56 = alloca <2 x i64>, align 16
  %57 = alloca <2 x i64>, align 16
  %58 = alloca <2 x i64>, align 16
  %59 = alloca <2 x i64>, align 16
  %60 = alloca <2 x i64>, align 16
  %61 = alloca <2 x i64>, align 16
  %62 = alloca <2 x i64>, align 16
  %63 = alloca <2 x i64>, align 16
  %64 = alloca <2 x i64>, align 16
  %65 = alloca <2 x i64>, align 16
  %66 = alloca <2 x i64>, align 16
  %67 = alloca <2 x i64>, align 16
  %68 = alloca <2 x i64>, align 16
  %69 = alloca <2 x i64>, align 16
  %70 = alloca <2 x i64>, align 16
  %71 = alloca <2 x i64>, align 16
  %72 = alloca <2 x i64>, align 16
  %73 = alloca <2 x i64>, align 16
  %74 = alloca <2 x i64>, align 16
  %75 = alloca <2 x i64>, align 16
  store <2 x i64> %0, ptr %4, align 16, !tbaa !5
  store ptr %1, ptr %5, align 8, !tbaa !8
  store ptr %2, ptr %6, align 8, !tbaa !8
  call void @llvm.lifetime.start.p0(i64 8, ptr %7) #3
  %76 = load ptr, ptr %6, align 8, !tbaa !8
  store ptr %76, ptr %7, align 8, !tbaa !8
  call void @llvm.lifetime.start.p0(i64 16, ptr %8) #3
  %77 = load ptr, ptr %5, align 8, !tbaa !8
  %78 = call <2 x i64> @_mm_loadu_si128(ptr noundef %77)
  store <2 x i64> %78, ptr %8, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %9) #3
  call void @llvm.lifetime.start.p0(i64 16, ptr %10) #3
  call void @llvm.lifetime.start.p0(i64 16, ptr %11) #3
  %79 = call <2 x i64> @_mm_set1_epi32(i32 noundef 127)
  store <2 x i64> %79, ptr %11, align 16, !tbaa !5
  %80 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  store <2 x i64> %80, ptr %10, align 16, !tbaa !5
  %81 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %82 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %83 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %81, <2 x i64> noundef %82)
  store <2 x i64> %83, ptr %9, align 16, !tbaa !5
  br label %84

84:                                               ; preds = %3
  call void @llvm.lifetime.start.p0(i64 16, ptr %12) #3
  %85 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %86 = bitcast <2 x i64> %85 to <16 x i8>
  %87 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %86, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %88 = bitcast <16 x i8> %87 to <2 x i64>
  %89 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %90 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %88, <2 x i64> noundef %89)
  store <2 x i64> %90, ptr %12, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %13) #3
  %91 = load <2 x i64>, ptr %12, align 16, !tbaa !5
  %92 = bitcast <2 x i64> %91 to <16 x i8>
  %93 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %92, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %94 = bitcast <16 x i8> %93 to <2 x i64>
  %95 = load <2 x i64>, ptr %12, align 16, !tbaa !5
  %96 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %94, <2 x i64> noundef %95)
  store <2 x i64> %96, ptr %13, align 16, !tbaa !5
  %97 = load <2 x i64>, ptr %13, align 16, !tbaa !5
  %98 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %99 = bitcast <2 x i64> %98 to <4 x i32>
  %100 = shufflevector <4 x i32> %99, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %101 = bitcast <4 x i32> %100 to <2 x i64>
  %102 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %97, <2 x i64> noundef %101)
  store <2 x i64> %102, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %13) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %12) #3
  br label %103

103:                                              ; preds = %84
  br label %104

104:                                              ; preds = %103
  %105 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %105, ptr %4, align 16, !tbaa !5
  %106 = load ptr, ptr %7, align 8, !tbaa !8
  %107 = getelementptr inbounds <2 x i64>, ptr %106, i32 1
  store ptr %107, ptr %7, align 8, !tbaa !8
  %108 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %106, <2 x i64> noundef %108)
  %109 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %110 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %109, i32 noundef 7)
  store <2 x i64> %110, ptr %10, align 16, !tbaa !5
  %111 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %112 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %113 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %111, <2 x i64> noundef %112)
  store <2 x i64> %113, ptr %9, align 16, !tbaa !5
  br label %114

114:                                              ; preds = %104
  call void @llvm.lifetime.start.p0(i64 16, ptr %14) #3
  %115 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %116 = bitcast <2 x i64> %115 to <16 x i8>
  %117 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %116, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %118 = bitcast <16 x i8> %117 to <2 x i64>
  %119 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %120 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %118, <2 x i64> noundef %119)
  store <2 x i64> %120, ptr %14, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %15) #3
  %121 = load <2 x i64>, ptr %14, align 16, !tbaa !5
  %122 = bitcast <2 x i64> %121 to <16 x i8>
  %123 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %122, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %124 = bitcast <16 x i8> %123 to <2 x i64>
  %125 = load <2 x i64>, ptr %14, align 16, !tbaa !5
  %126 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %124, <2 x i64> noundef %125)
  store <2 x i64> %126, ptr %15, align 16, !tbaa !5
  %127 = load <2 x i64>, ptr %15, align 16, !tbaa !5
  %128 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %129 = bitcast <2 x i64> %128 to <4 x i32>
  %130 = shufflevector <4 x i32> %129, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %131 = bitcast <4 x i32> %130 to <2 x i64>
  %132 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %127, <2 x i64> noundef %131)
  store <2 x i64> %132, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %15) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %14) #3
  br label %133

133:                                              ; preds = %114
  br label %134

134:                                              ; preds = %133
  %135 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %135, ptr %4, align 16, !tbaa !5
  %136 = load ptr, ptr %7, align 8, !tbaa !8
  %137 = getelementptr inbounds <2 x i64>, ptr %136, i32 1
  store ptr %137, ptr %7, align 8, !tbaa !8
  %138 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %136, <2 x i64> noundef %138)
  %139 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %140 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %139, i32 noundef 14)
  store <2 x i64> %140, ptr %10, align 16, !tbaa !5
  %141 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %142 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %143 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %141, <2 x i64> noundef %142)
  store <2 x i64> %143, ptr %9, align 16, !tbaa !5
  br label %144

144:                                              ; preds = %134
  call void @llvm.lifetime.start.p0(i64 16, ptr %16) #3
  %145 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %146 = bitcast <2 x i64> %145 to <16 x i8>
  %147 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %146, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %148 = bitcast <16 x i8> %147 to <2 x i64>
  %149 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %150 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %148, <2 x i64> noundef %149)
  store <2 x i64> %150, ptr %16, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %17) #3
  %151 = load <2 x i64>, ptr %16, align 16, !tbaa !5
  %152 = bitcast <2 x i64> %151 to <16 x i8>
  %153 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %152, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %154 = bitcast <16 x i8> %153 to <2 x i64>
  %155 = load <2 x i64>, ptr %16, align 16, !tbaa !5
  %156 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %154, <2 x i64> noundef %155)
  store <2 x i64> %156, ptr %17, align 16, !tbaa !5
  %157 = load <2 x i64>, ptr %17, align 16, !tbaa !5
  %158 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %159 = bitcast <2 x i64> %158 to <4 x i32>
  %160 = shufflevector <4 x i32> %159, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %161 = bitcast <4 x i32> %160 to <2 x i64>
  %162 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %157, <2 x i64> noundef %161)
  store <2 x i64> %162, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %17) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %16) #3
  br label %163

163:                                              ; preds = %144
  br label %164

164:                                              ; preds = %163
  %165 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %165, ptr %4, align 16, !tbaa !5
  %166 = load ptr, ptr %7, align 8, !tbaa !8
  %167 = getelementptr inbounds <2 x i64>, ptr %166, i32 1
  store ptr %167, ptr %7, align 8, !tbaa !8
  %168 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %166, <2 x i64> noundef %168)
  %169 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %170 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %169, i32 noundef 21)
  store <2 x i64> %170, ptr %10, align 16, !tbaa !5
  %171 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %172 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %173 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %171, <2 x i64> noundef %172)
  store <2 x i64> %173, ptr %9, align 16, !tbaa !5
  br label %174

174:                                              ; preds = %164
  call void @llvm.lifetime.start.p0(i64 16, ptr %18) #3
  %175 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %176 = bitcast <2 x i64> %175 to <16 x i8>
  %177 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %176, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %178 = bitcast <16 x i8> %177 to <2 x i64>
  %179 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %180 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %178, <2 x i64> noundef %179)
  store <2 x i64> %180, ptr %18, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %19) #3
  %181 = load <2 x i64>, ptr %18, align 16, !tbaa !5
  %182 = bitcast <2 x i64> %181 to <16 x i8>
  %183 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %182, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %184 = bitcast <16 x i8> %183 to <2 x i64>
  %185 = load <2 x i64>, ptr %18, align 16, !tbaa !5
  %186 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %184, <2 x i64> noundef %185)
  store <2 x i64> %186, ptr %19, align 16, !tbaa !5
  %187 = load <2 x i64>, ptr %19, align 16, !tbaa !5
  %188 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %189 = bitcast <2 x i64> %188 to <4 x i32>
  %190 = shufflevector <4 x i32> %189, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %191 = bitcast <4 x i32> %190 to <2 x i64>
  %192 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %187, <2 x i64> noundef %191)
  store <2 x i64> %192, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %19) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %18) #3
  br label %193

193:                                              ; preds = %174
  br label %194

194:                                              ; preds = %193
  %195 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %195, ptr %4, align 16, !tbaa !5
  %196 = load ptr, ptr %7, align 8, !tbaa !8
  %197 = getelementptr inbounds <2 x i64>, ptr %196, i32 1
  store ptr %197, ptr %7, align 8, !tbaa !8
  %198 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %196, <2 x i64> noundef %198)
  %199 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %200 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %199, i32 noundef 28)
  store <2 x i64> %200, ptr %10, align 16, !tbaa !5
  %201 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %201, ptr %9, align 16, !tbaa !5
  %202 = load ptr, ptr %5, align 8, !tbaa !8
  %203 = getelementptr inbounds <2 x i64>, ptr %202, i32 1
  store ptr %203, ptr %5, align 8, !tbaa !8
  %204 = load ptr, ptr %5, align 8, !tbaa !8
  %205 = call <2 x i64> @_mm_loadu_si128(ptr noundef %204)
  store <2 x i64> %205, ptr %8, align 16, !tbaa !5
  %206 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %207 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %208 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %207, i32 noundef 4)
  %209 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %210 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %208, <2 x i64> noundef %209)
  %211 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %206, <2 x i64> noundef %210)
  store <2 x i64> %211, ptr %9, align 16, !tbaa !5
  br label %212

212:                                              ; preds = %194
  call void @llvm.lifetime.start.p0(i64 16, ptr %20) #3
  %213 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %214 = bitcast <2 x i64> %213 to <16 x i8>
  %215 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %214, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %216 = bitcast <16 x i8> %215 to <2 x i64>
  %217 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %218 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %216, <2 x i64> noundef %217)
  store <2 x i64> %218, ptr %20, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %21) #3
  %219 = load <2 x i64>, ptr %20, align 16, !tbaa !5
  %220 = bitcast <2 x i64> %219 to <16 x i8>
  %221 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %220, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %222 = bitcast <16 x i8> %221 to <2 x i64>
  %223 = load <2 x i64>, ptr %20, align 16, !tbaa !5
  %224 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %222, <2 x i64> noundef %223)
  store <2 x i64> %224, ptr %21, align 16, !tbaa !5
  %225 = load <2 x i64>, ptr %21, align 16, !tbaa !5
  %226 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %227 = bitcast <2 x i64> %226 to <4 x i32>
  %228 = shufflevector <4 x i32> %227, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %229 = bitcast <4 x i32> %228 to <2 x i64>
  %230 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %225, <2 x i64> noundef %229)
  store <2 x i64> %230, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %21) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %20) #3
  br label %231

231:                                              ; preds = %212
  br label %232

232:                                              ; preds = %231
  %233 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %233, ptr %4, align 16, !tbaa !5
  %234 = load ptr, ptr %7, align 8, !tbaa !8
  %235 = getelementptr inbounds <2 x i64>, ptr %234, i32 1
  store ptr %235, ptr %7, align 8, !tbaa !8
  %236 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %234, <2 x i64> noundef %236)
  %237 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %238 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %237, i32 noundef 3)
  store <2 x i64> %238, ptr %10, align 16, !tbaa !5
  %239 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %240 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %241 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %239, <2 x i64> noundef %240)
  store <2 x i64> %241, ptr %9, align 16, !tbaa !5
  br label %242

242:                                              ; preds = %232
  call void @llvm.lifetime.start.p0(i64 16, ptr %22) #3
  %243 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %244 = bitcast <2 x i64> %243 to <16 x i8>
  %245 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %244, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %246 = bitcast <16 x i8> %245 to <2 x i64>
  %247 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %248 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %246, <2 x i64> noundef %247)
  store <2 x i64> %248, ptr %22, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %23) #3
  %249 = load <2 x i64>, ptr %22, align 16, !tbaa !5
  %250 = bitcast <2 x i64> %249 to <16 x i8>
  %251 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %250, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %252 = bitcast <16 x i8> %251 to <2 x i64>
  %253 = load <2 x i64>, ptr %22, align 16, !tbaa !5
  %254 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %252, <2 x i64> noundef %253)
  store <2 x i64> %254, ptr %23, align 16, !tbaa !5
  %255 = load <2 x i64>, ptr %23, align 16, !tbaa !5
  %256 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %257 = bitcast <2 x i64> %256 to <4 x i32>
  %258 = shufflevector <4 x i32> %257, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %259 = bitcast <4 x i32> %258 to <2 x i64>
  %260 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %255, <2 x i64> noundef %259)
  store <2 x i64> %260, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %23) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %22) #3
  br label %261

261:                                              ; preds = %242
  br label %262

262:                                              ; preds = %261
  %263 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %263, ptr %4, align 16, !tbaa !5
  %264 = load ptr, ptr %7, align 8, !tbaa !8
  %265 = getelementptr inbounds <2 x i64>, ptr %264, i32 1
  store ptr %265, ptr %7, align 8, !tbaa !8
  %266 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %264, <2 x i64> noundef %266)
  %267 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %268 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %267, i32 noundef 10)
  store <2 x i64> %268, ptr %10, align 16, !tbaa !5
  %269 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %270 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %271 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %269, <2 x i64> noundef %270)
  store <2 x i64> %271, ptr %9, align 16, !tbaa !5
  br label %272

272:                                              ; preds = %262
  call void @llvm.lifetime.start.p0(i64 16, ptr %24) #3
  %273 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %274 = bitcast <2 x i64> %273 to <16 x i8>
  %275 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %274, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %276 = bitcast <16 x i8> %275 to <2 x i64>
  %277 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %278 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %276, <2 x i64> noundef %277)
  store <2 x i64> %278, ptr %24, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %25) #3
  %279 = load <2 x i64>, ptr %24, align 16, !tbaa !5
  %280 = bitcast <2 x i64> %279 to <16 x i8>
  %281 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %280, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %282 = bitcast <16 x i8> %281 to <2 x i64>
  %283 = load <2 x i64>, ptr %24, align 16, !tbaa !5
  %284 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %282, <2 x i64> noundef %283)
  store <2 x i64> %284, ptr %25, align 16, !tbaa !5
  %285 = load <2 x i64>, ptr %25, align 16, !tbaa !5
  %286 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %287 = bitcast <2 x i64> %286 to <4 x i32>
  %288 = shufflevector <4 x i32> %287, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %289 = bitcast <4 x i32> %288 to <2 x i64>
  %290 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %285, <2 x i64> noundef %289)
  store <2 x i64> %290, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %25) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %24) #3
  br label %291

291:                                              ; preds = %272
  br label %292

292:                                              ; preds = %291
  %293 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %293, ptr %4, align 16, !tbaa !5
  %294 = load ptr, ptr %7, align 8, !tbaa !8
  %295 = getelementptr inbounds <2 x i64>, ptr %294, i32 1
  store ptr %295, ptr %7, align 8, !tbaa !8
  %296 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %294, <2 x i64> noundef %296)
  %297 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %298 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %297, i32 noundef 17)
  store <2 x i64> %298, ptr %10, align 16, !tbaa !5
  %299 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %300 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %301 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %299, <2 x i64> noundef %300)
  store <2 x i64> %301, ptr %9, align 16, !tbaa !5
  br label %302

302:                                              ; preds = %292
  call void @llvm.lifetime.start.p0(i64 16, ptr %26) #3
  %303 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %304 = bitcast <2 x i64> %303 to <16 x i8>
  %305 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %304, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %306 = bitcast <16 x i8> %305 to <2 x i64>
  %307 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %308 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %306, <2 x i64> noundef %307)
  store <2 x i64> %308, ptr %26, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %27) #3
  %309 = load <2 x i64>, ptr %26, align 16, !tbaa !5
  %310 = bitcast <2 x i64> %309 to <16 x i8>
  %311 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %310, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %312 = bitcast <16 x i8> %311 to <2 x i64>
  %313 = load <2 x i64>, ptr %26, align 16, !tbaa !5
  %314 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %312, <2 x i64> noundef %313)
  store <2 x i64> %314, ptr %27, align 16, !tbaa !5
  %315 = load <2 x i64>, ptr %27, align 16, !tbaa !5
  %316 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %317 = bitcast <2 x i64> %316 to <4 x i32>
  %318 = shufflevector <4 x i32> %317, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %319 = bitcast <4 x i32> %318 to <2 x i64>
  %320 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %315, <2 x i64> noundef %319)
  store <2 x i64> %320, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %27) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %26) #3
  br label %321

321:                                              ; preds = %302
  br label %322

322:                                              ; preds = %321
  %323 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %323, ptr %4, align 16, !tbaa !5
  %324 = load ptr, ptr %7, align 8, !tbaa !8
  %325 = getelementptr inbounds <2 x i64>, ptr %324, i32 1
  store ptr %325, ptr %7, align 8, !tbaa !8
  %326 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %324, <2 x i64> noundef %326)
  %327 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %328 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %327, i32 noundef 24)
  store <2 x i64> %328, ptr %10, align 16, !tbaa !5
  %329 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %330 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %331 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %329, <2 x i64> noundef %330)
  store <2 x i64> %331, ptr %9, align 16, !tbaa !5
  br label %332

332:                                              ; preds = %322
  call void @llvm.lifetime.start.p0(i64 16, ptr %28) #3
  %333 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %334 = bitcast <2 x i64> %333 to <16 x i8>
  %335 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %334, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %336 = bitcast <16 x i8> %335 to <2 x i64>
  %337 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %338 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %336, <2 x i64> noundef %337)
  store <2 x i64> %338, ptr %28, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %29) #3
  %339 = load <2 x i64>, ptr %28, align 16, !tbaa !5
  %340 = bitcast <2 x i64> %339 to <16 x i8>
  %341 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %340, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %342 = bitcast <16 x i8> %341 to <2 x i64>
  %343 = load <2 x i64>, ptr %28, align 16, !tbaa !5
  %344 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %342, <2 x i64> noundef %343)
  store <2 x i64> %344, ptr %29, align 16, !tbaa !5
  %345 = load <2 x i64>, ptr %29, align 16, !tbaa !5
  %346 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %347 = bitcast <2 x i64> %346 to <4 x i32>
  %348 = shufflevector <4 x i32> %347, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %349 = bitcast <4 x i32> %348 to <2 x i64>
  %350 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %345, <2 x i64> noundef %349)
  store <2 x i64> %350, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %29) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %28) #3
  br label %351

351:                                              ; preds = %332
  br label %352

352:                                              ; preds = %351
  %353 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %353, ptr %4, align 16, !tbaa !5
  %354 = load ptr, ptr %7, align 8, !tbaa !8
  %355 = getelementptr inbounds <2 x i64>, ptr %354, i32 1
  store ptr %355, ptr %7, align 8, !tbaa !8
  %356 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %354, <2 x i64> noundef %356)
  %357 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %358 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %357, i32 noundef 31)
  store <2 x i64> %358, ptr %10, align 16, !tbaa !5
  %359 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %359, ptr %9, align 16, !tbaa !5
  %360 = load ptr, ptr %5, align 8, !tbaa !8
  %361 = getelementptr inbounds <2 x i64>, ptr %360, i32 1
  store ptr %361, ptr %5, align 8, !tbaa !8
  %362 = load ptr, ptr %5, align 8, !tbaa !8
  %363 = call <2 x i64> @_mm_loadu_si128(ptr noundef %362)
  store <2 x i64> %363, ptr %8, align 16, !tbaa !5
  %364 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %365 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %366 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %365, i32 noundef 1)
  %367 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %368 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %366, <2 x i64> noundef %367)
  %369 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %364, <2 x i64> noundef %368)
  store <2 x i64> %369, ptr %9, align 16, !tbaa !5
  br label %370

370:                                              ; preds = %352
  call void @llvm.lifetime.start.p0(i64 16, ptr %30) #3
  %371 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %372 = bitcast <2 x i64> %371 to <16 x i8>
  %373 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %372, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %374 = bitcast <16 x i8> %373 to <2 x i64>
  %375 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %376 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %374, <2 x i64> noundef %375)
  store <2 x i64> %376, ptr %30, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %31) #3
  %377 = load <2 x i64>, ptr %30, align 16, !tbaa !5
  %378 = bitcast <2 x i64> %377 to <16 x i8>
  %379 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %378, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %380 = bitcast <16 x i8> %379 to <2 x i64>
  %381 = load <2 x i64>, ptr %30, align 16, !tbaa !5
  %382 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %380, <2 x i64> noundef %381)
  store <2 x i64> %382, ptr %31, align 16, !tbaa !5
  %383 = load <2 x i64>, ptr %31, align 16, !tbaa !5
  %384 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %385 = bitcast <2 x i64> %384 to <4 x i32>
  %386 = shufflevector <4 x i32> %385, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %387 = bitcast <4 x i32> %386 to <2 x i64>
  %388 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %383, <2 x i64> noundef %387)
  store <2 x i64> %388, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %31) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %30) #3
  br label %389

389:                                              ; preds = %370
  br label %390

390:                                              ; preds = %389
  %391 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %391, ptr %4, align 16, !tbaa !5
  %392 = load ptr, ptr %7, align 8, !tbaa !8
  %393 = getelementptr inbounds <2 x i64>, ptr %392, i32 1
  store ptr %393, ptr %7, align 8, !tbaa !8
  %394 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %392, <2 x i64> noundef %394)
  %395 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %396 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %395, i32 noundef 6)
  store <2 x i64> %396, ptr %10, align 16, !tbaa !5
  %397 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %398 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %399 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %397, <2 x i64> noundef %398)
  store <2 x i64> %399, ptr %9, align 16, !tbaa !5
  br label %400

400:                                              ; preds = %390
  call void @llvm.lifetime.start.p0(i64 16, ptr %32) #3
  %401 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %402 = bitcast <2 x i64> %401 to <16 x i8>
  %403 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %402, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %404 = bitcast <16 x i8> %403 to <2 x i64>
  %405 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %406 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %404, <2 x i64> noundef %405)
  store <2 x i64> %406, ptr %32, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %33) #3
  %407 = load <2 x i64>, ptr %32, align 16, !tbaa !5
  %408 = bitcast <2 x i64> %407 to <16 x i8>
  %409 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %408, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %410 = bitcast <16 x i8> %409 to <2 x i64>
  %411 = load <2 x i64>, ptr %32, align 16, !tbaa !5
  %412 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %410, <2 x i64> noundef %411)
  store <2 x i64> %412, ptr %33, align 16, !tbaa !5
  %413 = load <2 x i64>, ptr %33, align 16, !tbaa !5
  %414 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %415 = bitcast <2 x i64> %414 to <4 x i32>
  %416 = shufflevector <4 x i32> %415, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %417 = bitcast <4 x i32> %416 to <2 x i64>
  %418 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %413, <2 x i64> noundef %417)
  store <2 x i64> %418, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %33) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %32) #3
  br label %419

419:                                              ; preds = %400
  br label %420

420:                                              ; preds = %419
  %421 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %421, ptr %4, align 16, !tbaa !5
  %422 = load ptr, ptr %7, align 8, !tbaa !8
  %423 = getelementptr inbounds <2 x i64>, ptr %422, i32 1
  store ptr %423, ptr %7, align 8, !tbaa !8
  %424 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %422, <2 x i64> noundef %424)
  %425 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %426 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %425, i32 noundef 13)
  store <2 x i64> %426, ptr %10, align 16, !tbaa !5
  %427 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %428 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %429 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %427, <2 x i64> noundef %428)
  store <2 x i64> %429, ptr %9, align 16, !tbaa !5
  br label %430

430:                                              ; preds = %420
  call void @llvm.lifetime.start.p0(i64 16, ptr %34) #3
  %431 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %432 = bitcast <2 x i64> %431 to <16 x i8>
  %433 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %432, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %434 = bitcast <16 x i8> %433 to <2 x i64>
  %435 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %436 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %434, <2 x i64> noundef %435)
  store <2 x i64> %436, ptr %34, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %35) #3
  %437 = load <2 x i64>, ptr %34, align 16, !tbaa !5
  %438 = bitcast <2 x i64> %437 to <16 x i8>
  %439 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %438, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %440 = bitcast <16 x i8> %439 to <2 x i64>
  %441 = load <2 x i64>, ptr %34, align 16, !tbaa !5
  %442 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %440, <2 x i64> noundef %441)
  store <2 x i64> %442, ptr %35, align 16, !tbaa !5
  %443 = load <2 x i64>, ptr %35, align 16, !tbaa !5
  %444 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %445 = bitcast <2 x i64> %444 to <4 x i32>
  %446 = shufflevector <4 x i32> %445, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %447 = bitcast <4 x i32> %446 to <2 x i64>
  %448 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %443, <2 x i64> noundef %447)
  store <2 x i64> %448, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %35) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %34) #3
  br label %449

449:                                              ; preds = %430
  br label %450

450:                                              ; preds = %449
  %451 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %451, ptr %4, align 16, !tbaa !5
  %452 = load ptr, ptr %7, align 8, !tbaa !8
  %453 = getelementptr inbounds <2 x i64>, ptr %452, i32 1
  store ptr %453, ptr %7, align 8, !tbaa !8
  %454 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %452, <2 x i64> noundef %454)
  %455 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %456 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %455, i32 noundef 20)
  store <2 x i64> %456, ptr %10, align 16, !tbaa !5
  %457 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %458 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %459 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %457, <2 x i64> noundef %458)
  store <2 x i64> %459, ptr %9, align 16, !tbaa !5
  br label %460

460:                                              ; preds = %450
  call void @llvm.lifetime.start.p0(i64 16, ptr %36) #3
  %461 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %462 = bitcast <2 x i64> %461 to <16 x i8>
  %463 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %462, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %464 = bitcast <16 x i8> %463 to <2 x i64>
  %465 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %466 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %464, <2 x i64> noundef %465)
  store <2 x i64> %466, ptr %36, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %37) #3
  %467 = load <2 x i64>, ptr %36, align 16, !tbaa !5
  %468 = bitcast <2 x i64> %467 to <16 x i8>
  %469 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %468, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %470 = bitcast <16 x i8> %469 to <2 x i64>
  %471 = load <2 x i64>, ptr %36, align 16, !tbaa !5
  %472 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %470, <2 x i64> noundef %471)
  store <2 x i64> %472, ptr %37, align 16, !tbaa !5
  %473 = load <2 x i64>, ptr %37, align 16, !tbaa !5
  %474 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %475 = bitcast <2 x i64> %474 to <4 x i32>
  %476 = shufflevector <4 x i32> %475, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %477 = bitcast <4 x i32> %476 to <2 x i64>
  %478 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %473, <2 x i64> noundef %477)
  store <2 x i64> %478, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %37) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %36) #3
  br label %479

479:                                              ; preds = %460
  br label %480

480:                                              ; preds = %479
  %481 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %481, ptr %4, align 16, !tbaa !5
  %482 = load ptr, ptr %7, align 8, !tbaa !8
  %483 = getelementptr inbounds <2 x i64>, ptr %482, i32 1
  store ptr %483, ptr %7, align 8, !tbaa !8
  %484 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %482, <2 x i64> noundef %484)
  %485 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %486 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %485, i32 noundef 27)
  store <2 x i64> %486, ptr %10, align 16, !tbaa !5
  %487 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %487, ptr %9, align 16, !tbaa !5
  %488 = load ptr, ptr %5, align 8, !tbaa !8
  %489 = getelementptr inbounds <2 x i64>, ptr %488, i32 1
  store ptr %489, ptr %5, align 8, !tbaa !8
  %490 = load ptr, ptr %5, align 8, !tbaa !8
  %491 = call <2 x i64> @_mm_loadu_si128(ptr noundef %490)
  store <2 x i64> %491, ptr %8, align 16, !tbaa !5
  %492 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %493 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %494 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %493, i32 noundef 5)
  %495 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %496 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %494, <2 x i64> noundef %495)
  %497 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %492, <2 x i64> noundef %496)
  store <2 x i64> %497, ptr %9, align 16, !tbaa !5
  br label %498

498:                                              ; preds = %480
  call void @llvm.lifetime.start.p0(i64 16, ptr %38) #3
  %499 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %500 = bitcast <2 x i64> %499 to <16 x i8>
  %501 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %500, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %502 = bitcast <16 x i8> %501 to <2 x i64>
  %503 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %504 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %502, <2 x i64> noundef %503)
  store <2 x i64> %504, ptr %38, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %39) #3
  %505 = load <2 x i64>, ptr %38, align 16, !tbaa !5
  %506 = bitcast <2 x i64> %505 to <16 x i8>
  %507 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %506, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %508 = bitcast <16 x i8> %507 to <2 x i64>
  %509 = load <2 x i64>, ptr %38, align 16, !tbaa !5
  %510 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %508, <2 x i64> noundef %509)
  store <2 x i64> %510, ptr %39, align 16, !tbaa !5
  %511 = load <2 x i64>, ptr %39, align 16, !tbaa !5
  %512 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %513 = bitcast <2 x i64> %512 to <4 x i32>
  %514 = shufflevector <4 x i32> %513, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %515 = bitcast <4 x i32> %514 to <2 x i64>
  %516 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %511, <2 x i64> noundef %515)
  store <2 x i64> %516, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %39) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %38) #3
  br label %517

517:                                              ; preds = %498
  br label %518

518:                                              ; preds = %517
  %519 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %519, ptr %4, align 16, !tbaa !5
  %520 = load ptr, ptr %7, align 8, !tbaa !8
  %521 = getelementptr inbounds <2 x i64>, ptr %520, i32 1
  store ptr %521, ptr %7, align 8, !tbaa !8
  %522 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %520, <2 x i64> noundef %522)
  %523 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %524 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %523, i32 noundef 2)
  store <2 x i64> %524, ptr %10, align 16, !tbaa !5
  %525 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %526 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %527 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %525, <2 x i64> noundef %526)
  store <2 x i64> %527, ptr %9, align 16, !tbaa !5
  br label %528

528:                                              ; preds = %518
  call void @llvm.lifetime.start.p0(i64 16, ptr %40) #3
  %529 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %530 = bitcast <2 x i64> %529 to <16 x i8>
  %531 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %530, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %532 = bitcast <16 x i8> %531 to <2 x i64>
  %533 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %534 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %532, <2 x i64> noundef %533)
  store <2 x i64> %534, ptr %40, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %41) #3
  %535 = load <2 x i64>, ptr %40, align 16, !tbaa !5
  %536 = bitcast <2 x i64> %535 to <16 x i8>
  %537 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %536, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %538 = bitcast <16 x i8> %537 to <2 x i64>
  %539 = load <2 x i64>, ptr %40, align 16, !tbaa !5
  %540 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %538, <2 x i64> noundef %539)
  store <2 x i64> %540, ptr %41, align 16, !tbaa !5
  %541 = load <2 x i64>, ptr %41, align 16, !tbaa !5
  %542 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %543 = bitcast <2 x i64> %542 to <4 x i32>
  %544 = shufflevector <4 x i32> %543, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %545 = bitcast <4 x i32> %544 to <2 x i64>
  %546 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %541, <2 x i64> noundef %545)
  store <2 x i64> %546, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %41) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %40) #3
  br label %547

547:                                              ; preds = %528
  br label %548

548:                                              ; preds = %547
  %549 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %549, ptr %4, align 16, !tbaa !5
  %550 = load ptr, ptr %7, align 8, !tbaa !8
  %551 = getelementptr inbounds <2 x i64>, ptr %550, i32 1
  store ptr %551, ptr %7, align 8, !tbaa !8
  %552 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %550, <2 x i64> noundef %552)
  %553 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %554 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %553, i32 noundef 9)
  store <2 x i64> %554, ptr %10, align 16, !tbaa !5
  %555 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %556 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %557 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %555, <2 x i64> noundef %556)
  store <2 x i64> %557, ptr %9, align 16, !tbaa !5
  br label %558

558:                                              ; preds = %548
  call void @llvm.lifetime.start.p0(i64 16, ptr %42) #3
  %559 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %560 = bitcast <2 x i64> %559 to <16 x i8>
  %561 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %560, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %562 = bitcast <16 x i8> %561 to <2 x i64>
  %563 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %564 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %562, <2 x i64> noundef %563)
  store <2 x i64> %564, ptr %42, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %43) #3
  %565 = load <2 x i64>, ptr %42, align 16, !tbaa !5
  %566 = bitcast <2 x i64> %565 to <16 x i8>
  %567 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %566, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %568 = bitcast <16 x i8> %567 to <2 x i64>
  %569 = load <2 x i64>, ptr %42, align 16, !tbaa !5
  %570 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %568, <2 x i64> noundef %569)
  store <2 x i64> %570, ptr %43, align 16, !tbaa !5
  %571 = load <2 x i64>, ptr %43, align 16, !tbaa !5
  %572 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %573 = bitcast <2 x i64> %572 to <4 x i32>
  %574 = shufflevector <4 x i32> %573, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %575 = bitcast <4 x i32> %574 to <2 x i64>
  %576 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %571, <2 x i64> noundef %575)
  store <2 x i64> %576, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %43) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %42) #3
  br label %577

577:                                              ; preds = %558
  br label %578

578:                                              ; preds = %577
  %579 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %579, ptr %4, align 16, !tbaa !5
  %580 = load ptr, ptr %7, align 8, !tbaa !8
  %581 = getelementptr inbounds <2 x i64>, ptr %580, i32 1
  store ptr %581, ptr %7, align 8, !tbaa !8
  %582 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %580, <2 x i64> noundef %582)
  %583 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %584 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %583, i32 noundef 16)
  store <2 x i64> %584, ptr %10, align 16, !tbaa !5
  %585 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %586 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %587 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %585, <2 x i64> noundef %586)
  store <2 x i64> %587, ptr %9, align 16, !tbaa !5
  br label %588

588:                                              ; preds = %578
  call void @llvm.lifetime.start.p0(i64 16, ptr %44) #3
  %589 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %590 = bitcast <2 x i64> %589 to <16 x i8>
  %591 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %590, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %592 = bitcast <16 x i8> %591 to <2 x i64>
  %593 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %594 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %592, <2 x i64> noundef %593)
  store <2 x i64> %594, ptr %44, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %45) #3
  %595 = load <2 x i64>, ptr %44, align 16, !tbaa !5
  %596 = bitcast <2 x i64> %595 to <16 x i8>
  %597 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %596, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %598 = bitcast <16 x i8> %597 to <2 x i64>
  %599 = load <2 x i64>, ptr %44, align 16, !tbaa !5
  %600 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %598, <2 x i64> noundef %599)
  store <2 x i64> %600, ptr %45, align 16, !tbaa !5
  %601 = load <2 x i64>, ptr %45, align 16, !tbaa !5
  %602 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %603 = bitcast <2 x i64> %602 to <4 x i32>
  %604 = shufflevector <4 x i32> %603, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %605 = bitcast <4 x i32> %604 to <2 x i64>
  %606 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %601, <2 x i64> noundef %605)
  store <2 x i64> %606, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %45) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %44) #3
  br label %607

607:                                              ; preds = %588
  br label %608

608:                                              ; preds = %607
  %609 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %609, ptr %4, align 16, !tbaa !5
  %610 = load ptr, ptr %7, align 8, !tbaa !8
  %611 = getelementptr inbounds <2 x i64>, ptr %610, i32 1
  store ptr %611, ptr %7, align 8, !tbaa !8
  %612 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %610, <2 x i64> noundef %612)
  %613 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %614 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %613, i32 noundef 23)
  store <2 x i64> %614, ptr %10, align 16, !tbaa !5
  %615 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %616 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %617 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %615, <2 x i64> noundef %616)
  store <2 x i64> %617, ptr %9, align 16, !tbaa !5
  br label %618

618:                                              ; preds = %608
  call void @llvm.lifetime.start.p0(i64 16, ptr %46) #3
  %619 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %620 = bitcast <2 x i64> %619 to <16 x i8>
  %621 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %620, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %622 = bitcast <16 x i8> %621 to <2 x i64>
  %623 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %624 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %622, <2 x i64> noundef %623)
  store <2 x i64> %624, ptr %46, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %47) #3
  %625 = load <2 x i64>, ptr %46, align 16, !tbaa !5
  %626 = bitcast <2 x i64> %625 to <16 x i8>
  %627 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %626, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %628 = bitcast <16 x i8> %627 to <2 x i64>
  %629 = load <2 x i64>, ptr %46, align 16, !tbaa !5
  %630 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %628, <2 x i64> noundef %629)
  store <2 x i64> %630, ptr %47, align 16, !tbaa !5
  %631 = load <2 x i64>, ptr %47, align 16, !tbaa !5
  %632 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %633 = bitcast <2 x i64> %632 to <4 x i32>
  %634 = shufflevector <4 x i32> %633, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %635 = bitcast <4 x i32> %634 to <2 x i64>
  %636 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %631, <2 x i64> noundef %635)
  store <2 x i64> %636, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %47) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %46) #3
  br label %637

637:                                              ; preds = %618
  br label %638

638:                                              ; preds = %637
  %639 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %639, ptr %4, align 16, !tbaa !5
  %640 = load ptr, ptr %7, align 8, !tbaa !8
  %641 = getelementptr inbounds <2 x i64>, ptr %640, i32 1
  store ptr %641, ptr %7, align 8, !tbaa !8
  %642 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %640, <2 x i64> noundef %642)
  %643 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %644 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %643, i32 noundef 30)
  store <2 x i64> %644, ptr %10, align 16, !tbaa !5
  %645 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %645, ptr %9, align 16, !tbaa !5
  %646 = load ptr, ptr %5, align 8, !tbaa !8
  %647 = getelementptr inbounds <2 x i64>, ptr %646, i32 1
  store ptr %647, ptr %5, align 8, !tbaa !8
  %648 = load ptr, ptr %5, align 8, !tbaa !8
  %649 = call <2 x i64> @_mm_loadu_si128(ptr noundef %648)
  store <2 x i64> %649, ptr %8, align 16, !tbaa !5
  %650 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %651 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %652 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %651, i32 noundef 2)
  %653 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %654 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %652, <2 x i64> noundef %653)
  %655 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %650, <2 x i64> noundef %654)
  store <2 x i64> %655, ptr %9, align 16, !tbaa !5
  br label %656

656:                                              ; preds = %638
  call void @llvm.lifetime.start.p0(i64 16, ptr %48) #3
  %657 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %658 = bitcast <2 x i64> %657 to <16 x i8>
  %659 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %658, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %660 = bitcast <16 x i8> %659 to <2 x i64>
  %661 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %662 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %660, <2 x i64> noundef %661)
  store <2 x i64> %662, ptr %48, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %49) #3
  %663 = load <2 x i64>, ptr %48, align 16, !tbaa !5
  %664 = bitcast <2 x i64> %663 to <16 x i8>
  %665 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %664, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %666 = bitcast <16 x i8> %665 to <2 x i64>
  %667 = load <2 x i64>, ptr %48, align 16, !tbaa !5
  %668 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %666, <2 x i64> noundef %667)
  store <2 x i64> %668, ptr %49, align 16, !tbaa !5
  %669 = load <2 x i64>, ptr %49, align 16, !tbaa !5
  %670 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %671 = bitcast <2 x i64> %670 to <4 x i32>
  %672 = shufflevector <4 x i32> %671, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %673 = bitcast <4 x i32> %672 to <2 x i64>
  %674 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %669, <2 x i64> noundef %673)
  store <2 x i64> %674, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %49) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %48) #3
  br label %675

675:                                              ; preds = %656
  br label %676

676:                                              ; preds = %675
  %677 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %677, ptr %4, align 16, !tbaa !5
  %678 = load ptr, ptr %7, align 8, !tbaa !8
  %679 = getelementptr inbounds <2 x i64>, ptr %678, i32 1
  store ptr %679, ptr %7, align 8, !tbaa !8
  %680 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %678, <2 x i64> noundef %680)
  %681 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %682 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %681, i32 noundef 5)
  store <2 x i64> %682, ptr %10, align 16, !tbaa !5
  %683 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %684 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %685 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %683, <2 x i64> noundef %684)
  store <2 x i64> %685, ptr %9, align 16, !tbaa !5
  br label %686

686:                                              ; preds = %676
  call void @llvm.lifetime.start.p0(i64 16, ptr %50) #3
  %687 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %688 = bitcast <2 x i64> %687 to <16 x i8>
  %689 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %688, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %690 = bitcast <16 x i8> %689 to <2 x i64>
  %691 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %692 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %690, <2 x i64> noundef %691)
  store <2 x i64> %692, ptr %50, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %51) #3
  %693 = load <2 x i64>, ptr %50, align 16, !tbaa !5
  %694 = bitcast <2 x i64> %693 to <16 x i8>
  %695 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %694, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %696 = bitcast <16 x i8> %695 to <2 x i64>
  %697 = load <2 x i64>, ptr %50, align 16, !tbaa !5
  %698 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %696, <2 x i64> noundef %697)
  store <2 x i64> %698, ptr %51, align 16, !tbaa !5
  %699 = load <2 x i64>, ptr %51, align 16, !tbaa !5
  %700 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %701 = bitcast <2 x i64> %700 to <4 x i32>
  %702 = shufflevector <4 x i32> %701, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %703 = bitcast <4 x i32> %702 to <2 x i64>
  %704 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %699, <2 x i64> noundef %703)
  store <2 x i64> %704, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %51) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %50) #3
  br label %705

705:                                              ; preds = %686
  br label %706

706:                                              ; preds = %705
  %707 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %707, ptr %4, align 16, !tbaa !5
  %708 = load ptr, ptr %7, align 8, !tbaa !8
  %709 = getelementptr inbounds <2 x i64>, ptr %708, i32 1
  store ptr %709, ptr %7, align 8, !tbaa !8
  %710 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %708, <2 x i64> noundef %710)
  %711 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %712 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %711, i32 noundef 12)
  store <2 x i64> %712, ptr %10, align 16, !tbaa !5
  %713 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %714 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %715 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %713, <2 x i64> noundef %714)
  store <2 x i64> %715, ptr %9, align 16, !tbaa !5
  br label %716

716:                                              ; preds = %706
  call void @llvm.lifetime.start.p0(i64 16, ptr %52) #3
  %717 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %718 = bitcast <2 x i64> %717 to <16 x i8>
  %719 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %718, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %720 = bitcast <16 x i8> %719 to <2 x i64>
  %721 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %722 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %720, <2 x i64> noundef %721)
  store <2 x i64> %722, ptr %52, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %53) #3
  %723 = load <2 x i64>, ptr %52, align 16, !tbaa !5
  %724 = bitcast <2 x i64> %723 to <16 x i8>
  %725 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %724, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %726 = bitcast <16 x i8> %725 to <2 x i64>
  %727 = load <2 x i64>, ptr %52, align 16, !tbaa !5
  %728 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %726, <2 x i64> noundef %727)
  store <2 x i64> %728, ptr %53, align 16, !tbaa !5
  %729 = load <2 x i64>, ptr %53, align 16, !tbaa !5
  %730 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %731 = bitcast <2 x i64> %730 to <4 x i32>
  %732 = shufflevector <4 x i32> %731, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %733 = bitcast <4 x i32> %732 to <2 x i64>
  %734 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %729, <2 x i64> noundef %733)
  store <2 x i64> %734, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %53) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %52) #3
  br label %735

735:                                              ; preds = %716
  br label %736

736:                                              ; preds = %735
  %737 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %737, ptr %4, align 16, !tbaa !5
  %738 = load ptr, ptr %7, align 8, !tbaa !8
  %739 = getelementptr inbounds <2 x i64>, ptr %738, i32 1
  store ptr %739, ptr %7, align 8, !tbaa !8
  %740 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %738, <2 x i64> noundef %740)
  %741 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %742 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %741, i32 noundef 19)
  store <2 x i64> %742, ptr %10, align 16, !tbaa !5
  %743 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %744 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %745 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %743, <2 x i64> noundef %744)
  store <2 x i64> %745, ptr %9, align 16, !tbaa !5
  br label %746

746:                                              ; preds = %736
  call void @llvm.lifetime.start.p0(i64 16, ptr %54) #3
  %747 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %748 = bitcast <2 x i64> %747 to <16 x i8>
  %749 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %748, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %750 = bitcast <16 x i8> %749 to <2 x i64>
  %751 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %752 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %750, <2 x i64> noundef %751)
  store <2 x i64> %752, ptr %54, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %55) #3
  %753 = load <2 x i64>, ptr %54, align 16, !tbaa !5
  %754 = bitcast <2 x i64> %753 to <16 x i8>
  %755 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %754, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %756 = bitcast <16 x i8> %755 to <2 x i64>
  %757 = load <2 x i64>, ptr %54, align 16, !tbaa !5
  %758 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %756, <2 x i64> noundef %757)
  store <2 x i64> %758, ptr %55, align 16, !tbaa !5
  %759 = load <2 x i64>, ptr %55, align 16, !tbaa !5
  %760 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %761 = bitcast <2 x i64> %760 to <4 x i32>
  %762 = shufflevector <4 x i32> %761, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %763 = bitcast <4 x i32> %762 to <2 x i64>
  %764 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %759, <2 x i64> noundef %763)
  store <2 x i64> %764, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %55) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %54) #3
  br label %765

765:                                              ; preds = %746
  br label %766

766:                                              ; preds = %765
  %767 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %767, ptr %4, align 16, !tbaa !5
  %768 = load ptr, ptr %7, align 8, !tbaa !8
  %769 = getelementptr inbounds <2 x i64>, ptr %768, i32 1
  store ptr %769, ptr %7, align 8, !tbaa !8
  %770 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %768, <2 x i64> noundef %770)
  %771 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %772 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %771, i32 noundef 26)
  store <2 x i64> %772, ptr %10, align 16, !tbaa !5
  %773 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %773, ptr %9, align 16, !tbaa !5
  %774 = load ptr, ptr %5, align 8, !tbaa !8
  %775 = getelementptr inbounds <2 x i64>, ptr %774, i32 1
  store ptr %775, ptr %5, align 8, !tbaa !8
  %776 = load ptr, ptr %5, align 8, !tbaa !8
  %777 = call <2 x i64> @_mm_loadu_si128(ptr noundef %776)
  store <2 x i64> %777, ptr %8, align 16, !tbaa !5
  %778 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %779 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %780 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %779, i32 noundef 6)
  %781 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %782 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %780, <2 x i64> noundef %781)
  %783 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %778, <2 x i64> noundef %782)
  store <2 x i64> %783, ptr %9, align 16, !tbaa !5
  br label %784

784:                                              ; preds = %766
  call void @llvm.lifetime.start.p0(i64 16, ptr %56) #3
  %785 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %786 = bitcast <2 x i64> %785 to <16 x i8>
  %787 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %786, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %788 = bitcast <16 x i8> %787 to <2 x i64>
  %789 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %790 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %788, <2 x i64> noundef %789)
  store <2 x i64> %790, ptr %56, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %57) #3
  %791 = load <2 x i64>, ptr %56, align 16, !tbaa !5
  %792 = bitcast <2 x i64> %791 to <16 x i8>
  %793 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %792, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %794 = bitcast <16 x i8> %793 to <2 x i64>
  %795 = load <2 x i64>, ptr %56, align 16, !tbaa !5
  %796 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %794, <2 x i64> noundef %795)
  store <2 x i64> %796, ptr %57, align 16, !tbaa !5
  %797 = load <2 x i64>, ptr %57, align 16, !tbaa !5
  %798 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %799 = bitcast <2 x i64> %798 to <4 x i32>
  %800 = shufflevector <4 x i32> %799, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %801 = bitcast <4 x i32> %800 to <2 x i64>
  %802 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %797, <2 x i64> noundef %801)
  store <2 x i64> %802, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %57) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %56) #3
  br label %803

803:                                              ; preds = %784
  br label %804

804:                                              ; preds = %803
  %805 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %805, ptr %4, align 16, !tbaa !5
  %806 = load ptr, ptr %7, align 8, !tbaa !8
  %807 = getelementptr inbounds <2 x i64>, ptr %806, i32 1
  store ptr %807, ptr %7, align 8, !tbaa !8
  %808 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %806, <2 x i64> noundef %808)
  %809 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %810 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %809, i32 noundef 1)
  store <2 x i64> %810, ptr %10, align 16, !tbaa !5
  %811 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %812 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %813 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %811, <2 x i64> noundef %812)
  store <2 x i64> %813, ptr %9, align 16, !tbaa !5
  br label %814

814:                                              ; preds = %804
  call void @llvm.lifetime.start.p0(i64 16, ptr %58) #3
  %815 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %816 = bitcast <2 x i64> %815 to <16 x i8>
  %817 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %816, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %818 = bitcast <16 x i8> %817 to <2 x i64>
  %819 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %820 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %818, <2 x i64> noundef %819)
  store <2 x i64> %820, ptr %58, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %59) #3
  %821 = load <2 x i64>, ptr %58, align 16, !tbaa !5
  %822 = bitcast <2 x i64> %821 to <16 x i8>
  %823 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %822, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %824 = bitcast <16 x i8> %823 to <2 x i64>
  %825 = load <2 x i64>, ptr %58, align 16, !tbaa !5
  %826 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %824, <2 x i64> noundef %825)
  store <2 x i64> %826, ptr %59, align 16, !tbaa !5
  %827 = load <2 x i64>, ptr %59, align 16, !tbaa !5
  %828 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %829 = bitcast <2 x i64> %828 to <4 x i32>
  %830 = shufflevector <4 x i32> %829, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %831 = bitcast <4 x i32> %830 to <2 x i64>
  %832 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %827, <2 x i64> noundef %831)
  store <2 x i64> %832, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %59) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %58) #3
  br label %833

833:                                              ; preds = %814
  br label %834

834:                                              ; preds = %833
  %835 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %835, ptr %4, align 16, !tbaa !5
  %836 = load ptr, ptr %7, align 8, !tbaa !8
  %837 = getelementptr inbounds <2 x i64>, ptr %836, i32 1
  store ptr %837, ptr %7, align 8, !tbaa !8
  %838 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %836, <2 x i64> noundef %838)
  %839 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %840 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %839, i32 noundef 8)
  store <2 x i64> %840, ptr %10, align 16, !tbaa !5
  %841 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %842 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %843 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %841, <2 x i64> noundef %842)
  store <2 x i64> %843, ptr %9, align 16, !tbaa !5
  br label %844

844:                                              ; preds = %834
  call void @llvm.lifetime.start.p0(i64 16, ptr %60) #3
  %845 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %846 = bitcast <2 x i64> %845 to <16 x i8>
  %847 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %846, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %848 = bitcast <16 x i8> %847 to <2 x i64>
  %849 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %850 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %848, <2 x i64> noundef %849)
  store <2 x i64> %850, ptr %60, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %61) #3
  %851 = load <2 x i64>, ptr %60, align 16, !tbaa !5
  %852 = bitcast <2 x i64> %851 to <16 x i8>
  %853 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %852, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %854 = bitcast <16 x i8> %853 to <2 x i64>
  %855 = load <2 x i64>, ptr %60, align 16, !tbaa !5
  %856 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %854, <2 x i64> noundef %855)
  store <2 x i64> %856, ptr %61, align 16, !tbaa !5
  %857 = load <2 x i64>, ptr %61, align 16, !tbaa !5
  %858 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %859 = bitcast <2 x i64> %858 to <4 x i32>
  %860 = shufflevector <4 x i32> %859, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %861 = bitcast <4 x i32> %860 to <2 x i64>
  %862 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %857, <2 x i64> noundef %861)
  store <2 x i64> %862, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %61) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %60) #3
  br label %863

863:                                              ; preds = %844
  br label %864

864:                                              ; preds = %863
  %865 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %865, ptr %4, align 16, !tbaa !5
  %866 = load ptr, ptr %7, align 8, !tbaa !8
  %867 = getelementptr inbounds <2 x i64>, ptr %866, i32 1
  store ptr %867, ptr %7, align 8, !tbaa !8
  %868 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %866, <2 x i64> noundef %868)
  %869 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %870 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %869, i32 noundef 15)
  store <2 x i64> %870, ptr %10, align 16, !tbaa !5
  %871 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %872 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %873 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %871, <2 x i64> noundef %872)
  store <2 x i64> %873, ptr %9, align 16, !tbaa !5
  br label %874

874:                                              ; preds = %864
  call void @llvm.lifetime.start.p0(i64 16, ptr %62) #3
  %875 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %876 = bitcast <2 x i64> %875 to <16 x i8>
  %877 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %876, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %878 = bitcast <16 x i8> %877 to <2 x i64>
  %879 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %880 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %878, <2 x i64> noundef %879)
  store <2 x i64> %880, ptr %62, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %63) #3
  %881 = load <2 x i64>, ptr %62, align 16, !tbaa !5
  %882 = bitcast <2 x i64> %881 to <16 x i8>
  %883 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %882, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %884 = bitcast <16 x i8> %883 to <2 x i64>
  %885 = load <2 x i64>, ptr %62, align 16, !tbaa !5
  %886 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %884, <2 x i64> noundef %885)
  store <2 x i64> %886, ptr %63, align 16, !tbaa !5
  %887 = load <2 x i64>, ptr %63, align 16, !tbaa !5
  %888 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %889 = bitcast <2 x i64> %888 to <4 x i32>
  %890 = shufflevector <4 x i32> %889, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %891 = bitcast <4 x i32> %890 to <2 x i64>
  %892 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %887, <2 x i64> noundef %891)
  store <2 x i64> %892, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %63) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %62) #3
  br label %893

893:                                              ; preds = %874
  br label %894

894:                                              ; preds = %893
  %895 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %895, ptr %4, align 16, !tbaa !5
  %896 = load ptr, ptr %7, align 8, !tbaa !8
  %897 = getelementptr inbounds <2 x i64>, ptr %896, i32 1
  store ptr %897, ptr %7, align 8, !tbaa !8
  %898 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %896, <2 x i64> noundef %898)
  %899 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %900 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %899, i32 noundef 22)
  store <2 x i64> %900, ptr %10, align 16, !tbaa !5
  %901 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %902 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %903 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %901, <2 x i64> noundef %902)
  store <2 x i64> %903, ptr %9, align 16, !tbaa !5
  br label %904

904:                                              ; preds = %894
  call void @llvm.lifetime.start.p0(i64 16, ptr %64) #3
  %905 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %906 = bitcast <2 x i64> %905 to <16 x i8>
  %907 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %906, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %908 = bitcast <16 x i8> %907 to <2 x i64>
  %909 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %910 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %908, <2 x i64> noundef %909)
  store <2 x i64> %910, ptr %64, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %65) #3
  %911 = load <2 x i64>, ptr %64, align 16, !tbaa !5
  %912 = bitcast <2 x i64> %911 to <16 x i8>
  %913 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %912, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %914 = bitcast <16 x i8> %913 to <2 x i64>
  %915 = load <2 x i64>, ptr %64, align 16, !tbaa !5
  %916 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %914, <2 x i64> noundef %915)
  store <2 x i64> %916, ptr %65, align 16, !tbaa !5
  %917 = load <2 x i64>, ptr %65, align 16, !tbaa !5
  %918 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %919 = bitcast <2 x i64> %918 to <4 x i32>
  %920 = shufflevector <4 x i32> %919, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %921 = bitcast <4 x i32> %920 to <2 x i64>
  %922 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %917, <2 x i64> noundef %921)
  store <2 x i64> %922, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %65) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %64) #3
  br label %923

923:                                              ; preds = %904
  br label %924

924:                                              ; preds = %923
  %925 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %925, ptr %4, align 16, !tbaa !5
  %926 = load ptr, ptr %7, align 8, !tbaa !8
  %927 = getelementptr inbounds <2 x i64>, ptr %926, i32 1
  store ptr %927, ptr %7, align 8, !tbaa !8
  %928 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %926, <2 x i64> noundef %928)
  %929 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %930 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %929, i32 noundef 29)
  store <2 x i64> %930, ptr %10, align 16, !tbaa !5
  %931 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %931, ptr %9, align 16, !tbaa !5
  %932 = load ptr, ptr %5, align 8, !tbaa !8
  %933 = getelementptr inbounds <2 x i64>, ptr %932, i32 1
  store ptr %933, ptr %5, align 8, !tbaa !8
  %934 = load ptr, ptr %5, align 8, !tbaa !8
  %935 = call <2 x i64> @_mm_loadu_si128(ptr noundef %934)
  store <2 x i64> %935, ptr %8, align 16, !tbaa !5
  %936 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %937 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %938 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %937, i32 noundef 3)
  %939 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %940 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %938, <2 x i64> noundef %939)
  %941 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %936, <2 x i64> noundef %940)
  store <2 x i64> %941, ptr %9, align 16, !tbaa !5
  br label %942

942:                                              ; preds = %924
  call void @llvm.lifetime.start.p0(i64 16, ptr %66) #3
  %943 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %944 = bitcast <2 x i64> %943 to <16 x i8>
  %945 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %944, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %946 = bitcast <16 x i8> %945 to <2 x i64>
  %947 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %948 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %946, <2 x i64> noundef %947)
  store <2 x i64> %948, ptr %66, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %67) #3
  %949 = load <2 x i64>, ptr %66, align 16, !tbaa !5
  %950 = bitcast <2 x i64> %949 to <16 x i8>
  %951 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %950, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %952 = bitcast <16 x i8> %951 to <2 x i64>
  %953 = load <2 x i64>, ptr %66, align 16, !tbaa !5
  %954 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %952, <2 x i64> noundef %953)
  store <2 x i64> %954, ptr %67, align 16, !tbaa !5
  %955 = load <2 x i64>, ptr %67, align 16, !tbaa !5
  %956 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %957 = bitcast <2 x i64> %956 to <4 x i32>
  %958 = shufflevector <4 x i32> %957, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %959 = bitcast <4 x i32> %958 to <2 x i64>
  %960 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %955, <2 x i64> noundef %959)
  store <2 x i64> %960, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %67) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %66) #3
  br label %961

961:                                              ; preds = %942
  br label %962

962:                                              ; preds = %961
  %963 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %963, ptr %4, align 16, !tbaa !5
  %964 = load ptr, ptr %7, align 8, !tbaa !8
  %965 = getelementptr inbounds <2 x i64>, ptr %964, i32 1
  store ptr %965, ptr %7, align 8, !tbaa !8
  %966 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %964, <2 x i64> noundef %966)
  %967 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %968 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %967, i32 noundef 4)
  store <2 x i64> %968, ptr %10, align 16, !tbaa !5
  %969 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %970 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %971 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %969, <2 x i64> noundef %970)
  store <2 x i64> %971, ptr %9, align 16, !tbaa !5
  br label %972

972:                                              ; preds = %962
  call void @llvm.lifetime.start.p0(i64 16, ptr %68) #3
  %973 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %974 = bitcast <2 x i64> %973 to <16 x i8>
  %975 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %974, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %976 = bitcast <16 x i8> %975 to <2 x i64>
  %977 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %978 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %976, <2 x i64> noundef %977)
  store <2 x i64> %978, ptr %68, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %69) #3
  %979 = load <2 x i64>, ptr %68, align 16, !tbaa !5
  %980 = bitcast <2 x i64> %979 to <16 x i8>
  %981 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %980, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %982 = bitcast <16 x i8> %981 to <2 x i64>
  %983 = load <2 x i64>, ptr %68, align 16, !tbaa !5
  %984 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %982, <2 x i64> noundef %983)
  store <2 x i64> %984, ptr %69, align 16, !tbaa !5
  %985 = load <2 x i64>, ptr %69, align 16, !tbaa !5
  %986 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %987 = bitcast <2 x i64> %986 to <4 x i32>
  %988 = shufflevector <4 x i32> %987, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %989 = bitcast <4 x i32> %988 to <2 x i64>
  %990 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %985, <2 x i64> noundef %989)
  store <2 x i64> %990, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %69) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %68) #3
  br label %991

991:                                              ; preds = %972
  br label %992

992:                                              ; preds = %991
  %993 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %993, ptr %4, align 16, !tbaa !5
  %994 = load ptr, ptr %7, align 8, !tbaa !8
  %995 = getelementptr inbounds <2 x i64>, ptr %994, i32 1
  store ptr %995, ptr %7, align 8, !tbaa !8
  %996 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %994, <2 x i64> noundef %996)
  %997 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %998 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %997, i32 noundef 11)
  store <2 x i64> %998, ptr %10, align 16, !tbaa !5
  %999 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %1000 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %1001 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %999, <2 x i64> noundef %1000)
  store <2 x i64> %1001, ptr %9, align 16, !tbaa !5
  br label %1002

1002:                                             ; preds = %992
  call void @llvm.lifetime.start.p0(i64 16, ptr %70) #3
  %1003 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1004 = bitcast <2 x i64> %1003 to <16 x i8>
  %1005 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1004, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %1006 = bitcast <16 x i8> %1005 to <2 x i64>
  %1007 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1008 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1006, <2 x i64> noundef %1007)
  store <2 x i64> %1008, ptr %70, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %71) #3
  %1009 = load <2 x i64>, ptr %70, align 16, !tbaa !5
  %1010 = bitcast <2 x i64> %1009 to <16 x i8>
  %1011 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1010, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %1012 = bitcast <16 x i8> %1011 to <2 x i64>
  %1013 = load <2 x i64>, ptr %70, align 16, !tbaa !5
  %1014 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1012, <2 x i64> noundef %1013)
  store <2 x i64> %1014, ptr %71, align 16, !tbaa !5
  %1015 = load <2 x i64>, ptr %71, align 16, !tbaa !5
  %1016 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1017 = bitcast <2 x i64> %1016 to <4 x i32>
  %1018 = shufflevector <4 x i32> %1017, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1019 = bitcast <4 x i32> %1018 to <2 x i64>
  %1020 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1015, <2 x i64> noundef %1019)
  store <2 x i64> %1020, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %71) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %70) #3
  br label %1021

1021:                                             ; preds = %1002
  br label %1022

1022:                                             ; preds = %1021
  %1023 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1023, ptr %4, align 16, !tbaa !5
  %1024 = load ptr, ptr %7, align 8, !tbaa !8
  %1025 = getelementptr inbounds <2 x i64>, ptr %1024, i32 1
  store ptr %1025, ptr %7, align 8, !tbaa !8
  %1026 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1024, <2 x i64> noundef %1026)
  %1027 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1028 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1027, i32 noundef 18)
  store <2 x i64> %1028, ptr %10, align 16, !tbaa !5
  %1029 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %1030 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %1031 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %1029, <2 x i64> noundef %1030)
  store <2 x i64> %1031, ptr %9, align 16, !tbaa !5
  br label %1032

1032:                                             ; preds = %1022
  call void @llvm.lifetime.start.p0(i64 16, ptr %72) #3
  %1033 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1034 = bitcast <2 x i64> %1033 to <16 x i8>
  %1035 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1034, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %1036 = bitcast <16 x i8> %1035 to <2 x i64>
  %1037 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1038 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1036, <2 x i64> noundef %1037)
  store <2 x i64> %1038, ptr %72, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %73) #3
  %1039 = load <2 x i64>, ptr %72, align 16, !tbaa !5
  %1040 = bitcast <2 x i64> %1039 to <16 x i8>
  %1041 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1040, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %1042 = bitcast <16 x i8> %1041 to <2 x i64>
  %1043 = load <2 x i64>, ptr %72, align 16, !tbaa !5
  %1044 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1042, <2 x i64> noundef %1043)
  store <2 x i64> %1044, ptr %73, align 16, !tbaa !5
  %1045 = load <2 x i64>, ptr %73, align 16, !tbaa !5
  %1046 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1047 = bitcast <2 x i64> %1046 to <4 x i32>
  %1048 = shufflevector <4 x i32> %1047, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1049 = bitcast <4 x i32> %1048 to <2 x i64>
  %1050 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1045, <2 x i64> noundef %1049)
  store <2 x i64> %1050, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %73) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %72) #3
  br label %1051

1051:                                             ; preds = %1032
  br label %1052

1052:                                             ; preds = %1051
  %1053 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1053, ptr %4, align 16, !tbaa !5
  %1054 = load ptr, ptr %7, align 8, !tbaa !8
  %1055 = getelementptr inbounds <2 x i64>, ptr %1054, i32 1
  store ptr %1055, ptr %7, align 8, !tbaa !8
  %1056 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1054, <2 x i64> noundef %1056)
  %1057 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1058 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1057, i32 noundef 25)
  store <2 x i64> %1058, ptr %10, align 16, !tbaa !5
  %1059 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %1059, ptr %9, align 16, !tbaa !5
  br label %1060

1060:                                             ; preds = %1052
  call void @llvm.lifetime.start.p0(i64 16, ptr %74) #3
  %1061 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1062 = bitcast <2 x i64> %1061 to <16 x i8>
  %1063 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1062, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %1064 = bitcast <16 x i8> %1063 to <2 x i64>
  %1065 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1066 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1064, <2 x i64> noundef %1065)
  store <2 x i64> %1066, ptr %74, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %75) #3
  %1067 = load <2 x i64>, ptr %74, align 16, !tbaa !5
  %1068 = bitcast <2 x i64> %1067 to <16 x i8>
  %1069 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1068, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %1070 = bitcast <16 x i8> %1069 to <2 x i64>
  %1071 = load <2 x i64>, ptr %74, align 16, !tbaa !5
  %1072 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1070, <2 x i64> noundef %1071)
  store <2 x i64> %1072, ptr %75, align 16, !tbaa !5
  %1073 = load <2 x i64>, ptr %75, align 16, !tbaa !5
  %1074 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1075 = bitcast <2 x i64> %1074 to <4 x i32>
  %1076 = shufflevector <4 x i32> %1075, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1077 = bitcast <4 x i32> %1076 to <2 x i64>
  %1078 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1073, <2 x i64> noundef %1077)
  store <2 x i64> %1078, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %75) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %74) #3
  br label %1079

1079:                                             ; preds = %1060
  br label %1080

1080:                                             ; preds = %1079
  %1081 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1081, ptr %4, align 16, !tbaa !5
  %1082 = load ptr, ptr %7, align 8, !tbaa !8
  %1083 = getelementptr inbounds <2 x i64>, ptr %1082, i32 1
  store ptr %1083, ptr %7, align 8, !tbaa !8
  %1084 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1082, <2 x i64> noundef %1084)
  %1085 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %11) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %10) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %9) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %8) #3
  call void @llvm.lifetime.end.p0(i64 8, ptr %7) #3
  ret <2 x i64> %1085
}

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { alwaysinline nounwind uwtable "min-legal-vector-width"="128" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { nounwind uwtable "min-legal-vector-width"="128" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"omnipotent char", !7, i64 0}
!7 = !{!"Simple C/C++ TBAA"}
!8 = !{!9, !9, i64 0}
!9 = !{!"any pointer", !6, i64 0}


; 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: alwaysinline nounwind uwtable
declare hidden void @_mm_storeu_si128(ptr noundef, <2 x i64> noundef) local_unnamed_addr #0

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_loadu_si128(ptr noundef) local_unnamed_addr #0

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_or_si128(<2 x i64> noundef, <2 x i64> noundef) local_unnamed_addr #0

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_slli_epi32(<2 x i64> noundef, i32 noundef) local_unnamed_addr #0

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_set1_epi32(i32 noundef) local_unnamed_addr #0

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_and_si128(<2 x i64> noundef, <2 x i64> noundef) local_unnamed_addr #0

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_srli_epi32(<2 x i64> noundef, i32 noundef) local_unnamed_addr #0

; Function Attrs: alwaysinline nounwind uwtable
declare hidden <2 x i64> @_mm_add_epi32(<2 x i64> noundef, <2 x i64> noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
define dso_local noundef <2 x i64> @iunpack7(<2 x i64> noundef %0, ptr noundef %1, ptr noundef %2) local_unnamed_addr #1 {
  %4 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef %1)
  %5 = tail call <2 x i64> @_mm_set1_epi32(i32 noundef 127)
  %6 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %4, <2 x i64> noundef %5)
  %7 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %6, <2 x i32> <i32 1, i32 2>
  %8 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %7, <2 x i64> noundef %6)
  %9 = bitcast <2 x i64> %8 to <16 x i8>
  %10 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %9, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %11 = bitcast <16 x i8> %10 to <2 x i64>
  %12 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %11, <2 x i64> noundef %8)
  %13 = bitcast <2 x i64> %0 to <4 x i32>
  %14 = shufflevector <4 x i32> %13, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %15 = bitcast <4 x i32> %14 to <2 x i64>
  %16 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %12, <2 x i64> noundef %15)
  %17 = getelementptr inbounds i8, ptr %2, i64 16
  tail call void @_mm_storeu_si128(ptr noundef %2, <2 x i64> noundef %16)
  %18 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %4, i32 noundef 7)
  %19 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %18, <2 x i64> noundef %5)
  %20 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %19, <2 x i32> <i32 1, i32 2>
  %21 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %20, <2 x i64> noundef %19)
  %22 = bitcast <2 x i64> %21 to <16 x i8>
  %23 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %22, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %24 = bitcast <16 x i8> %23 to <2 x i64>
  %25 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %24, <2 x i64> noundef %21)
  %26 = bitcast <2 x i64> %16 to <4 x i32>
  %27 = shufflevector <4 x i32> %26, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %28 = bitcast <4 x i32> %27 to <2 x i64>
  %29 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %25, <2 x i64> noundef %28)
  %30 = getelementptr inbounds i8, ptr %2, i64 32
  tail call void @_mm_storeu_si128(ptr noundef nonnull %17, <2 x i64> noundef %29)
  %31 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %4, i32 noundef 14)
  %32 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %31, <2 x i64> noundef %5)
  %33 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %32, <2 x i32> <i32 1, i32 2>
  %34 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %33, <2 x i64> noundef %32)
  %35 = bitcast <2 x i64> %34 to <16 x i8>
  %36 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %35, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %37 = bitcast <16 x i8> %36 to <2 x i64>
  %38 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %37, <2 x i64> noundef %34)
  %39 = bitcast <2 x i64> %29 to <4 x i32>
  %40 = shufflevector <4 x i32> %39, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %41 = bitcast <4 x i32> %40 to <2 x i64>
  %42 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %38, <2 x i64> noundef %41)
  %43 = getelementptr inbounds i8, ptr %2, i64 48
  tail call void @_mm_storeu_si128(ptr noundef nonnull %30, <2 x i64> noundef %42)
  %44 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %4, i32 noundef 21)
  %45 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %44, <2 x i64> noundef %5)
  %46 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %45, <2 x i32> <i32 1, i32 2>
  %47 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %46, <2 x i64> noundef %45)
  %48 = bitcast <2 x i64> %47 to <16 x i8>
  %49 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %48, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %50 = bitcast <16 x i8> %49 to <2 x i64>
  %51 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %50, <2 x i64> noundef %47)
  %52 = bitcast <2 x i64> %42 to <4 x i32>
  %53 = shufflevector <4 x i32> %52, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %54 = bitcast <4 x i32> %53 to <2 x i64>
  %55 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %51, <2 x i64> noundef %54)
  %56 = getelementptr inbounds i8, ptr %2, i64 64
  tail call void @_mm_storeu_si128(ptr noundef nonnull %43, <2 x i64> noundef %55)
  %57 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %4, i32 noundef 28)
  %58 = getelementptr inbounds i8, ptr %1, i64 16
  %59 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %58)
  %60 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %59, i32 noundef 4)
  %61 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %60, <2 x i64> noundef %5)
  %62 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %57, <2 x i64> noundef %61)
  %63 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %62, <2 x i32> <i32 1, i32 2>
  %64 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %63, <2 x i64> noundef %62)
  %65 = bitcast <2 x i64> %64 to <16 x i8>
  %66 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %65, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %67 = bitcast <16 x i8> %66 to <2 x i64>
  %68 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %67, <2 x i64> noundef %64)
  %69 = bitcast <2 x i64> %55 to <4 x i32>
  %70 = shufflevector <4 x i32> %69, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %71 = bitcast <4 x i32> %70 to <2 x i64>
  %72 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %68, <2 x i64> noundef %71)
  %73 = getelementptr inbounds i8, ptr %2, i64 80
  tail call void @_mm_storeu_si128(ptr noundef nonnull %56, <2 x i64> noundef %72)
  %74 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %59, i32 noundef 3)
  %75 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %74, <2 x i64> noundef %5)
  %76 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %75, <2 x i32> <i32 1, i32 2>
  %77 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %76, <2 x i64> noundef %75)
  %78 = bitcast <2 x i64> %77 to <16 x i8>
  %79 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %78, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %80 = bitcast <16 x i8> %79 to <2 x i64>
  %81 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %80, <2 x i64> noundef %77)
  %82 = bitcast <2 x i64> %72 to <4 x i32>
  %83 = shufflevector <4 x i32> %82, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %84 = bitcast <4 x i32> %83 to <2 x i64>
  %85 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %81, <2 x i64> noundef %84)
  %86 = getelementptr inbounds i8, ptr %2, i64 96
  tail call void @_mm_storeu_si128(ptr noundef nonnull %73, <2 x i64> noundef %85)
  %87 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %59, i32 noundef 10)
  %88 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %87, <2 x i64> noundef %5)
  %89 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %88, <2 x i32> <i32 1, i32 2>
  %90 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %89, <2 x i64> noundef %88)
  %91 = bitcast <2 x i64> %90 to <16 x i8>
  %92 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %91, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %93 = bitcast <16 x i8> %92 to <2 x i64>
  %94 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %93, <2 x i64> noundef %90)
  %95 = bitcast <2 x i64> %85 to <4 x i32>
  %96 = shufflevector <4 x i32> %95, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %97 = bitcast <4 x i32> %96 to <2 x i64>
  %98 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %94, <2 x i64> noundef %97)
  %99 = getelementptr inbounds i8, ptr %2, i64 112
  tail call void @_mm_storeu_si128(ptr noundef nonnull %86, <2 x i64> noundef %98)
  %100 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %59, i32 noundef 17)
  %101 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %100, <2 x i64> noundef %5)
  %102 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %101, <2 x i32> <i32 1, i32 2>
  %103 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %102, <2 x i64> noundef %101)
  %104 = bitcast <2 x i64> %103 to <16 x i8>
  %105 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %104, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %106 = bitcast <16 x i8> %105 to <2 x i64>
  %107 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %106, <2 x i64> noundef %103)
  %108 = bitcast <2 x i64> %98 to <4 x i32>
  %109 = shufflevector <4 x i32> %108, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %110 = bitcast <4 x i32> %109 to <2 x i64>
  %111 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %107, <2 x i64> noundef %110)
  %112 = getelementptr inbounds i8, ptr %2, i64 128
  tail call void @_mm_storeu_si128(ptr noundef nonnull %99, <2 x i64> noundef %111)
  %113 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %59, i32 noundef 24)
  %114 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %113, <2 x i64> noundef %5)
  %115 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %114, <2 x i32> <i32 1, i32 2>
  %116 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %115, <2 x i64> noundef %114)
  %117 = bitcast <2 x i64> %116 to <16 x i8>
  %118 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %117, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %119 = bitcast <16 x i8> %118 to <2 x i64>
  %120 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %119, <2 x i64> noundef %116)
  %121 = bitcast <2 x i64> %111 to <4 x i32>
  %122 = shufflevector <4 x i32> %121, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %123 = bitcast <4 x i32> %122 to <2 x i64>
  %124 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %120, <2 x i64> noundef %123)
  %125 = getelementptr inbounds i8, ptr %2, i64 144
  tail call void @_mm_storeu_si128(ptr noundef nonnull %112, <2 x i64> noundef %124)
  %126 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %59, i32 noundef 31)
  %127 = getelementptr inbounds i8, ptr %1, i64 32
  %128 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %127)
  %129 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %128, i32 noundef 1)
  %130 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %129, <2 x i64> noundef %5)
  %131 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %126, <2 x i64> noundef %130)
  %132 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %131, <2 x i32> <i32 1, i32 2>
  %133 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %132, <2 x i64> noundef %131)
  %134 = bitcast <2 x i64> %133 to <16 x i8>
  %135 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %134, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %136 = bitcast <16 x i8> %135 to <2 x i64>
  %137 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %136, <2 x i64> noundef %133)
  %138 = bitcast <2 x i64> %124 to <4 x i32>
  %139 = shufflevector <4 x i32> %138, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %140 = bitcast <4 x i32> %139 to <2 x i64>
  %141 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %137, <2 x i64> noundef %140)
  %142 = getelementptr inbounds i8, ptr %2, i64 160
  tail call void @_mm_storeu_si128(ptr noundef nonnull %125, <2 x i64> noundef %141)
  %143 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %128, i32 noundef 6)
  %144 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %143, <2 x i64> noundef %5)
  %145 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %144, <2 x i32> <i32 1, i32 2>
  %146 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %145, <2 x i64> noundef %144)
  %147 = bitcast <2 x i64> %146 to <16 x i8>
  %148 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %147, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %149 = bitcast <16 x i8> %148 to <2 x i64>
  %150 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %149, <2 x i64> noundef %146)
  %151 = bitcast <2 x i64> %141 to <4 x i32>
  %152 = shufflevector <4 x i32> %151, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %153 = bitcast <4 x i32> %152 to <2 x i64>
  %154 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %150, <2 x i64> noundef %153)
  %155 = getelementptr inbounds i8, ptr %2, i64 176
  tail call void @_mm_storeu_si128(ptr noundef nonnull %142, <2 x i64> noundef %154)
  %156 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %128, i32 noundef 13)
  %157 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %156, <2 x i64> noundef %5)
  %158 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %157, <2 x i32> <i32 1, i32 2>
  %159 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %158, <2 x i64> noundef %157)
  %160 = bitcast <2 x i64> %159 to <16 x i8>
  %161 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %160, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %162 = bitcast <16 x i8> %161 to <2 x i64>
  %163 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %162, <2 x i64> noundef %159)
  %164 = bitcast <2 x i64> %154 to <4 x i32>
  %165 = shufflevector <4 x i32> %164, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %166 = bitcast <4 x i32> %165 to <2 x i64>
  %167 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %163, <2 x i64> noundef %166)
  %168 = getelementptr inbounds i8, ptr %2, i64 192
  tail call void @_mm_storeu_si128(ptr noundef nonnull %155, <2 x i64> noundef %167)
  %169 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %128, i32 noundef 20)
  %170 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %169, <2 x i64> noundef %5)
  %171 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %170, <2 x i32> <i32 1, i32 2>
  %172 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %171, <2 x i64> noundef %170)
  %173 = bitcast <2 x i64> %172 to <16 x i8>
  %174 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %173, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %175 = bitcast <16 x i8> %174 to <2 x i64>
  %176 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %175, <2 x i64> noundef %172)
  %177 = bitcast <2 x i64> %167 to <4 x i32>
  %178 = shufflevector <4 x i32> %177, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %179 = bitcast <4 x i32> %178 to <2 x i64>
  %180 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %176, <2 x i64> noundef %179)
  %181 = getelementptr inbounds i8, ptr %2, i64 208
  tail call void @_mm_storeu_si128(ptr noundef nonnull %168, <2 x i64> noundef %180)
  %182 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %128, i32 noundef 27)
  %183 = getelementptr inbounds i8, ptr %1, i64 48
  %184 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %183)
  %185 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %184, i32 noundef 5)
  %186 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %185, <2 x i64> noundef %5)
  %187 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %182, <2 x i64> noundef %186)
  %188 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %187, <2 x i32> <i32 1, i32 2>
  %189 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %188, <2 x i64> noundef %187)
  %190 = bitcast <2 x i64> %189 to <16 x i8>
  %191 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %190, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %192 = bitcast <16 x i8> %191 to <2 x i64>
  %193 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %192, <2 x i64> noundef %189)
  %194 = bitcast <2 x i64> %180 to <4 x i32>
  %195 = shufflevector <4 x i32> %194, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %196 = bitcast <4 x i32> %195 to <2 x i64>
  %197 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %193, <2 x i64> noundef %196)
  %198 = getelementptr inbounds i8, ptr %2, i64 224
  tail call void @_mm_storeu_si128(ptr noundef nonnull %181, <2 x i64> noundef %197)
  %199 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %184, i32 noundef 2)
  %200 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %199, <2 x i64> noundef %5)
  %201 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %200, <2 x i32> <i32 1, i32 2>
  %202 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %201, <2 x i64> noundef %200)
  %203 = bitcast <2 x i64> %202 to <16 x i8>
  %204 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %203, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %205 = bitcast <16 x i8> %204 to <2 x i64>
  %206 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %205, <2 x i64> noundef %202)
  %207 = bitcast <2 x i64> %197 to <4 x i32>
  %208 = shufflevector <4 x i32> %207, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %209 = bitcast <4 x i32> %208 to <2 x i64>
  %210 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %206, <2 x i64> noundef %209)
  %211 = getelementptr inbounds i8, ptr %2, i64 240
  tail call void @_mm_storeu_si128(ptr noundef nonnull %198, <2 x i64> noundef %210)
  %212 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %184, i32 noundef 9)
  %213 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %212, <2 x i64> noundef %5)
  %214 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %213, <2 x i32> <i32 1, i32 2>
  %215 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %214, <2 x i64> noundef %213)
  %216 = bitcast <2 x i64> %215 to <16 x i8>
  %217 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %216, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %218 = bitcast <16 x i8> %217 to <2 x i64>
  %219 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %218, <2 x i64> noundef %215)
  %220 = bitcast <2 x i64> %210 to <4 x i32>
  %221 = shufflevector <4 x i32> %220, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %222 = bitcast <4 x i32> %221 to <2 x i64>
  %223 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %219, <2 x i64> noundef %222)
  %224 = getelementptr inbounds i8, ptr %2, i64 256
  tail call void @_mm_storeu_si128(ptr noundef nonnull %211, <2 x i64> noundef %223)
  %225 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %184, i32 noundef 16)
  %226 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %225, <2 x i64> noundef %5)
  %227 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %226, <2 x i32> <i32 1, i32 2>
  %228 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %227, <2 x i64> noundef %226)
  %229 = bitcast <2 x i64> %228 to <16 x i8>
  %230 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %229, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %231 = bitcast <16 x i8> %230 to <2 x i64>
  %232 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %231, <2 x i64> noundef %228)
  %233 = bitcast <2 x i64> %223 to <4 x i32>
  %234 = shufflevector <4 x i32> %233, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %235 = bitcast <4 x i32> %234 to <2 x i64>
  %236 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %232, <2 x i64> noundef %235)
  %237 = getelementptr inbounds i8, ptr %2, i64 272
  tail call void @_mm_storeu_si128(ptr noundef nonnull %224, <2 x i64> noundef %236)
  %238 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %184, i32 noundef 23)
  %239 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %238, <2 x i64> noundef %5)
  %240 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %239, <2 x i32> <i32 1, i32 2>
  %241 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %240, <2 x i64> noundef %239)
  %242 = bitcast <2 x i64> %241 to <16 x i8>
  %243 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %242, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %244 = bitcast <16 x i8> %243 to <2 x i64>
  %245 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %244, <2 x i64> noundef %241)
  %246 = bitcast <2 x i64> %236 to <4 x i32>
  %247 = shufflevector <4 x i32> %246, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %248 = bitcast <4 x i32> %247 to <2 x i64>
  %249 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %245, <2 x i64> noundef %248)
  %250 = getelementptr inbounds i8, ptr %2, i64 288
  tail call void @_mm_storeu_si128(ptr noundef nonnull %237, <2 x i64> noundef %249)
  %251 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %184, i32 noundef 30)
  %252 = getelementptr inbounds i8, ptr %1, i64 64
  %253 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %252)
  %254 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %253, i32 noundef 2)
  %255 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %254, <2 x i64> noundef %5)
  %256 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %251, <2 x i64> noundef %255)
  %257 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %256, <2 x i32> <i32 1, i32 2>
  %258 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %257, <2 x i64> noundef %256)
  %259 = bitcast <2 x i64> %258 to <16 x i8>
  %260 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %259, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %261 = bitcast <16 x i8> %260 to <2 x i64>
  %262 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %261, <2 x i64> noundef %258)
  %263 = bitcast <2 x i64> %249 to <4 x i32>
  %264 = shufflevector <4 x i32> %263, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %265 = bitcast <4 x i32> %264 to <2 x i64>
  %266 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %262, <2 x i64> noundef %265)
  %267 = getelementptr inbounds i8, ptr %2, i64 304
  tail call void @_mm_storeu_si128(ptr noundef nonnull %250, <2 x i64> noundef %266)
  %268 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %253, i32 noundef 5)
  %269 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %268, <2 x i64> noundef %5)
  %270 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %269, <2 x i32> <i32 1, i32 2>
  %271 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %270, <2 x i64> noundef %269)
  %272 = bitcast <2 x i64> %271 to <16 x i8>
  %273 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %272, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %274 = bitcast <16 x i8> %273 to <2 x i64>
  %275 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %274, <2 x i64> noundef %271)
  %276 = bitcast <2 x i64> %266 to <4 x i32>
  %277 = shufflevector <4 x i32> %276, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %278 = bitcast <4 x i32> %277 to <2 x i64>
  %279 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %275, <2 x i64> noundef %278)
  %280 = getelementptr inbounds i8, ptr %2, i64 320
  tail call void @_mm_storeu_si128(ptr noundef nonnull %267, <2 x i64> noundef %279)
  %281 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %253, i32 noundef 12)
  %282 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %281, <2 x i64> noundef %5)
  %283 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %282, <2 x i32> <i32 1, i32 2>
  %284 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %283, <2 x i64> noundef %282)
  %285 = bitcast <2 x i64> %284 to <16 x i8>
  %286 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %285, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %287 = bitcast <16 x i8> %286 to <2 x i64>
  %288 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %287, <2 x i64> noundef %284)
  %289 = bitcast <2 x i64> %279 to <4 x i32>
  %290 = shufflevector <4 x i32> %289, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %291 = bitcast <4 x i32> %290 to <2 x i64>
  %292 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %288, <2 x i64> noundef %291)
  %293 = getelementptr inbounds i8, ptr %2, i64 336
  tail call void @_mm_storeu_si128(ptr noundef nonnull %280, <2 x i64> noundef %292)
  %294 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %253, i32 noundef 19)
  %295 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %294, <2 x i64> noundef %5)
  %296 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %295, <2 x i32> <i32 1, i32 2>
  %297 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %296, <2 x i64> noundef %295)
  %298 = bitcast <2 x i64> %297 to <16 x i8>
  %299 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %298, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %300 = bitcast <16 x i8> %299 to <2 x i64>
  %301 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %300, <2 x i64> noundef %297)
  %302 = bitcast <2 x i64> %292 to <4 x i32>
  %303 = shufflevector <4 x i32> %302, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %304 = bitcast <4 x i32> %303 to <2 x i64>
  %305 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %301, <2 x i64> noundef %304)
  %306 = getelementptr inbounds i8, ptr %2, i64 352
  tail call void @_mm_storeu_si128(ptr noundef nonnull %293, <2 x i64> noundef %305)
  %307 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %253, i32 noundef 26)
  %308 = getelementptr inbounds i8, ptr %1, i64 80
  %309 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %308)
  %310 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %309, i32 noundef 6)
  %311 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %310, <2 x i64> noundef %5)
  %312 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %307, <2 x i64> noundef %311)
  %313 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %312, <2 x i32> <i32 1, i32 2>
  %314 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %313, <2 x i64> noundef %312)
  %315 = bitcast <2 x i64> %314 to <16 x i8>
  %316 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %315, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %317 = bitcast <16 x i8> %316 to <2 x i64>
  %318 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %317, <2 x i64> noundef %314)
  %319 = bitcast <2 x i64> %305 to <4 x i32>
  %320 = shufflevector <4 x i32> %319, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %321 = bitcast <4 x i32> %320 to <2 x i64>
  %322 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %318, <2 x i64> noundef %321)
  %323 = getelementptr inbounds i8, ptr %2, i64 368
  tail call void @_mm_storeu_si128(ptr noundef nonnull %306, <2 x i64> noundef %322)
  %324 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %309, i32 noundef 1)
  %325 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %324, <2 x i64> noundef %5)
  %326 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %325, <2 x i32> <i32 1, i32 2>
  %327 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %326, <2 x i64> noundef %325)
  %328 = bitcast <2 x i64> %327 to <16 x i8>
  %329 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %328, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %330 = bitcast <16 x i8> %329 to <2 x i64>
  %331 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %330, <2 x i64> noundef %327)
  %332 = bitcast <2 x i64> %322 to <4 x i32>
  %333 = shufflevector <4 x i32> %332, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %334 = bitcast <4 x i32> %333 to <2 x i64>
  %335 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %331, <2 x i64> noundef %334)
  %336 = getelementptr inbounds i8, ptr %2, i64 384
  tail call void @_mm_storeu_si128(ptr noundef nonnull %323, <2 x i64> noundef %335)
  %337 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %309, i32 noundef 8)
  %338 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %337, <2 x i64> noundef %5)
  %339 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %338, <2 x i32> <i32 1, i32 2>
  %340 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %339, <2 x i64> noundef %338)
  %341 = bitcast <2 x i64> %340 to <16 x i8>
  %342 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %341, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %343 = bitcast <16 x i8> %342 to <2 x i64>
  %344 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %343, <2 x i64> noundef %340)
  %345 = bitcast <2 x i64> %335 to <4 x i32>
  %346 = shufflevector <4 x i32> %345, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %347 = bitcast <4 x i32> %346 to <2 x i64>
  %348 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %344, <2 x i64> noundef %347)
  %349 = getelementptr inbounds i8, ptr %2, i64 400
  tail call void @_mm_storeu_si128(ptr noundef nonnull %336, <2 x i64> noundef %348)
  %350 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %309, i32 noundef 15)
  %351 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %350, <2 x i64> noundef %5)
  %352 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %351, <2 x i32> <i32 1, i32 2>
  %353 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %352, <2 x i64> noundef %351)
  %354 = bitcast <2 x i64> %353 to <16 x i8>
  %355 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %354, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %356 = bitcast <16 x i8> %355 to <2 x i64>
  %357 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %356, <2 x i64> noundef %353)
  %358 = bitcast <2 x i64> %348 to <4 x i32>
  %359 = shufflevector <4 x i32> %358, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %360 = bitcast <4 x i32> %359 to <2 x i64>
  %361 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %357, <2 x i64> noundef %360)
  %362 = getelementptr inbounds i8, ptr %2, i64 416
  tail call void @_mm_storeu_si128(ptr noundef nonnull %349, <2 x i64> noundef %361)
  %363 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %309, i32 noundef 22)
  %364 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %363, <2 x i64> noundef %5)
  %365 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %364, <2 x i32> <i32 1, i32 2>
  %366 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %365, <2 x i64> noundef %364)
  %367 = bitcast <2 x i64> %366 to <16 x i8>
  %368 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %367, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %369 = bitcast <16 x i8> %368 to <2 x i64>
  %370 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %369, <2 x i64> noundef %366)
  %371 = bitcast <2 x i64> %361 to <4 x i32>
  %372 = shufflevector <4 x i32> %371, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %373 = bitcast <4 x i32> %372 to <2 x i64>
  %374 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %370, <2 x i64> noundef %373)
  %375 = getelementptr inbounds i8, ptr %2, i64 432
  tail call void @_mm_storeu_si128(ptr noundef nonnull %362, <2 x i64> noundef %374)
  %376 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %309, i32 noundef 29)
  %377 = getelementptr inbounds i8, ptr %1, i64 96
  %378 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %377)
  %379 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %378, i32 noundef 3)
  %380 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %379, <2 x i64> noundef %5)
  %381 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %376, <2 x i64> noundef %380)
  %382 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %381, <2 x i32> <i32 1, i32 2>
  %383 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %382, <2 x i64> noundef %381)
  %384 = bitcast <2 x i64> %383 to <16 x i8>
  %385 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %384, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %386 = bitcast <16 x i8> %385 to <2 x i64>
  %387 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %386, <2 x i64> noundef %383)
  %388 = bitcast <2 x i64> %374 to <4 x i32>
  %389 = shufflevector <4 x i32> %388, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %390 = bitcast <4 x i32> %389 to <2 x i64>
  %391 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %387, <2 x i64> noundef %390)
  %392 = getelementptr inbounds i8, ptr %2, i64 448
  tail call void @_mm_storeu_si128(ptr noundef nonnull %375, <2 x i64> noundef %391)
  %393 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %378, i32 noundef 4)
  %394 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %393, <2 x i64> noundef %5)
  %395 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %394, <2 x i32> <i32 1, i32 2>
  %396 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %395, <2 x i64> noundef %394)
  %397 = bitcast <2 x i64> %396 to <16 x i8>
  %398 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %397, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %399 = bitcast <16 x i8> %398 to <2 x i64>
  %400 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %399, <2 x i64> noundef %396)
  %401 = bitcast <2 x i64> %391 to <4 x i32>
  %402 = shufflevector <4 x i32> %401, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %403 = bitcast <4 x i32> %402 to <2 x i64>
  %404 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %400, <2 x i64> noundef %403)
  %405 = getelementptr inbounds i8, ptr %2, i64 464
  tail call void @_mm_storeu_si128(ptr noundef nonnull %392, <2 x i64> noundef %404)
  %406 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %378, i32 noundef 11)
  %407 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %406, <2 x i64> noundef %5)
  %408 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %407, <2 x i32> <i32 1, i32 2>
  %409 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %408, <2 x i64> noundef %407)
  %410 = bitcast <2 x i64> %409 to <16 x i8>
  %411 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %410, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %412 = bitcast <16 x i8> %411 to <2 x i64>
  %413 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %412, <2 x i64> noundef %409)
  %414 = bitcast <2 x i64> %404 to <4 x i32>
  %415 = shufflevector <4 x i32> %414, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %416 = bitcast <4 x i32> %415 to <2 x i64>
  %417 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %413, <2 x i64> noundef %416)
  %418 = getelementptr inbounds i8, ptr %2, i64 480
  tail call void @_mm_storeu_si128(ptr noundef nonnull %405, <2 x i64> noundef %417)
  %419 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %378, i32 noundef 18)
  %420 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %419, <2 x i64> noundef %5)
  %421 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %420, <2 x i32> <i32 1, i32 2>
  %422 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %421, <2 x i64> noundef %420)
  %423 = bitcast <2 x i64> %422 to <16 x i8>
  %424 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %423, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %425 = bitcast <16 x i8> %424 to <2 x i64>
  %426 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %425, <2 x i64> noundef %422)
  %427 = bitcast <2 x i64> %417 to <4 x i32>
  %428 = shufflevector <4 x i32> %427, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %429 = bitcast <4 x i32> %428 to <2 x i64>
  %430 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %426, <2 x i64> noundef %429)
  %431 = getelementptr inbounds i8, ptr %2, i64 496
  tail call void @_mm_storeu_si128(ptr noundef nonnull %418, <2 x i64> noundef %430)
  %432 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %378, i32 noundef 25)
  %433 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %432, <2 x i32> <i32 1, i32 2>
  %434 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %433, <2 x i64> noundef %432)
  %435 = bitcast <2 x i64> %434 to <16 x i8>
  %436 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %435, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %437 = bitcast <16 x i8> %436 to <2 x i64>
  %438 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %437, <2 x i64> noundef %434)
  %439 = bitcast <2 x i64> %430 to <4 x i32>
  %440 = shufflevector <4 x i32> %439, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %441 = bitcast <4 x i32> %440 to <2 x i64>
  %442 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %438, <2 x i64> noundef %441)
  tail call void @_mm_storeu_si128(ptr noundef nonnull %431, <2 x i64> noundef %442)
  ret <2 x i64> %442
}

attributes #0 = { alwaysinline nounwind uwtable "min-legal-vector-width"="128" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { nounwind uwtable "min-legal-vector-width"="128" "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)"}


; Effective O3 passes: EarlyCSEPass,GlobalOptPass,InferFunctionAttrsPass,InstCombinePass,PostOrderFunctionAttrsPass,SROAPass,SimplifyCFGPass,TailCallElimPass,VectorCombinePass