; 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> @iunpack9(<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 511)
  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 9)
  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 18)
  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 27)
  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 5)
  %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 4)
  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 13)
  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 22)
  store <2 x i64> %268, ptr %10, align 16, !tbaa !5
  %269 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %270 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %271 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %269, <2 x i64> noundef %270)
  store <2 x i64> %271, ptr %9, align 16, !tbaa !5
  br label %272

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

291:                                              ; preds = %272
  br label %292

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

310:                                              ; preds = %292
  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 8)
  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 17)
  store <2 x i64> %366, ptr %10, align 16, !tbaa !5
  %367 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %368 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %369 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %367, <2 x i64> noundef %368)
  store <2 x i64> %369, ptr %9, align 16, !tbaa !5
  br label %370

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

389:                                              ; preds = %370
  br label %390

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

408:                                              ; preds = %390
  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 3)
  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 12)
  store <2 x i64> %464, ptr %10, align 16, !tbaa !5
  %465 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %466 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %467 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %465, <2 x i64> noundef %466)
  store <2 x i64> %467, ptr %9, align 16, !tbaa !5
  br label %468

468:                                              ; preds = %458
  call void @llvm.lifetime.start.p0(i64 16, ptr %36) #3
  %469 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %470 = bitcast <2 x i64> %469 to <16 x i8>
  %471 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %470, <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>
  %472 = bitcast <16 x i8> %471 to <2 x i64>
  %473 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %474 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %472, <2 x i64> noundef %473)
  store <2 x i64> %474, ptr %36, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %37) #3
  %475 = load <2 x i64>, ptr %36, align 16, !tbaa !5
  %476 = bitcast <2 x i64> %475 to <16 x i8>
  %477 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %476, <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>
  %478 = bitcast <16 x i8> %477 to <2 x i64>
  %479 = load <2 x i64>, ptr %36, align 16, !tbaa !5
  %480 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %478, <2 x i64> noundef %479)
  store <2 x i64> %480, ptr %37, align 16, !tbaa !5
  %481 = load <2 x i64>, ptr %37, align 16, !tbaa !5
  %482 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %483 = bitcast <2 x i64> %482 to <4 x i32>
  %484 = shufflevector <4 x i32> %483, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %485 = bitcast <4 x i32> %484 to <2 x i64>
  %486 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %481, <2 x i64> noundef %485)
  store <2 x i64> %486, 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 %487

487:                                              ; preds = %468
  br label %488

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

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

517:                                              ; preds = %498
  br label %518

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

536:                                              ; preds = %518
  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 7)
  store <2 x i64> %562, ptr %10, align 16, !tbaa !5
  %563 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %564 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %565 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %563, <2 x i64> noundef %564)
  store <2 x i64> %565, ptr %9, align 16, !tbaa !5
  br label %566

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

585:                                              ; preds = %566
  br label %586

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

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

615:                                              ; preds = %596
  br label %616

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

634:                                              ; preds = %616
  call void @llvm.lifetime.start.p0(i64 16, ptr %46) #3
  %635 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %636 = bitcast <2 x i64> %635 to <16 x i8>
  %637 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %636, <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>
  %638 = bitcast <16 x i8> %637 to <2 x i64>
  %639 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %640 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %638, <2 x i64> noundef %639)
  store <2 x i64> %640, ptr %46, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %47) #3
  %641 = load <2 x i64>, ptr %46, align 16, !tbaa !5
  %642 = bitcast <2 x i64> %641 to <16 x i8>
  %643 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %642, <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>
  %644 = bitcast <16 x i8> %643 to <2 x i64>
  %645 = load <2 x i64>, ptr %46, align 16, !tbaa !5
  %646 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %644, <2 x i64> noundef %645)
  store <2 x i64> %646, ptr %47, align 16, !tbaa !5
  %647 = load <2 x i64>, ptr %47, align 16, !tbaa !5
  %648 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %649 = bitcast <2 x i64> %648 to <4 x i32>
  %650 = shufflevector <4 x i32> %649, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %651 = bitcast <4 x i32> %650 to <2 x i64>
  %652 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %647, <2 x i64> noundef %651)
  store <2 x i64> %652, 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 %653

