; 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> @iunpack10(<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 1023)
  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 10)
  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 20)
  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 30)
  store <2 x i64> %170, ptr %10, align 16, !tbaa !5
  %171 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %171, ptr %9, align 16, !tbaa !5
  %172 = load ptr, ptr %5, align 8, !tbaa !8
  %173 = getelementptr inbounds <2 x i64>, ptr %172, i32 1
  store ptr %173, ptr %5, align 8, !tbaa !8
  %174 = load ptr, ptr %5, align 8, !tbaa !8
  %175 = call <2 x i64> @_mm_loadu_si128(ptr noundef %174)
  store <2 x i64> %175, ptr %8, align 16, !tbaa !5
  %176 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %177 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %178 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %177, i32 noundef 2)
  %179 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %180 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %178, <2 x i64> noundef %179)
  %181 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %176, <2 x i64> noundef %180)
  store <2 x i64> %181, ptr %9, align 16, !tbaa !5
  br label %182

182:                                              ; preds = %164
  call void @llvm.lifetime.start.p0(i64 16, ptr %18) #3
  %183 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %184 = bitcast <2 x i64> %183 to <16 x i8>
  %185 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %184, <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>
  %186 = bitcast <16 x i8> %185 to <2 x i64>
  %187 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %188 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %186, <2 x i64> noundef %187)
  store <2 x i64> %188, ptr %18, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %19) #3
  %189 = load <2 x i64>, ptr %18, align 16, !tbaa !5
  %190 = bitcast <2 x i64> %189 to <16 x i8>
  %191 = shufflevector <16 x i8> zeroinitializer, <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 = load <2 x i64>, ptr %18, align 16, !tbaa !5
  %194 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %192, <2 x i64> noundef %193)
  store <2 x i64> %194, ptr %19, align 16, !tbaa !5
  %195 = load <2 x i64>, ptr %19, align 16, !tbaa !5
  %196 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %197 = bitcast <2 x i64> %196 to <4 x i32>
  %198 = shufflevector <4 x i32> %197, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %199 = bitcast <4 x i32> %198 to <2 x i64>
  %200 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %195, <2 x i64> noundef %199)
  store <2 x i64> %200, 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 %201

201:                                              ; preds = %182
  br label %202

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

212:                                              ; preds = %202
  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 18)
  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 28)
  store <2 x i64> %268, ptr %10, align 16, !tbaa !5
  %269 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %269, ptr %9, align 16, !tbaa !5
  %270 = load ptr, ptr %5, align 8, !tbaa !8
  %271 = getelementptr inbounds <2 x i64>, ptr %270, i32 1
  store ptr %271, ptr %5, align 8, !tbaa !8
  %272 = load ptr, ptr %5, align 8, !tbaa !8
  %273 = call <2 x i64> @_mm_loadu_si128(ptr noundef %272)
  store <2 x i64> %273, ptr %8, align 16, !tbaa !5
  %274 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %275 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %276 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %275, i32 noundef 4)
  %277 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %278 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %276, <2 x i64> noundef %277)
  %279 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %274, <2 x i64> noundef %278)
  store <2 x i64> %279, ptr %9, align 16, !tbaa !5
  br label %280

280:                                              ; preds = %262
  call void @llvm.lifetime.start.p0(i64 16, ptr %24) #3
  %281 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %282 = bitcast <2 x i64> %281 to <16 x i8>
  %283 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %282, <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>
  %284 = bitcast <16 x i8> %283 to <2 x i64>
  %285 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %286 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %284, <2 x i64> noundef %285)
  store <2 x i64> %286, ptr %24, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %25) #3
  %287 = load <2 x i64>, ptr %24, align 16, !tbaa !5
  %288 = bitcast <2 x i64> %287 to <16 x i8>
  %289 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %288, <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>
  %290 = bitcast <16 x i8> %289 to <2 x i64>
  %291 = load <2 x i64>, ptr %24, align 16, !tbaa !5
  %292 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %290, <2 x i64> noundef %291)
  store <2 x i64> %292, ptr %25, align 16, !tbaa !5
  %293 = load <2 x i64>, ptr %25, align 16, !tbaa !5
  %294 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %295 = bitcast <2 x i64> %294 to <4 x i32>
  %296 = shufflevector <4 x i32> %295, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %297 = bitcast <4 x i32> %296 to <2 x i64>
  %298 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %293, <2 x i64> noundef %297)
  store <2 x i64> %298, 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 %299

299:                                              ; preds = %280
  br label %300

300:                                              ; preds = %299
  %301 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %301, ptr %4, align 16, !tbaa !5
  %302 = load ptr, ptr %7, align 8, !tbaa !8
  %303 = getelementptr inbounds <2 x i64>, ptr %302, i32 1
  store ptr %303, ptr %7, align 8, !tbaa !8
  %304 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %302, <2 x i64> noundef %304)
  %305 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %306 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %305, i32 noundef 6)
  store <2 x i64> %306, ptr %10, align 16, !tbaa !5
  %307 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %308 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %309 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %307, <2 x i64> noundef %308)
  store <2 x i64> %309, ptr %9, align 16, !tbaa !5
  br label %310

310:                                              ; preds = %300
  call void @llvm.lifetime.start.p0(i64 16, ptr %26) #3
  %311 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %312 = bitcast <2 x i64> %311 to <16 x i8>
  %313 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %312, <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>
  %314 = bitcast <16 x i8> %313 to <2 x i64>
  %315 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %316 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %314, <2 x i64> noundef %315)
  store <2 x i64> %316, ptr %26, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %27) #3
  %317 = load <2 x i64>, ptr %26, align 16, !tbaa !5
  %318 = bitcast <2 x i64> %317 to <16 x i8>
  %319 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %318, <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>
  %320 = bitcast <16 x i8> %319 to <2 x i64>
  %321 = load <2 x i64>, ptr %26, align 16, !tbaa !5
  %322 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %320, <2 x i64> noundef %321)
  store <2 x i64> %322, ptr %27, align 16, !tbaa !5
  %323 = load <2 x i64>, ptr %27, align 16, !tbaa !5
  %324 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %325 = bitcast <2 x i64> %324 to <4 x i32>
  %326 = shufflevector <4 x i32> %325, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %327 = bitcast <4 x i32> %326 to <2 x i64>
  %328 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %323, <2 x i64> noundef %327)
  store <2 x i64> %328, 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 %329

329:                                              ; preds = %310
  br label %330

330:                                              ; preds = %329
  %331 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %331, ptr %4, align 16, !tbaa !5
  %332 = load ptr, ptr %7, align 8, !tbaa !8
  %333 = getelementptr inbounds <2 x i64>, ptr %332, i32 1
  store ptr %333, ptr %7, align 8, !tbaa !8
  %334 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %332, <2 x i64> noundef %334)
  %335 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %336 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %335, i32 noundef 16)
  store <2 x i64> %336, ptr %10, align 16, !tbaa !5
  %337 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %338 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %339 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %337, <2 x i64> noundef %338)
  store <2 x i64> %339, ptr %9, align 16, !tbaa !5
  br label %340