653:                                              ; preds = %634
  br label %654

654:                                              ; preds = %653
  %655 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %655, ptr %4, align 16, !tbaa !5
  %656 = load ptr, ptr %7, align 8, !tbaa !8
  %657 = getelementptr inbounds <2 x i64>, ptr %656, i32 1
  store ptr %657, ptr %7, align 8, !tbaa !8
  %658 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %656, <2 x i64> noundef %658)
  %659 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %660 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %659, i32 noundef 2)
  store <2 x i64> %660, ptr %10, align 16, !tbaa !5
  %661 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %662 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %663 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %661, <2 x i64> noundef %662)
  store <2 x i64> %663, ptr %9, align 16, !tbaa !5
  br label %664

664:                                              ; preds = %654
  call void @llvm.lifetime.start.p0(i64 16, ptr %48) #3
  %665 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %666 = bitcast <2 x i64> %665 to <16 x i8>
  %667 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %666, <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>
  %668 = bitcast <16 x i8> %667 to <2 x i64>
  %669 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %670 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %668, <2 x i64> noundef %669)
  store <2 x i64> %670, ptr %48, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %49) #3
  %671 = load <2 x i64>, ptr %48, align 16, !tbaa !5
  %672 = bitcast <2 x i64> %671 to <16 x i8>
  %673 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %672, <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>
  %674 = bitcast <16 x i8> %673 to <2 x i64>
  %675 = load <2 x i64>, ptr %48, align 16, !tbaa !5
  %676 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %674, <2 x i64> noundef %675)
  store <2 x i64> %676, ptr %49, align 16, !tbaa !5
  %677 = load <2 x i64>, ptr %49, align 16, !tbaa !5
  %678 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %679 = bitcast <2 x i64> %678 to <4 x i32>
  %680 = shufflevector <4 x i32> %679, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %681 = bitcast <4 x i32> %680 to <2 x i64>
  %682 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %677, <2 x i64> noundef %681)
  store <2 x i64> %682, 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 %683

683:                                              ; preds = %664
  br label %684

684:                                              ; preds = %683
  %685 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %685, ptr %4, align 16, !tbaa !5
  %686 = load ptr, ptr %7, align 8, !tbaa !8
  %687 = getelementptr inbounds <2 x i64>, ptr %686, i32 1
  store ptr %687, ptr %7, align 8, !tbaa !8
  %688 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %686, <2 x i64> noundef %688)
  %689 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %690 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %689, i32 noundef 11)
  store <2 x i64> %690, ptr %10, align 16, !tbaa !5
  %691 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %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)
  store <2 x i64> %693, ptr %9, align 16, !tbaa !5
  br label %694

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

713:                                              ; preds = %694
  br label %714

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

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

743:                                              ; preds = %724
  br label %744

744:                                              ; preds = %743
  %745 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %745, ptr %4, align 16, !tbaa !5
  %746 = load ptr, ptr %7, align 8, !tbaa !8
  %747 = getelementptr inbounds <2 x i64>, ptr %746, i32 1
  store ptr %747, ptr %7, align 8, !tbaa !8
  %748 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %746, <2 x i64> noundef %748)
  %749 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %750 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %749, i32 noundef 29)
  store <2 x i64> %750, ptr %10, align 16, !tbaa !5
  %751 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %751, ptr %9, align 16, !tbaa !5
  %752 = load ptr, ptr %5, align 8, !tbaa !8
  %753 = getelementptr inbounds <2 x i64>, ptr %752, i32 1
  store ptr %753, ptr %5, align 8, !tbaa !8
  %754 = load ptr, ptr %5, align 8, !tbaa !8
  %755 = call <2 x i64> @_mm_loadu_si128(ptr noundef %754)
  store <2 x i64> %755, ptr %8, align 16, !tbaa !5
  %756 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %757 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %758 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %757, i32 noundef 3)
  %759 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %760 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %758, <2 x i64> noundef %759)
  %761 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %756, <2 x i64> noundef %760)
  store <2 x i64> %761, ptr %9, align 16, !tbaa !5
  br label %762