340:                                              ; preds = %330
  call void @llvm.lifetime.start.p0(i64 16, ptr %28) #3
  %341 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %342 = bitcast <2 x i64> %341 to <16 x i8>
  %343 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %342, <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>
  %344 = bitcast <16 x i8> %343 to <2 x i64>
  %345 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %346 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %344, <2 x i64> noundef %345)
  store <2 x i64> %346, ptr %28, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %29) #3
  %347 = load <2 x i64>, ptr %28, align 16, !tbaa !5
  %348 = bitcast <2 x i64> %347 to <16 x i8>
  %349 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %348, <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>
  %350 = bitcast <16 x i8> %349 to <2 x i64>
  %351 = load <2 x i64>, ptr %28, align 16, !tbaa !5
  %352 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %350, <2 x i64> noundef %351)
  store <2 x i64> %352, ptr %29, align 16, !tbaa !5
  %353 = load <2 x i64>, ptr %29, align 16, !tbaa !5
  %354 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %355 = bitcast <2 x i64> %354 to <4 x i32>
  %356 = shufflevector <4 x i32> %355, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %357 = bitcast <4 x i32> %356 to <2 x i64>
  %358 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %353, <2 x i64> noundef %357)
  store <2 x i64> %358, 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 %359

359:                                              ; preds = %340
  br label %360

360:                                              ; preds = %359
  %361 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %361, ptr %4, align 16, !tbaa !5
  %362 = load ptr, ptr %7, align 8, !tbaa !8
  %363 = getelementptr inbounds <2 x i64>, ptr %362, i32 1
  store ptr %363, ptr %7, align 8, !tbaa !8
  %364 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %362, <2 x i64> noundef %364)
  %365 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %366 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %365, i32 noundef 26)
  store <2 x i64> %366, ptr %10, align 16, !tbaa !5
  %367 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %367, ptr %9, align 16, !tbaa !5
  %368 = load ptr, ptr %5, align 8, !tbaa !8
  %369 = getelementptr inbounds <2 x i64>, ptr %368, i32 1
  store ptr %369, ptr %5, align 8, !tbaa !8
  %370 = load ptr, ptr %5, align 8, !tbaa !8
  %371 = call <2 x i64> @_mm_loadu_si128(ptr noundef %370)
  store <2 x i64> %371, ptr %8, align 16, !tbaa !5
  %372 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %373 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %374 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %373, i32 noundef 6)
  %375 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %376 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %374, <2 x i64> noundef %375)
  %377 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %372, <2 x i64> noundef %376)
  store <2 x i64> %377, ptr %9, align 16, !tbaa !5
  br label %378

378:                                              ; preds = %360
  call void @llvm.lifetime.start.p0(i64 16, ptr %30) #3
  %379 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %380 = bitcast <2 x i64> %379 to <16 x i8>
  %381 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %380, <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>
  %382 = bitcast <16 x i8> %381 to <2 x i64>
  %383 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %384 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %382, <2 x i64> noundef %383)
  store <2 x i64> %384, ptr %30, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %31) #3
  %385 = load <2 x i64>, ptr %30, align 16, !tbaa !5
  %386 = bitcast <2 x i64> %385 to <16 x i8>
  %387 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %386, <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>
  %388 = bitcast <16 x i8> %387 to <2 x i64>
  %389 = load <2 x i64>, ptr %30, align 16, !tbaa !5
  %390 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %388, <2 x i64> noundef %389)
  store <2 x i64> %390, ptr %31, align 16, !tbaa !5
  %391 = load <2 x i64>, ptr %31, align 16, !tbaa !5
  %392 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %393 = bitcast <2 x i64> %392 to <4 x i32>
  %394 = shufflevector <4 x i32> %393, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %395 = bitcast <4 x i32> %394 to <2 x i64>
  %396 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %391, <2 x i64> noundef %395)
  store <2 x i64> %396, 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 %397

397:                                              ; preds = %378
  br label %398

398:                                              ; preds = %397
  %399 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %399, ptr %4, align 16, !tbaa !5
  %400 = load ptr, ptr %7, align 8, !tbaa !8
  %401 = getelementptr inbounds <2 x i64>, ptr %400, i32 1
  store ptr %401, ptr %7, align 8, !tbaa !8
  %402 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %400, <2 x i64> noundef %402)
  %403 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %404 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %403, i32 noundef 4)
  store <2 x i64> %404, ptr %10, align 16, !tbaa !5
  %405 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %406 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %407 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %405, <2 x i64> noundef %406)
  store <2 x i64> %407, ptr %9, align 16, !tbaa !5
  br label %408

408:                                              ; preds = %398
  call void @llvm.lifetime.start.p0(i64 16, ptr %32) #3
  %409 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %410 = bitcast <2 x i64> %409 to <16 x i8>
  %411 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %410, <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>
  %412 = bitcast <16 x i8> %411 to <2 x i64>
  %413 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %414 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %412, <2 x i64> noundef %413)
  store <2 x i64> %414, ptr %32, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %33) #3
  %415 = load <2 x i64>, ptr %32, align 16, !tbaa !5
  %416 = bitcast <2 x i64> %415 to <16 x i8>
  %417 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %416, <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>
  %418 = bitcast <16 x i8> %417 to <2 x i64>
  %419 = load <2 x i64>, ptr %32, align 16, !tbaa !5
  %420 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %418, <2 x i64> noundef %419)
  store <2 x i64> %420, ptr %33, align 16, !tbaa !5
  %421 = load <2 x i64>, ptr %33, align 16, !tbaa !5
  %422 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %423 = bitcast <2 x i64> %422 to <4 x i32>
  %424 = shufflevector <4 x i32> %423, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %425 = bitcast <4 x i32> %424 to <2 x i64>
  %426 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %421, <2 x i64> noundef %425)
  store <2 x i64> %426, 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 %427

427:                                              ; preds = %408
  br label %428

428:                                              ; preds = %427
  %429 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %429, ptr %4, align 16, !tbaa !5
  %430 = load ptr, ptr %7, align 8, !tbaa !8
  %431 = getelementptr inbounds <2 x i64>, ptr %430, i32 1
  store ptr %431, ptr %7, align 8, !tbaa !8
  %432 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %430, <2 x i64> noundef %432)
  %433 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %434 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %433, i32 noundef 14)
  store <2 x i64> %434, ptr %10, align 16, !tbaa !5
  %435 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %436 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %437 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %435, <2 x i64> noundef %436)
  store <2 x i64> %437, ptr %9, align 16, !tbaa !5
  br label %438

438:                                              ; preds = %428
  call void @llvm.lifetime.start.p0(i64 16, ptr %34) #3
  %439 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %440 = bitcast <2 x i64> %439 to <16 x i8>
  %441 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %440, <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>
  %442 = bitcast <16 x i8> %441 to <2 x i64>
  %443 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %444 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %442, <2 x i64> noundef %443)
  store <2 x i64> %444, ptr %34, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %35) #3
  %445 = load <2 x i64>, ptr %34, align 16, !tbaa !5
  %446 = bitcast <2 x i64> %445 to <16 x i8>
  %447 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %446, <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>
  %448 = bitcast <16 x i8> %447 to <2 x i64>
  %449 = load <2 x i64>, ptr %34, align 16, !tbaa !5
  %450 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %448, <2 x i64> noundef %449)
  store <2 x i64> %450, ptr %35, align 16, !tbaa !5
  %451 = load <2 x i64>, ptr %35, align 16, !tbaa !5
  %452 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %453 = bitcast <2 x i64> %452 to <4 x i32>
  %454 = shufflevector <4 x i32> %453, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %455 = bitcast <4 x i32> %454 to <2 x i64>
  %456 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %451, <2 x i64> noundef %455)
  store <2 x i64> %456, 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 %457