762:                                              ; preds = %744
  call void @llvm.lifetime.start.p0(i64 16, ptr %54) #3
  %763 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %764 = bitcast <2 x i64> %763 to <16 x i8>
  %765 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %764, <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>
  %766 = bitcast <16 x i8> %765 to <2 x i64>
  %767 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %768 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %766, <2 x i64> noundef %767)
  store <2 x i64> %768, ptr %54, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %55) #3
  %769 = load <2 x i64>, ptr %54, align 16, !tbaa !5
  %770 = bitcast <2 x i64> %769 to <16 x i8>
  %771 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %770, <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>
  %772 = bitcast <16 x i8> %771 to <2 x i64>
  %773 = load <2 x i64>, ptr %54, align 16, !tbaa !5
  %774 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %772, <2 x i64> noundef %773)
  store <2 x i64> %774, ptr %55, align 16, !tbaa !5
  %775 = load <2 x i64>, ptr %55, align 16, !tbaa !5
  %776 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %777 = bitcast <2 x i64> %776 to <4 x i32>
  %778 = shufflevector <4 x i32> %777, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %779 = bitcast <4 x i32> %778 to <2 x i64>
  %780 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %775, <2 x i64> noundef %779)
  store <2 x i64> %780, 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 %781

781:                                              ; preds = %762
  br label %782

782:                                              ; preds = %781
  %783 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %783, ptr %4, align 16, !tbaa !5
  %784 = load ptr, ptr %7, align 8, !tbaa !8
  %785 = getelementptr inbounds <2 x i64>, ptr %784, i32 1
  store ptr %785, ptr %7, align 8, !tbaa !8
  %786 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %784, <2 x i64> noundef %786)
  %787 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %788 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %787, i32 noundef 6)
  store <2 x i64> %788, ptr %10, align 16, !tbaa !5
  %789 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %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)
  store <2 x i64> %791, ptr %9, align 16, !tbaa !5
  br label %792

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

811:                                              ; preds = %792
  br label %812

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

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

841:                                              ; preds = %822
  br label %842

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

860:                                              ; preds = %842
  call void @llvm.lifetime.start.p0(i64 16, ptr %60) #3
  %861 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %862 = bitcast <2 x i64> %861 to <16 x i8>
  %863 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %862, <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>
  %864 = bitcast <16 x i8> %863 to <2 x i64>
  %865 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %866 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %864, <2 x i64> noundef %865)
  store <2 x i64> %866, ptr %60, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %61) #3
  %867 = load <2 x i64>, ptr %60, align 16, !tbaa !5
  %868 = bitcast <2 x i64> %867 to <16 x i8>
  %869 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %868, <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>
  %870 = bitcast <16 x i8> %869 to <2 x i64>
  %871 = load <2 x i64>, ptr %60, align 16, !tbaa !5
  %872 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %870, <2 x i64> noundef %871)
  store <2 x i64> %872, ptr %61, align 16, !tbaa !5
  %873 = load <2 x i64>, ptr %61, align 16, !tbaa !5
  %874 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %875 = bitcast <2 x i64> %874 to <4 x i32>
  %876 = shufflevector <4 x i32> %875, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %877 = bitcast <4 x i32> %876 to <2 x i64>
  %878 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %873, <2 x i64> noundef %877)
  store <2 x i64> %878, 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 %879

879:                                              ; preds = %860
  br label %880