457:                                              ; preds = %438
  br label %458

458:                                              ; preds = %457
  %459 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %459, ptr %4, align 16, !tbaa !5
  %460 = load ptr, ptr %7, align 8, !tbaa !8
  %461 = getelementptr inbounds <2 x i64>, ptr %460, i32 1
  store ptr %461, ptr %7, align 8, !tbaa !8
  %462 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %460, <2 x i64> noundef %462)
  %463 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %464 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %463, i32 noundef 24)
  store <2 x i64> %464, ptr %10, align 16, !tbaa !5
  %465 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %465, ptr %9, align 16, !tbaa !5
  %466 = load ptr, ptr %5, align 8, !tbaa !8
  %467 = getelementptr inbounds <2 x i64>, ptr %466, i32 1
  store ptr %467, ptr %5, align 8, !tbaa !8
  %468 = load ptr, ptr %5, align 8, !tbaa !8
  %469 = call <2 x i64> @_mm_loadu_si128(ptr noundef %468)
  store <2 x i64> %469, ptr %8, align 16, !tbaa !5
  %470 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %471 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %472 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %471, i32 noundef 8)
  %473 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %474 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %472, <2 x i64> noundef %473)
  %475 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %470, <2 x i64> noundef %474)
  store <2 x i64> %475, ptr %9, align 16, !tbaa !5
  br label %476

476:                                              ; preds = %458
  call void @llvm.lifetime.start.p0(i64 16, ptr %36) #3
  %477 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %478 = bitcast <2 x i64> %477 to <16 x i8>
  %479 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %478, <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>
  %480 = bitcast <16 x i8> %479 to <2 x i64>
  %481 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %482 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %480, <2 x i64> noundef %481)
  store <2 x i64> %482, ptr %36, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %37) #3
  %483 = load <2 x i64>, ptr %36, align 16, !tbaa !5
  %484 = bitcast <2 x i64> %483 to <16 x i8>
  %485 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %484, <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>
  %486 = bitcast <16 x i8> %485 to <2 x i64>
  %487 = load <2 x i64>, ptr %36, align 16, !tbaa !5
  %488 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %486, <2 x i64> noundef %487)
  store <2 x i64> %488, ptr %37, align 16, !tbaa !5
  %489 = load <2 x i64>, ptr %37, align 16, !tbaa !5
  %490 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %491 = bitcast <2 x i64> %490 to <4 x i32>
  %492 = shufflevector <4 x i32> %491, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %493 = bitcast <4 x i32> %492 to <2 x i64>
  %494 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %489, <2 x i64> noundef %493)
  store <2 x i64> %494, 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 %495

495:                                              ; preds = %476
  br label %496

496:                                              ; preds = %495
  %497 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %497, ptr %4, align 16, !tbaa !5
  %498 = load ptr, ptr %7, align 8, !tbaa !8
  %499 = getelementptr inbounds <2 x i64>, ptr %498, i32 1
  store ptr %499, ptr %7, align 8, !tbaa !8
  %500 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %498, <2 x i64> noundef %500)
  %501 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %502 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %501, i32 noundef 2)
  store <2 x i64> %502, ptr %10, align 16, !tbaa !5
  %503 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %504 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %505 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %503, <2 x i64> noundef %504)
  store <2 x i64> %505, ptr %9, align 16, !tbaa !5
  br label %506

506:                                              ; preds = %496
  call void @llvm.lifetime.start.p0(i64 16, ptr %38) #3
  %507 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %508 = bitcast <2 x i64> %507 to <16 x i8>
  %509 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %508, <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>
  %510 = bitcast <16 x i8> %509 to <2 x i64>
  %511 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %512 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %510, <2 x i64> noundef %511)
  store <2 x i64> %512, ptr %38, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %39) #3
  %513 = load <2 x i64>, ptr %38, align 16, !tbaa !5
  %514 = bitcast <2 x i64> %513 to <16 x i8>
  %515 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %514, <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>
  %516 = bitcast <16 x i8> %515 to <2 x i64>
  %517 = load <2 x i64>, ptr %38, align 16, !tbaa !5
  %518 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %516, <2 x i64> noundef %517)
  store <2 x i64> %518, ptr %39, align 16, !tbaa !5
  %519 = load <2 x i64>, ptr %39, align 16, !tbaa !5
  %520 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %521 = bitcast <2 x i64> %520 to <4 x i32>
  %522 = shufflevector <4 x i32> %521, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %523 = bitcast <4 x i32> %522 to <2 x i64>
  %524 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %519, <2 x i64> noundef %523)
  store <2 x i64> %524, 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 %525

525:                                              ; preds = %506
  br label %526

526:                                              ; preds = %525
  %527 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %527, ptr %4, align 16, !tbaa !5
  %528 = load ptr, ptr %7, align 8, !tbaa !8
  %529 = getelementptr inbounds <2 x i64>, ptr %528, i32 1
  store ptr %529, ptr %7, align 8, !tbaa !8
  %530 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %528, <2 x i64> noundef %530)
  %531 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %532 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %531, i32 noundef 12)
  store <2 x i64> %532, ptr %10, align 16, !tbaa !5
  %533 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %534 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %535 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %533, <2 x i64> noundef %534)
  store <2 x i64> %535, ptr %9, align 16, !tbaa !5
  br label %536

536:                                              ; preds = %526
  call void @llvm.lifetime.start.p0(i64 16, ptr %40) #3
  %537 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %538 = bitcast <2 x i64> %537 to <16 x i8>
  %539 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %538, <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>
  %540 = bitcast <16 x i8> %539 to <2 x i64>
  %541 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %542 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %540, <2 x i64> noundef %541)
  store <2 x i64> %542, ptr %40, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %41) #3
  %543 = load <2 x i64>, ptr %40, align 16, !tbaa !5
  %544 = bitcast <2 x i64> %543 to <16 x i8>
  %545 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %544, <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>
  %546 = bitcast <16 x i8> %545 to <2 x i64>
  %547 = load <2 x i64>, ptr %40, align 16, !tbaa !5
  %548 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %546, <2 x i64> noundef %547)
  store <2 x i64> %548, ptr %41, align 16, !tbaa !5
  %549 = load <2 x i64>, ptr %41, align 16, !tbaa !5
  %550 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %551 = bitcast <2 x i64> %550 to <4 x i32>
  %552 = shufflevector <4 x i32> %551, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %553 = bitcast <4 x i32> %552 to <2 x i64>
  %554 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %549, <2 x i64> noundef %553)
  store <2 x i64> %554, 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 %555

555:                                              ; preds = %536
  br label %556

556:                                              ; preds = %555
  %557 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %557, ptr %4, align 16, !tbaa !5
  %558 = load ptr, ptr %7, align 8, !tbaa !8
  %559 = getelementptr inbounds <2 x i64>, ptr %558, i32 1
  store ptr %559, ptr %7, align 8, !tbaa !8
  %560 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %558, <2 x i64> noundef %560)
  %561 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %562 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %561, i32 noundef 22)
  store <2 x i64> %562, ptr %10, align 16, !tbaa !5
  %563 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %563, ptr %9, align 16, !tbaa !5
  %564 = load ptr, ptr %5, align 8, !tbaa !8
  %565 = getelementptr inbounds <2 x i64>, ptr %564, i32 1
  store ptr %565, ptr %5, align 8, !tbaa !8
  %566 = load ptr, ptr %5, align 8, !tbaa !8
  %567 = call <2 x i64> @_mm_loadu_si128(ptr noundef %566)
  store <2 x i64> %567, ptr %8, align 16, !tbaa !5
  br label %568

568:                                              ; preds = %556
  call void @llvm.lifetime.start.p0(i64 16, ptr %42) #3
  %569 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %570 = bitcast <2 x i64> %569 to <16 x i8>
  %571 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %570, <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>
  %572 = bitcast <16 x i8> %571 to <2 x i64>
  %573 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %574 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %572, <2 x i64> noundef %573)
  store <2 x i64> %574, ptr %42, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %43) #3
  %575 = load <2 x i64>, ptr %42, align 16, !tbaa !5
  %576 = bitcast <2 x i64> %575 to <16 x i8>
  %577 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %576, <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>
  %578 = bitcast <16 x i8> %577 to <2 x i64>
  %579 = load <2 x i64>, ptr %42, align 16, !tbaa !5
  %580 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %578, <2 x i64> noundef %579)
  store <2 x i64> %580, ptr %43, align 16, !tbaa !5
  %581 = load <2 x i64>, ptr %43, align 16, !tbaa !5
  %582 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %583 = bitcast <2 x i64> %582 to <4 x i32>
  %584 = shufflevector <4 x i32> %583, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %585 = bitcast <4 x i32> %584 to <2 x i64>
  %586 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %581, <2 x i64> noundef %585)
  store <2 x i64> %586, 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 %587

587:                                              ; preds = %568
  br label %588

588:                                              ; preds = %587
  %589 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %589, ptr %4, align 16, !tbaa !5
  %590 = load ptr, ptr %7, align 8, !tbaa !8
  %591 = getelementptr inbounds <2 x i64>, ptr %590, i32 1
  store ptr %591, ptr %7, align 8, !tbaa !8
  %592 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %590, <2 x i64> noundef %592)
  %593 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  store <2 x i64> %593, ptr %10, align 16, !tbaa !5
  %594 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %595 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %596 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %594, <2 x i64> noundef %595)
  store <2 x i64> %596, ptr %9, align 16, !tbaa !5
  br label %597

597:                                              ; preds = %588
  call void @llvm.lifetime.start.p0(i64 16, ptr %44) #3
  %598 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %599 = bitcast <2 x i64> %598 to <16 x i8>
  %600 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %599, <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>
  %601 = bitcast <16 x i8> %600 to <2 x i64>
  %602 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %603 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %601, <2 x i64> noundef %602)
  store <2 x i64> %603, ptr %44, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %45) #3
  %604 = load <2 x i64>, ptr %44, align 16, !tbaa !5
  %605 = bitcast <2 x i64> %604 to <16 x i8>
  %606 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %605, <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>
  %607 = bitcast <16 x i8> %606 to <2 x i64>
  %608 = load <2 x i64>, ptr %44, align 16, !tbaa !5
  %609 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %607, <2 x i64> noundef %608)
  store <2 x i64> %609, ptr %45, align 16, !tbaa !5
  %610 = load <2 x i64>, ptr %45, align 16, !tbaa !5
  %611 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %612 = bitcast <2 x i64> %611 to <4 x i32>
  %613 = shufflevector <4 x i32> %612, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %614 = bitcast <4 x i32> %613 to <2 x i64>
  %615 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %610, <2 x i64> noundef %614)
  store <2 x i64> %615, 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 %616

616:                                              ; preds = %597
  br label %617

617:                                              ; preds = %616
  %618 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %618, ptr %4, align 16, !tbaa !5
  %619 = load ptr, ptr %7, align 8, !tbaa !8
  %620 = getelementptr inbounds <2 x i64>, ptr %619, i32 1
  store ptr %620, ptr %7, align 8, !tbaa !8
  %621 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %619, <2 x i64> noundef %621)
  %622 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %623 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %622, i32 noundef 10)
  store <2 x i64> %623, ptr %10, align 16, !tbaa !5
  %624 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %625 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %626 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %624, <2 x i64> noundef %625)
  store <2 x i64> %626, ptr %9, align 16, !tbaa !5
  br label %627

627:                                              ; preds = %617
  call void @llvm.lifetime.start.p0(i64 16, ptr %46) #3
  %628 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %629 = bitcast <2 x i64> %628 to <16 x i8>
  %630 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %629, <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>
  %631 = bitcast <16 x i8> %630 to <2 x i64>
  %632 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %633 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %631, <2 x i64> noundef %632)
  store <2 x i64> %633, ptr %46, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %47) #3
  %634 = load <2 x i64>, ptr %46, align 16, !tbaa !5
  %635 = bitcast <2 x i64> %634 to <16 x i8>
  %636 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %635, <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>
  %637 = bitcast <16 x i8> %636 to <2 x i64>
  %638 = load <2 x i64>, ptr %46, align 16, !tbaa !5
  %639 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %637, <2 x i64> noundef %638)
  store <2 x i64> %639, ptr %47, align 16, !tbaa !5
  %640 = load <2 x i64>, ptr %47, align 16, !tbaa !5
  %641 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %642 = bitcast <2 x i64> %641 to <4 x i32>
  %643 = shufflevector <4 x i32> %642, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %644 = bitcast <4 x i32> %643 to <2 x i64>
  %645 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %640, <2 x i64> noundef %644)
  store <2 x i64> %645, 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 %646

646:                                              ; preds = %627
  br label %647

647:                                              ; preds = %646
  %648 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %648, ptr %4, align 16, !tbaa !5
  %649 = load ptr, ptr %7, align 8, !tbaa !8
  %650 = getelementptr inbounds <2 x i64>, ptr %649, i32 1
  store ptr %650, ptr %7, align 8, !tbaa !8
  %651 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %649, <2 x i64> noundef %651)
  %652 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %653 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %652, i32 noundef 20)
  store <2 x i64> %653, ptr %10, align 16, !tbaa !5
  %654 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %655 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %656 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %654, <2 x i64> noundef %655)
  store <2 x i64> %656, ptr %9, align 16, !tbaa !5
  br label %657

657:                                              ; preds = %647
  call void @llvm.lifetime.start.p0(i64 16, ptr %48) #3
  %658 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %659 = bitcast <2 x i64> %658 to <16 x i8>
  %660 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %659, <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>
  %661 = bitcast <16 x i8> %660 to <2 x i64>
  %662 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %663 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %661, <2 x i64> noundef %662)
  store <2 x i64> %663, ptr %48, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %49) #3
  %664 = load <2 x i64>, ptr %48, align 16, !tbaa !5
  %665 = bitcast <2 x i64> %664 to <16 x i8>
  %666 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %665, <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>
  %667 = bitcast <16 x i8> %666 to <2 x i64>
  %668 = load <2 x i64>, ptr %48, align 16, !tbaa !5
  %669 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %667, <2 x i64> noundef %668)
  store <2 x i64> %669, ptr %49, align 16, !tbaa !5
  %670 = load <2 x i64>, ptr %49, align 16, !tbaa !5
  %671 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %672 = bitcast <2 x i64> %671 to <4 x i32>
  %673 = shufflevector <4 x i32> %672, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %674 = bitcast <4 x i32> %673 to <2 x i64>
  %675 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %670, <2 x i64> noundef %674)
  store <2 x i64> %675, 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 %676