880:                                              ; preds = %879
  %881 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %881, ptr %4, align 16, !tbaa !5
  %882 = load ptr, ptr %7, align 8, !tbaa !8
  %883 = getelementptr inbounds <2 x i64>, ptr %882, i32 1
  store ptr %883, ptr %7, align 8, !tbaa !8
  %884 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %882, <2 x i64> noundef %884)
  %885 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %886 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %885, i32 noundef 1)
  store <2 x i64> %886, ptr %10, align 16, !tbaa !5
  %887 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %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)
  store <2 x i64> %889, ptr %9, align 16, !tbaa !5
  br label %890

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

909:                                              ; preds = %890
  br label %910

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

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

939:                                              ; preds = %920
  br label %940

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

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

969:                                              ; preds = %950
  br label %970

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

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

1007:                                             ; preds = %988
  br label %1008

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

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

1037:                                             ; preds = %1018
  br label %1038

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

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

1067:                                             ; preds = %1048
  br label %1068

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

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

1095:                                             ; preds = %1076
  br label %1096

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

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> @iunpack9(<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 511)
  %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 9)
  %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 18)
  %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 27)
  %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 5)
  %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 4)
  %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 13)
  %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 22)
  %88 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %87, <2 x i64> noundef %5)
  %89 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %88, <2 x i32> <i32 1, i32 2>
  %90 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %89, <2 x i64> noundef %88)
  %91 = bitcast <2 x i64> %90 to <16 x i8>
  %92 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %91, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %93 = bitcast <16 x i8> %92 to <2 x i64>
  %94 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %93, <2 x i64> noundef %90)
  %95 = bitcast <2 x i64> %85 to <4 x i32>
  %96 = shufflevector <4 x i32> %95, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %97 = bitcast <4 x i32> %96 to <2 x i64>
  %98 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %94, <2 x i64> noundef %97)
  %99 = getelementptr inbounds i8, ptr %2, i64 112
  tail call void @_mm_storeu_si128(ptr noundef nonnull %86, <2 x i64> noundef %98)
  %100 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %46, i32 noundef 31)
  %101 = getelementptr inbounds i8, ptr %1, i64 32
  %102 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %101)
  %103 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %102, i32 noundef 1)
  %104 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %103, <2 x i64> noundef %5)
  %105 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %100, <2 x i64> noundef %104)
  %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> %98 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 %99, <2 x i64> noundef %115)
  %117 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %102, i32 noundef 8)
  %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 %102, i32 noundef 17)
  %131 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %130, <2 x i64> noundef %5)
  %132 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %131, <2 x i32> <i32 1, i32 2>
  %133 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %132, <2 x i64> noundef %131)
  %134 = bitcast <2 x i64> %133 to <16 x i8>
  %135 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %134, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %136 = bitcast <16 x i8> %135 to <2 x i64>
  %137 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %136, <2 x i64> noundef %133)
  %138 = bitcast <2 x i64> %128 to <4 x i32>
  %139 = shufflevector <4 x i32> %138, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %140 = bitcast <4 x i32> %139 to <2 x i64>
  %141 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %137, <2 x i64> noundef %140)
  %142 = getelementptr inbounds i8, ptr %2, i64 160
  tail call void @_mm_storeu_si128(ptr noundef nonnull %129, <2 x i64> noundef %141)
  %143 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %102, i32 noundef 26)
  %144 = getelementptr inbounds i8, ptr %1, i64 48
  %145 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %144)
  %146 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %145, i32 noundef 6)
  %147 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %146, <2 x i64> noundef %5)
  %148 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %143, <2 x i64> noundef %147)
  %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> %141 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 %142, <2 x i64> noundef %158)
  %160 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %145, i32 noundef 3)
  %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 %145, i32 noundef 12)
  %174 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %173, <2 x i64> noundef %5)
  %175 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %174, <2 x i32> <i32 1, i32 2>
  %176 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %175, <2 x i64> noundef %174)
  %177 = bitcast <2 x i64> %176 to <16 x i8>
  %178 = 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> %177, <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>
  %179 = bitcast <16 x i8> %178 to <2 x i64>
  %180 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %179, <2 x i64> noundef %176)
  %181 = bitcast <2 x i64> %171 to <4 x i32>
  %182 = shufflevector <4 x i32> %181, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %183 = bitcast <4 x i32> %182 to <2 x i64>
  %184 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %180, <2 x i64> noundef %183)
  %185 = getelementptr inbounds i8, ptr %2, i64 208
  tail call void @_mm_storeu_si128(ptr noundef nonnull %172, <2 x i64> noundef %184)
  %186 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %145, i32 noundef 21)
  %187 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %186, <2 x i64> noundef %5)
  %188 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %187, <2 x i32> <i32 1, i32 2>
  %189 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %188, <2 x i64> noundef %187)
  %190 = bitcast <2 x i64> %189 to <16 x i8>
  %191 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %190, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %192 = bitcast <16 x i8> %191 to <2 x i64>
  %193 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %192, <2 x i64> noundef %189)
  %194 = bitcast <2 x i64> %184 to <4 x i32>
  %195 = shufflevector <4 x i32> %194, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %196 = bitcast <4 x i32> %195 to <2 x i64>
  %197 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %193, <2 x i64> noundef %196)
  %198 = getelementptr inbounds i8, ptr %2, i64 224
  tail call void @_mm_storeu_si128(ptr noundef nonnull %185, <2 x i64> noundef %197)
  %199 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %145, i32 noundef 30)
  %200 = getelementptr inbounds i8, ptr %1, i64 64
  %201 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %200)
  %202 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %201, i32 noundef 2)
  %203 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %202, <2 x i64> noundef %5)
  %204 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %199, <2 x i64> noundef %203)
  %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> %197 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 %198, <2 x i64> noundef %214)
  %216 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %201, i32 noundef 7)
  %217 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %216, <2 x i64> noundef %5)
  %218 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %217, <2 x i32> <i32 1, i32 2>
  %219 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %218, <2 x i64> noundef %217)
  %220 = bitcast <2 x i64> %219 to <16 x i8>
  %221 = 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> %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 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %222, <2 x i64> noundef %219)
  %224 = bitcast <2 x i64> %214 to <4 x i32>
  %225 = shufflevector <4 x i32> %224, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %226 = bitcast <4 x i32> %225 to <2 x i64>
  %227 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %223, <2 x i64> noundef %226)
  %228 = getelementptr inbounds i8, ptr %2, i64 256
  tail call void @_mm_storeu_si128(ptr noundef nonnull %215, <2 x i64> noundef %227)
  %229 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %201, i32 noundef 16)
  %230 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %229, <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> %227 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 %228, <2 x i64> noundef %240)
  %242 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %201, i32 noundef 25)
  %243 = getelementptr inbounds i8, ptr %1, i64 80
  %244 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %243)
  %245 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %244, i32 noundef 7)
  %246 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %245, <2 x i64> noundef %5)
  %247 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %242, <2 x i64> noundef %246)
  %248 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %247, <2 x i32> <i32 1, i32 2>
  %249 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %248, <2 x i64> noundef %247)
  %250 = bitcast <2 x i64> %249 to <16 x i8>
  %251 = 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> %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 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %252, <2 x i64> noundef %249)
  %254 = bitcast <2 x i64> %240 to <4 x i32>
  %255 = shufflevector <4 x i32> %254, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %256 = bitcast <4 x i32> %255 to <2 x i64>
  %257 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %253, <2 x i64> noundef %256)
  %258 = getelementptr inbounds i8, ptr %2, i64 288
  tail call void @_mm_storeu_si128(ptr noundef nonnull %241, <2 x i64> noundef %257)
  %259 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %244, i32 noundef 2)
  %260 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %259, <2 x i64> noundef %5)
  %261 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %260, <2 x i32> <i32 1, i32 2>
  %262 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %261, <2 x i64> noundef %260)
  %263 = bitcast <2 x i64> %262 to <16 x i8>
  %264 = 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> %263, <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>
  %265 = bitcast <16 x i8> %264 to <2 x i64>
  %266 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %265, <2 x i64> noundef %262)
  %267 = bitcast <2 x i64> %257 to <4 x i32>
  %268 = shufflevector <4 x i32> %267, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %269 = bitcast <4 x i32> %268 to <2 x i64>
  %270 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %266, <2 x i64> noundef %269)
  %271 = getelementptr inbounds i8, ptr %2, i64 304
  tail call void @_mm_storeu_si128(ptr noundef nonnull %258, <2 x i64> noundef %270)
  %272 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %244, i32 noundef 11)
  %273 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %272, <2 x i64> noundef %5)
  %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> %270 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 %271, <2 x i64> noundef %283)
  %285 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %244, i32 noundef 20)
  %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 %244, i32 noundef 29)
  %299 = getelementptr inbounds i8, ptr %1, i64 96
  %300 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %299)
  %301 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %300, i32 noundef 3)
  %302 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %301, <2 x i64> noundef %5)
  %303 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %298, <2 x i64> noundef %302)
  %304 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %303, <2 x i32> <i32 1, i32 2>
  %305 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %304, <2 x i64> noundef %303)
  %306 = bitcast <2 x i64> %305 to <16 x i8>
  %307 = 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> %306, <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>
  %308 = bitcast <16 x i8> %307 to <2 x i64>
  %309 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %308, <2 x i64> noundef %305)
  %310 = bitcast <2 x i64> %296 to <4 x i32>
  %311 = shufflevector <4 x i32> %310, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %312 = bitcast <4 x i32> %311 to <2 x i64>
  %313 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %309, <2 x i64> noundef %312)
  %314 = getelementptr inbounds i8, ptr %2, i64 352
  tail call void @_mm_storeu_si128(ptr noundef nonnull %297, <2 x i64> noundef %313)
  %315 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %300, i32 noundef 6)
  %316 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %315, <2 x i64> noundef %5)
  %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> %313 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 %314, <2 x i64> noundef %326)
  %328 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %300, i32 noundef 15)
  %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 %300, i32 noundef 24)
  %342 = getelementptr inbounds i8, ptr %1, i64 112
  %343 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %342)
  %344 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %343, i32 noundef 8)
  %345 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %344, <2 x i64> noundef %5)
  %346 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %341, <2 x i64> noundef %345)
  %347 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %346, <2 x i32> <i32 1, i32 2>
  %348 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %347, <2 x i64> noundef %346)
  %349 = bitcast <2 x i64> %348 to <16 x i8>
  %350 = 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> %349, <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>
  %351 = bitcast <16 x i8> %350 to <2 x i64>
  %352 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %351, <2 x i64> noundef %348)
  %353 = bitcast <2 x i64> %339 to <4 x i32>
  %354 = shufflevector <4 x i32> %353, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %355 = bitcast <4 x i32> %354 to <2 x i64>
  %356 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %352, <2 x i64> noundef %355)
  %357 = getelementptr inbounds i8, ptr %2, i64 400
  tail call void @_mm_storeu_si128(ptr noundef nonnull %340, <2 x i64> noundef %356)
  %358 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %343, i32 noundef 1)
  %359 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %358, <2 x i64> noundef %5)
  %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> %356 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 %357, <2 x i64> noundef %369)
  %371 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %343, i32 noundef 10)
  %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 %343, i32 noundef 19)
  %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 %343, i32 noundef 28)
  %398 = getelementptr inbounds i8, ptr %1, i64 128
  %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 4)
  %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 5)
  %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 14)
  %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 23)
  %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