676:                                              ; preds = %657
  br label %677

677:                                              ; preds = %676
  %678 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %678, ptr %4, align 16, !tbaa !5
  %679 = load ptr, ptr %7, align 8, !tbaa !8
  %680 = getelementptr inbounds <2 x i64>, ptr %679, i32 1
  store ptr %680, ptr %7, align 8, !tbaa !8
  %681 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %679, <2 x i64> noundef %681)
  %682 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %683 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %682, i32 noundef 30)
  store <2 x i64> %683, ptr %10, align 16, !tbaa !5
  %684 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %684, ptr %9, align 16, !tbaa !5
  %685 = load ptr, ptr %5, align 8, !tbaa !8
  %686 = getelementptr inbounds <2 x i64>, ptr %685, i32 1
  store ptr %686, ptr %5, align 8, !tbaa !8
  %687 = load ptr, ptr %5, align 8, !tbaa !8
  %688 = call <2 x i64> @_mm_loadu_si128(ptr noundef %687)
  store <2 x i64> %688, ptr %8, align 16, !tbaa !5
  %689 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %690 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %691 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %690, i32 noundef 2)
  %692 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %693 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %691, <2 x i64> noundef %692)
  %694 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %689, <2 x i64> noundef %693)
  store <2 x i64> %694, ptr %9, align 16, !tbaa !5
  br label %695

695:                                              ; preds = %677
  call void @llvm.lifetime.start.p0(i64 16, ptr %50) #3
  %696 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %697 = bitcast <2 x i64> %696 to <16 x i8>
  %698 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %697, <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>
  %699 = bitcast <16 x i8> %698 to <2 x i64>
  %700 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %701 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %699, <2 x i64> noundef %700)
  store <2 x i64> %701, ptr %50, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %51) #3
  %702 = load <2 x i64>, ptr %50, align 16, !tbaa !5
  %703 = bitcast <2 x i64> %702 to <16 x i8>
  %704 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %703, <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>
  %705 = bitcast <16 x i8> %704 to <2 x i64>
  %706 = load <2 x i64>, ptr %50, align 16, !tbaa !5
  %707 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %705, <2 x i64> noundef %706)
  store <2 x i64> %707, ptr %51, align 16, !tbaa !5
  %708 = load <2 x i64>, ptr %51, align 16, !tbaa !5
  %709 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %710 = bitcast <2 x i64> %709 to <4 x i32>
  %711 = shufflevector <4 x i32> %710, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %712 = bitcast <4 x i32> %711 to <2 x i64>
  %713 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %708, <2 x i64> noundef %712)
  store <2 x i64> %713, 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 %714

714:                                              ; preds = %695
  br label %715

715:                                              ; preds = %714
  %716 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %716, ptr %4, align 16, !tbaa !5
  %717 = load ptr, ptr %7, align 8, !tbaa !8
  %718 = getelementptr inbounds <2 x i64>, ptr %717, i32 1
  store ptr %718, ptr %7, align 8, !tbaa !8
  %719 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %717, <2 x i64> noundef %719)
  %720 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %721 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %720, i32 noundef 8)
  store <2 x i64> %721, ptr %10, align 16, !tbaa !5
  %722 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %723 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %724 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %722, <2 x i64> noundef %723)
  store <2 x i64> %724, ptr %9, align 16, !tbaa !5
  br label %725

725:                                              ; preds = %715
  call void @llvm.lifetime.start.p0(i64 16, ptr %52) #3
  %726 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %727 = bitcast <2 x i64> %726 to <16 x i8>
  %728 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %727, <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>
  %729 = bitcast <16 x i8> %728 to <2 x i64>
  %730 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %731 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %729, <2 x i64> noundef %730)
  store <2 x i64> %731, ptr %52, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %53) #3
  %732 = load <2 x i64>, ptr %52, align 16, !tbaa !5
  %733 = bitcast <2 x i64> %732 to <16 x i8>
  %734 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %733, <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>
  %735 = bitcast <16 x i8> %734 to <2 x i64>
  %736 = load <2 x i64>, ptr %52, align 16, !tbaa !5
  %737 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %735, <2 x i64> noundef %736)
  store <2 x i64> %737, ptr %53, align 16, !tbaa !5
  %738 = load <2 x i64>, ptr %53, align 16, !tbaa !5
  %739 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %740 = bitcast <2 x i64> %739 to <4 x i32>
  %741 = shufflevector <4 x i32> %740, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %742 = bitcast <4 x i32> %741 to <2 x i64>
  %743 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %738, <2 x i64> noundef %742)
  store <2 x i64> %743, 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 %744

744:                                              ; preds = %725
  br label %745

745:                                              ; preds = %744
  %746 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %746, ptr %4, align 16, !tbaa !5
  %747 = load ptr, ptr %7, align 8, !tbaa !8
  %748 = getelementptr inbounds <2 x i64>, ptr %747, i32 1
  store ptr %748, ptr %7, align 8, !tbaa !8
  %749 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %747, <2 x i64> noundef %749)
  %750 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %751 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %750, i32 noundef 18)
  store <2 x i64> %751, ptr %10, align 16, !tbaa !5
  %752 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %753 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %754 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %752, <2 x i64> noundef %753)
  store <2 x i64> %754, ptr %9, align 16, !tbaa !5
  br label %755

755:                                              ; preds = %745
  call void @llvm.lifetime.start.p0(i64 16, ptr %54) #3
  %756 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %757 = bitcast <2 x i64> %756 to <16 x i8>
  %758 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %757, <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>
  %759 = bitcast <16 x i8> %758 to <2 x i64>
  %760 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %761 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %759, <2 x i64> noundef %760)
  store <2 x i64> %761, ptr %54, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %55) #3
  %762 = load <2 x i64>, ptr %54, align 16, !tbaa !5
  %763 = bitcast <2 x i64> %762 to <16 x i8>
  %764 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %763, <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>
  %765 = bitcast <16 x i8> %764 to <2 x i64>
  %766 = load <2 x i64>, ptr %54, align 16, !tbaa !5
  %767 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %765, <2 x i64> noundef %766)
  store <2 x i64> %767, ptr %55, align 16, !tbaa !5
  %768 = load <2 x i64>, ptr %55, align 16, !tbaa !5
  %769 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %770 = bitcast <2 x i64> %769 to <4 x i32>
  %771 = shufflevector <4 x i32> %770, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %772 = bitcast <4 x i32> %771 to <2 x i64>
  %773 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %768, <2 x i64> noundef %772)
  store <2 x i64> %773, 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 %774

774:                                              ; preds = %755
  br label %775

775:                                              ; preds = %774
  %776 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %776, ptr %4, align 16, !tbaa !5
  %777 = load ptr, ptr %7, align 8, !tbaa !8
  %778 = getelementptr inbounds <2 x i64>, ptr %777, i32 1
  store ptr %778, ptr %7, align 8, !tbaa !8
  %779 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %777, <2 x i64> noundef %779)
  %780 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %781 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %780, i32 noundef 28)
  store <2 x i64> %781, ptr %10, align 16, !tbaa !5
  %782 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %782, ptr %9, align 16, !tbaa !5
  %783 = load ptr, ptr %5, align 8, !tbaa !8
  %784 = getelementptr inbounds <2 x i64>, ptr %783, i32 1
  store ptr %784, ptr %5, align 8, !tbaa !8
  %785 = load ptr, ptr %5, align 8, !tbaa !8
  %786 = call <2 x i64> @_mm_loadu_si128(ptr noundef %785)
  store <2 x i64> %786, ptr %8, align 16, !tbaa !5
  %787 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %788 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %789 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %788, i32 noundef 4)
  %790 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %791 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %789, <2 x i64> noundef %790)
  %792 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %787, <2 x i64> noundef %791)
  store <2 x i64> %792, ptr %9, align 16, !tbaa !5
  br label %793

793:                                              ; preds = %775
  call void @llvm.lifetime.start.p0(i64 16, ptr %56) #3
  %794 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %795 = bitcast <2 x i64> %794 to <16 x i8>
  %796 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %795, <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>
  %797 = bitcast <16 x i8> %796 to <2 x i64>
  %798 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %799 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %797, <2 x i64> noundef %798)
  store <2 x i64> %799, ptr %56, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %57) #3
  %800 = load <2 x i64>, ptr %56, align 16, !tbaa !5
  %801 = bitcast <2 x i64> %800 to <16 x i8>
  %802 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %801, <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>
  %803 = bitcast <16 x i8> %802 to <2 x i64>
  %804 = load <2 x i64>, ptr %56, align 16, !tbaa !5
  %805 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %803, <2 x i64> noundef %804)
  store <2 x i64> %805, ptr %57, align 16, !tbaa !5
  %806 = load <2 x i64>, ptr %57, align 16, !tbaa !5
  %807 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %808 = bitcast <2 x i64> %807 to <4 x i32>
  %809 = shufflevector <4 x i32> %808, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %810 = bitcast <4 x i32> %809 to <2 x i64>
  %811 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %806, <2 x i64> noundef %810)
  store <2 x i64> %811, 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 %812

812:                                              ; preds = %793
  br label %813

813:                                              ; preds = %812
  %814 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %814, ptr %4, align 16, !tbaa !5
  %815 = load ptr, ptr %7, align 8, !tbaa !8
  %816 = getelementptr inbounds <2 x i64>, ptr %815, i32 1
  store ptr %816, ptr %7, align 8, !tbaa !8
  %817 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %815, <2 x i64> noundef %817)
  %818 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %819 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %818, i32 noundef 6)
  store <2 x i64> %819, ptr %10, align 16, !tbaa !5
  %820 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %821 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %822 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %820, <2 x i64> noundef %821)
  store <2 x i64> %822, ptr %9, align 16, !tbaa !5
  br label %823

823:                                              ; preds = %813
  call void @llvm.lifetime.start.p0(i64 16, ptr %58) #3
  %824 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %825 = bitcast <2 x i64> %824 to <16 x i8>
  %826 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %825, <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>
  %827 = bitcast <16 x i8> %826 to <2 x i64>
  %828 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %829 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %827, <2 x i64> noundef %828)
  store <2 x i64> %829, ptr %58, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %59) #3
  %830 = load <2 x i64>, ptr %58, align 16, !tbaa !5
  %831 = bitcast <2 x i64> %830 to <16 x i8>
  %832 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %831, <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>
  %833 = bitcast <16 x i8> %832 to <2 x i64>
  %834 = load <2 x i64>, ptr %58, align 16, !tbaa !5
  %835 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %833, <2 x i64> noundef %834)
  store <2 x i64> %835, ptr %59, align 16, !tbaa !5
  %836 = load <2 x i64>, ptr %59, align 16, !tbaa !5
  %837 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %838 = bitcast <2 x i64> %837 to <4 x i32>
  %839 = shufflevector <4 x i32> %838, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %840 = bitcast <4 x i32> %839 to <2 x i64>
  %841 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %836, <2 x i64> noundef %840)
  store <2 x i64> %841, 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 %842

842:                                              ; preds = %823
  br label %843

843:                                              ; preds = %842
  %844 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %844, ptr %4, align 16, !tbaa !5
  %845 = load ptr, ptr %7, align 8, !tbaa !8
  %846 = getelementptr inbounds <2 x i64>, ptr %845, i32 1
  store ptr %846, ptr %7, align 8, !tbaa !8
  %847 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %845, <2 x i64> noundef %847)
  %848 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %849 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %848, i32 noundef 16)
  store <2 x i64> %849, ptr %10, align 16, !tbaa !5
  %850 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %851 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %852 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %850, <2 x i64> noundef %851)
  store <2 x i64> %852, ptr %9, align 16, !tbaa !5
  br label %853

853:                                              ; preds = %843
  call void @llvm.lifetime.start.p0(i64 16, ptr %60) #3
  %854 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %855 = bitcast <2 x i64> %854 to <16 x i8>
  %856 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %855, <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>
  %857 = bitcast <16 x i8> %856 to <2 x i64>
  %858 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %859 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %857, <2 x i64> noundef %858)
  store <2 x i64> %859, ptr %60, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %61) #3
  %860 = load <2 x i64>, ptr %60, align 16, !tbaa !5
  %861 = bitcast <2 x i64> %860 to <16 x i8>
  %862 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %861, <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>
  %863 = bitcast <16 x i8> %862 to <2 x i64>
  %864 = load <2 x i64>, ptr %60, align 16, !tbaa !5
  %865 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %863, <2 x i64> noundef %864)
  store <2 x i64> %865, ptr %61, align 16, !tbaa !5
  %866 = load <2 x i64>, ptr %61, align 16, !tbaa !5
  %867 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %868 = bitcast <2 x i64> %867 to <4 x i32>
  %869 = shufflevector <4 x i32> %868, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %870 = bitcast <4 x i32> %869 to <2 x i64>
  %871 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %866, <2 x i64> noundef %870)
  store <2 x i64> %871, 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 %872

872:                                              ; preds = %853
  br label %873

873:                                              ; preds = %872
  %874 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %874, ptr %4, align 16, !tbaa !5
  %875 = load ptr, ptr %7, align 8, !tbaa !8
  %876 = getelementptr inbounds <2 x i64>, ptr %875, i32 1
  store ptr %876, ptr %7, align 8, !tbaa !8
  %877 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %875, <2 x i64> noundef %877)
  %878 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %879 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %878, i32 noundef 26)
  store <2 x i64> %879, ptr %10, align 16, !tbaa !5
  %880 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %880, ptr %9, align 16, !tbaa !5
  %881 = load ptr, ptr %5, align 8, !tbaa !8
  %882 = getelementptr inbounds <2 x i64>, ptr %881, i32 1
  store ptr %882, ptr %5, align 8, !tbaa !8
  %883 = load ptr, ptr %5, align 8, !tbaa !8
  %884 = call <2 x i64> @_mm_loadu_si128(ptr noundef %883)
  store <2 x i64> %884, ptr %8, align 16, !tbaa !5
  %885 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %886 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %887 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %886, i32 noundef 6)
  %888 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %889 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %887, <2 x i64> noundef %888)
  %890 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %885, <2 x i64> noundef %889)
  store <2 x i64> %890, ptr %9, align 16, !tbaa !5
  br label %891

891:                                              ; preds = %873
  call void @llvm.lifetime.start.p0(i64 16, ptr %62) #3
  %892 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %893 = bitcast <2 x i64> %892 to <16 x i8>
  %894 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %893, <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>
  %895 = bitcast <16 x i8> %894 to <2 x i64>
  %896 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %897 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %895, <2 x i64> noundef %896)
  store <2 x i64> %897, ptr %62, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %63) #3
  %898 = load <2 x i64>, ptr %62, align 16, !tbaa !5
  %899 = bitcast <2 x i64> %898 to <16 x i8>
  %900 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %899, <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>
  %901 = bitcast <16 x i8> %900 to <2 x i64>
  %902 = load <2 x i64>, ptr %62, align 16, !tbaa !5
  %903 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %901, <2 x i64> noundef %902)
  store <2 x i64> %903, ptr %63, align 16, !tbaa !5
  %904 = load <2 x i64>, ptr %63, align 16, !tbaa !5
  %905 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %906 = bitcast <2 x i64> %905 to <4 x i32>
  %907 = shufflevector <4 x i32> %906, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %908 = bitcast <4 x i32> %907 to <2 x i64>
  %909 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %904, <2 x i64> noundef %908)
  store <2 x i64> %909, 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 %910

910:                                              ; preds = %891
  br label %911

911:                                              ; preds = %910
  %912 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %912, ptr %4, align 16, !tbaa !5
  %913 = load ptr, ptr %7, align 8, !tbaa !8
  %914 = getelementptr inbounds <2 x i64>, ptr %913, i32 1
  store ptr %914, ptr %7, align 8, !tbaa !8
  %915 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %913, <2 x i64> noundef %915)
  %916 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %917 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %916, i32 noundef 4)
  store <2 x i64> %917, ptr %10, align 16, !tbaa !5
  %918 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %919 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %920 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %918, <2 x i64> noundef %919)
  store <2 x i64> %920, ptr %9, align 16, !tbaa !5
  br label %921

921:                                              ; preds = %911
  call void @llvm.lifetime.start.p0(i64 16, ptr %64) #3
  %922 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %923 = bitcast <2 x i64> %922 to <16 x i8>
  %924 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %923, <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>
  %925 = bitcast <16 x i8> %924 to <2 x i64>
  %926 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %927 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %925, <2 x i64> noundef %926)
  store <2 x i64> %927, ptr %64, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %65) #3
  %928 = load <2 x i64>, ptr %64, align 16, !tbaa !5
  %929 = bitcast <2 x i64> %928 to <16 x i8>
  %930 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %929, <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>
  %931 = bitcast <16 x i8> %930 to <2 x i64>
  %932 = load <2 x i64>, ptr %64, align 16, !tbaa !5
  %933 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %931, <2 x i64> noundef %932)
  store <2 x i64> %933, ptr %65, align 16, !tbaa !5
  %934 = load <2 x i64>, ptr %65, align 16, !tbaa !5
  %935 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %936 = bitcast <2 x i64> %935 to <4 x i32>
  %937 = shufflevector <4 x i32> %936, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %938 = bitcast <4 x i32> %937 to <2 x i64>
  %939 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %934, <2 x i64> noundef %938)
  store <2 x i64> %939, 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 %940

940:                                              ; preds = %921
  br label %941

941:                                              ; preds = %940
  %942 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %942, ptr %4, align 16, !tbaa !5
  %943 = load ptr, ptr %7, align 8, !tbaa !8
  %944 = getelementptr inbounds <2 x i64>, ptr %943, i32 1
  store ptr %944, ptr %7, align 8, !tbaa !8
  %945 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %943, <2 x i64> noundef %945)
  %946 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %947 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %946, i32 noundef 14)
  store <2 x i64> %947, ptr %10, align 16, !tbaa !5
  %948 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %949 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %950 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %948, <2 x i64> noundef %949)
  store <2 x i64> %950, ptr %9, align 16, !tbaa !5
  br label %951

951:                                              ; preds = %941
  call void @llvm.lifetime.start.p0(i64 16, ptr %66) #3
  %952 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %953 = bitcast <2 x i64> %952 to <16 x i8>
  %954 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %953, <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>
  %955 = bitcast <16 x i8> %954 to <2 x i64>
  %956 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %957 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %955, <2 x i64> noundef %956)
  store <2 x i64> %957, ptr %66, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %67) #3
  %958 = load <2 x i64>, ptr %66, align 16, !tbaa !5
  %959 = bitcast <2 x i64> %958 to <16 x i8>
  %960 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %959, <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>
  %961 = bitcast <16 x i8> %960 to <2 x i64>
  %962 = load <2 x i64>, ptr %66, align 16, !tbaa !5
  %963 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %961, <2 x i64> noundef %962)
  store <2 x i64> %963, ptr %67, align 16, !tbaa !5
  %964 = load <2 x i64>, ptr %67, align 16, !tbaa !5
  %965 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %966 = bitcast <2 x i64> %965 to <4 x i32>
  %967 = shufflevector <4 x i32> %966, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %968 = bitcast <4 x i32> %967 to <2 x i64>
  %969 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %964, <2 x i64> noundef %968)
  store <2 x i64> %969, 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 %970

970:                                              ; preds = %951
  br label %971

971:                                              ; preds = %970
  %972 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %972, ptr %4, align 16, !tbaa !5
  %973 = load ptr, ptr %7, align 8, !tbaa !8
  %974 = getelementptr inbounds <2 x i64>, ptr %973, i32 1
  store ptr %974, ptr %7, align 8, !tbaa !8
  %975 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %973, <2 x i64> noundef %975)
  %976 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %977 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %976, i32 noundef 24)
  store <2 x i64> %977, ptr %10, align 16, !tbaa !5
  %978 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %978, ptr %9, align 16, !tbaa !5
  %979 = load ptr, ptr %5, align 8, !tbaa !8
  %980 = getelementptr inbounds <2 x i64>, ptr %979, i32 1
  store ptr %980, ptr %5, align 8, !tbaa !8
  %981 = load ptr, ptr %5, align 8, !tbaa !8
  %982 = call <2 x i64> @_mm_loadu_si128(ptr noundef %981)
  store <2 x i64> %982, ptr %8, align 16, !tbaa !5
  %983 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %984 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %985 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %984, i32 noundef 8)
  %986 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %987 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %985, <2 x i64> noundef %986)
  %988 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %983, <2 x i64> noundef %987)
  store <2 x i64> %988, ptr %9, align 16, !tbaa !5
  br label %989

989:                                              ; preds = %971
  call void @llvm.lifetime.start.p0(i64 16, ptr %68) #3
  %990 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %991 = bitcast <2 x i64> %990 to <16 x i8>
  %992 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %991, <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>
  %993 = bitcast <16 x i8> %992 to <2 x i64>
  %994 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %995 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %993, <2 x i64> noundef %994)
  store <2 x i64> %995, ptr %68, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %69) #3
  %996 = load <2 x i64>, ptr %68, align 16, !tbaa !5
  %997 = bitcast <2 x i64> %996 to <16 x i8>
  %998 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %997, <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>
  %999 = bitcast <16 x i8> %998 to <2 x i64>
  %1000 = load <2 x i64>, ptr %68, align 16, !tbaa !5
  %1001 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %999, <2 x i64> noundef %1000)
  store <2 x i64> %1001, ptr %69, align 16, !tbaa !5
  %1002 = load <2 x i64>, ptr %69, align 16, !tbaa !5
  %1003 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1004 = bitcast <2 x i64> %1003 to <4 x i32>
  %1005 = shufflevector <4 x i32> %1004, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1006 = bitcast <4 x i32> %1005 to <2 x i64>
  %1007 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1002, <2 x i64> noundef %1006)
  store <2 x i64> %1007, 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 %1008

1008:                                             ; preds = %989
  br label %1009

1009:                                             ; preds = %1008
  %1010 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1010, ptr %4, align 16, !tbaa !5
  %1011 = load ptr, ptr %7, align 8, !tbaa !8
  %1012 = getelementptr inbounds <2 x i64>, ptr %1011, i32 1
  store ptr %1012, ptr %7, align 8, !tbaa !8
  %1013 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1011, <2 x i64> noundef %1013)
  %1014 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1015 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1014, i32 noundef 2)
  store <2 x i64> %1015, ptr %10, align 16, !tbaa !5
  %1016 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %1017 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %1018 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %1016, <2 x i64> noundef %1017)
  store <2 x i64> %1018, ptr %9, align 16, !tbaa !5
  br label %1019

1019:                                             ; preds = %1009
  call void @llvm.lifetime.start.p0(i64 16, ptr %70) #3
  %1020 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1021 = bitcast <2 x i64> %1020 to <16 x i8>
  %1022 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1021, <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>
  %1023 = bitcast <16 x i8> %1022 to <2 x i64>
  %1024 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1025 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1023, <2 x i64> noundef %1024)
  store <2 x i64> %1025, ptr %70, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %71) #3
  %1026 = load <2 x i64>, ptr %70, align 16, !tbaa !5
  %1027 = bitcast <2 x i64> %1026 to <16 x i8>
  %1028 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1027, <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>
  %1029 = bitcast <16 x i8> %1028 to <2 x i64>
  %1030 = load <2 x i64>, ptr %70, align 16, !tbaa !5
  %1031 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1029, <2 x i64> noundef %1030)
  store <2 x i64> %1031, ptr %71, align 16, !tbaa !5
  %1032 = load <2 x i64>, ptr %71, align 16, !tbaa !5
  %1033 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1034 = bitcast <2 x i64> %1033 to <4 x i32>
  %1035 = shufflevector <4 x i32> %1034, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1036 = bitcast <4 x i32> %1035 to <2 x i64>
  %1037 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1032, <2 x i64> noundef %1036)
  store <2 x i64> %1037, 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 %1038

1038:                                             ; preds = %1019
  br label %1039

1039:                                             ; preds = %1038
  %1040 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1040, ptr %4, align 16, !tbaa !5
  %1041 = load ptr, ptr %7, align 8, !tbaa !8
  %1042 = getelementptr inbounds <2 x i64>, ptr %1041, i32 1
  store ptr %1042, ptr %7, align 8, !tbaa !8
  %1043 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1041, <2 x i64> noundef %1043)
  %1044 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1045 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1044, i32 noundef 12)
  store <2 x i64> %1045, ptr %10, align 16, !tbaa !5
  %1046 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %1047 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %1048 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %1046, <2 x i64> noundef %1047)
  store <2 x i64> %1048, ptr %9, align 16, !tbaa !5
  br label %1049

1049:                                             ; preds = %1039
  call void @llvm.lifetime.start.p0(i64 16, ptr %72) #3
  %1050 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1051 = bitcast <2 x i64> %1050 to <16 x i8>
  %1052 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1051, <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>
  %1053 = bitcast <16 x i8> %1052 to <2 x i64>
  %1054 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1055 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1053, <2 x i64> noundef %1054)
  store <2 x i64> %1055, ptr %72, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %73) #3
  %1056 = load <2 x i64>, ptr %72, align 16, !tbaa !5
  %1057 = bitcast <2 x i64> %1056 to <16 x i8>
  %1058 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1057, <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>
  %1059 = bitcast <16 x i8> %1058 to <2 x i64>
  %1060 = load <2 x i64>, ptr %72, align 16, !tbaa !5
  %1061 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1059, <2 x i64> noundef %1060)
  store <2 x i64> %1061, ptr %73, align 16, !tbaa !5
  %1062 = load <2 x i64>, ptr %73, align 16, !tbaa !5
  %1063 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1064 = bitcast <2 x i64> %1063 to <4 x i32>
  %1065 = shufflevector <4 x i32> %1064, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1066 = bitcast <4 x i32> %1065 to <2 x i64>
  %1067 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1062, <2 x i64> noundef %1066)
  store <2 x i64> %1067, 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 %1068

1068:                                             ; preds = %1049
  br label %1069

1069:                                             ; preds = %1068
  %1070 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1070, ptr %4, align 16, !tbaa !5
  %1071 = load ptr, ptr %7, align 8, !tbaa !8
  %1072 = getelementptr inbounds <2 x i64>, ptr %1071, i32 1
  store ptr %1072, ptr %7, align 8, !tbaa !8
  %1073 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1071, <2 x i64> noundef %1073)
  %1074 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1075 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1074, i32 noundef 22)
  store <2 x i64> %1075, ptr %10, align 16, !tbaa !5
  %1076 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %1076, ptr %9, align 16, !tbaa !5
  br label %1077

1077:                                             ; preds = %1069
  call void @llvm.lifetime.start.p0(i64 16, ptr %74) #3
  %1078 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1079 = bitcast <2 x i64> %1078 to <16 x i8>
  %1080 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1079, <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>
  %1081 = bitcast <16 x i8> %1080 to <2 x i64>
  %1082 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1083 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1081, <2 x i64> noundef %1082)
  store <2 x i64> %1083, ptr %74, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %75) #3
  %1084 = load <2 x i64>, ptr %74, align 16, !tbaa !5
  %1085 = bitcast <2 x i64> %1084 to <16 x i8>
  %1086 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1085, <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>
  %1087 = bitcast <16 x i8> %1086 to <2 x i64>
  %1088 = load <2 x i64>, ptr %74, align 16, !tbaa !5
  %1089 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1087, <2 x i64> noundef %1088)
  store <2 x i64> %1089, ptr %75, align 16, !tbaa !5
  %1090 = load <2 x i64>, ptr %75, align 16, !tbaa !5
  %1091 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1092 = bitcast <2 x i64> %1091 to <4 x i32>
  %1093 = shufflevector <4 x i32> %1092, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1094 = bitcast <4 x i32> %1093 to <2 x i64>
  %1095 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1090, <2 x i64> noundef %1094)
  store <2 x i64> %1095, 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 %1096

1096:                                             ; preds = %1077
  br label %1097

1097:                                             ; preds = %1096
  %1098 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1098, ptr %4, align 16, !tbaa !5
  %1099 = load ptr, ptr %7, align 8, !tbaa !8
  %1100 = getelementptr inbounds <2 x i64>, ptr %1099, i32 1
  store ptr %1100, ptr %7, align 8, !tbaa !8
  %1101 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1099, <2 x i64> noundef %1101)
  %1102 = 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> %1102
}

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

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