; 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> @iunpack27(<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 134217727)
  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 27)
  store <2 x i64> %110, ptr %10, align 16, !tbaa !5
  %111 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %111, ptr %9, align 16, !tbaa !5
  %112 = load ptr, ptr %5, align 8, !tbaa !8
  %113 = getelementptr inbounds <2 x i64>, ptr %112, i32 1
  store ptr %113, ptr %5, align 8, !tbaa !8
  %114 = load ptr, ptr %5, align 8, !tbaa !8
  %115 = call <2 x i64> @_mm_loadu_si128(ptr noundef %114)
  store <2 x i64> %115, ptr %8, align 16, !tbaa !5
  %116 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %117 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %118 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %117, i32 noundef 5)
  %119 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %120 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %118, <2 x i64> noundef %119)
  %121 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %116, <2 x i64> noundef %120)
  store <2 x i64> %121, ptr %9, align 16, !tbaa !5
  br label %122

122:                                              ; preds = %104
  call void @llvm.lifetime.start.p0(i64 16, ptr %14) #3
  %123 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %124 = bitcast <2 x i64> %123 to <16 x i8>
  %125 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %124, <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>
  %126 = bitcast <16 x i8> %125 to <2 x i64>
  %127 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %128 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %126, <2 x i64> noundef %127)
  store <2 x i64> %128, ptr %14, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %15) #3
  %129 = load <2 x i64>, ptr %14, align 16, !tbaa !5
  %130 = bitcast <2 x i64> %129 to <16 x i8>
  %131 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %130, <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>
  %132 = bitcast <16 x i8> %131 to <2 x i64>
  %133 = load <2 x i64>, ptr %14, align 16, !tbaa !5
  %134 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %132, <2 x i64> noundef %133)
  store <2 x i64> %134, ptr %15, align 16, !tbaa !5
  %135 = load <2 x i64>, ptr %15, align 16, !tbaa !5
  %136 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %137 = bitcast <2 x i64> %136 to <4 x i32>
  %138 = shufflevector <4 x i32> %137, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %139 = bitcast <4 x i32> %138 to <2 x i64>
  %140 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %135, <2 x i64> noundef %139)
  store <2 x i64> %140, 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 %141

141:                                              ; preds = %122
  br label %142

142:                                              ; preds = %141
  %143 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %143, ptr %4, align 16, !tbaa !5
  %144 = load ptr, ptr %7, align 8, !tbaa !8
  %145 = getelementptr inbounds <2 x i64>, ptr %144, i32 1
  store ptr %145, ptr %7, align 8, !tbaa !8
  %146 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %144, <2 x i64> noundef %146)
  %147 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %148 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %147, i32 noundef 22)
  store <2 x i64> %148, ptr %10, align 16, !tbaa !5
  %149 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %149, ptr %9, align 16, !tbaa !5
  %150 = load ptr, ptr %5, align 8, !tbaa !8
  %151 = getelementptr inbounds <2 x i64>, ptr %150, i32 1
  store ptr %151, ptr %5, align 8, !tbaa !8
  %152 = load ptr, ptr %5, align 8, !tbaa !8
  %153 = call <2 x i64> @_mm_loadu_si128(ptr noundef %152)
  store <2 x i64> %153, ptr %8, align 16, !tbaa !5
  %154 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %155 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %156 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %155, i32 noundef 10)
  %157 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %158 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %156, <2 x i64> noundef %157)
  %159 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %154, <2 x i64> noundef %158)
  store <2 x i64> %159, ptr %9, align 16, !tbaa !5
  br label %160

160:                                              ; preds = %142
  call void @llvm.lifetime.start.p0(i64 16, ptr %16) #3
  %161 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %162 = bitcast <2 x i64> %161 to <16 x i8>
  %163 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %162, <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>
  %164 = bitcast <16 x i8> %163 to <2 x i64>
  %165 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %166 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %164, <2 x i64> noundef %165)
  store <2 x i64> %166, ptr %16, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %17) #3
  %167 = load <2 x i64>, ptr %16, align 16, !tbaa !5
  %168 = bitcast <2 x i64> %167 to <16 x i8>
  %169 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %168, <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>
  %170 = bitcast <16 x i8> %169 to <2 x i64>
  %171 = load <2 x i64>, ptr %16, align 16, !tbaa !5
  %172 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %170, <2 x i64> noundef %171)
  store <2 x i64> %172, ptr %17, align 16, !tbaa !5
  %173 = load <2 x i64>, ptr %17, align 16, !tbaa !5
  %174 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %175 = bitcast <2 x i64> %174 to <4 x i32>
  %176 = shufflevector <4 x i32> %175, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %177 = bitcast <4 x i32> %176 to <2 x i64>
  %178 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %173, <2 x i64> noundef %177)
  store <2 x i64> %178, 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 %179

179:                                              ; preds = %160
  br label %180

180:                                              ; preds = %179
  %181 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %181, ptr %4, align 16, !tbaa !5
  %182 = load ptr, ptr %7, align 8, !tbaa !8
  %183 = getelementptr inbounds <2 x i64>, ptr %182, i32 1
  store ptr %183, ptr %7, align 8, !tbaa !8
  %184 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %182, <2 x i64> noundef %184)
  %185 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %186 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %185, i32 noundef 17)
  store <2 x i64> %186, ptr %10, align 16, !tbaa !5
  %187 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %187, ptr %9, align 16, !tbaa !5
  %188 = load ptr, ptr %5, align 8, !tbaa !8
  %189 = getelementptr inbounds <2 x i64>, ptr %188, i32 1
  store ptr %189, ptr %5, align 8, !tbaa !8
  %190 = load ptr, ptr %5, align 8, !tbaa !8
  %191 = call <2 x i64> @_mm_loadu_si128(ptr noundef %190)
  store <2 x i64> %191, ptr %8, align 16, !tbaa !5
  %192 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %193 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %194 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %193, i32 noundef 15)
  %195 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %196 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %194, <2 x i64> noundef %195)
  %197 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %192, <2 x i64> noundef %196)
  store <2 x i64> %197, ptr %9, align 16, !tbaa !5
  br label %198

198:                                              ; preds = %180
  call void @llvm.lifetime.start.p0(i64 16, ptr %18) #3
  %199 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %200 = bitcast <2 x i64> %199 to <16 x i8>
  %201 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %200, <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>
  %202 = bitcast <16 x i8> %201 to <2 x i64>
  %203 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %204 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %202, <2 x i64> noundef %203)
  store <2 x i64> %204, ptr %18, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %19) #3
  %205 = load <2 x i64>, ptr %18, align 16, !tbaa !5
  %206 = bitcast <2 x i64> %205 to <16 x i8>
  %207 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %206, <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>
  %208 = bitcast <16 x i8> %207 to <2 x i64>
  %209 = load <2 x i64>, ptr %18, align 16, !tbaa !5
  %210 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %208, <2 x i64> noundef %209)
  store <2 x i64> %210, ptr %19, align 16, !tbaa !5
  %211 = load <2 x i64>, ptr %19, align 16, !tbaa !5
  %212 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %213 = bitcast <2 x i64> %212 to <4 x i32>
  %214 = shufflevector <4 x i32> %213, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %215 = bitcast <4 x i32> %214 to <2 x i64>
  %216 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %211, <2 x i64> noundef %215)
  store <2 x i64> %216, 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 %217

217:                                              ; preds = %198
  br label %218

218:                                              ; preds = %217
  %219 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %219, ptr %4, align 16, !tbaa !5
  %220 = load ptr, ptr %7, align 8, !tbaa !8
  %221 = getelementptr inbounds <2 x i64>, ptr %220, i32 1
  store ptr %221, ptr %7, align 8, !tbaa !8
  %222 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %220, <2 x i64> noundef %222)
  %223 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %224 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %223, i32 noundef 12)
  store <2 x i64> %224, ptr %10, align 16, !tbaa !5
  %225 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %225, ptr %9, align 16, !tbaa !5
  %226 = load ptr, ptr %5, align 8, !tbaa !8
  %227 = getelementptr inbounds <2 x i64>, ptr %226, i32 1
  store ptr %227, ptr %5, align 8, !tbaa !8
  %228 = load ptr, ptr %5, align 8, !tbaa !8
  %229 = call <2 x i64> @_mm_loadu_si128(ptr noundef %228)
  store <2 x i64> %229, ptr %8, align 16, !tbaa !5
  %230 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %231 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %232 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %231, i32 noundef 20)
  %233 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %234 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %232, <2 x i64> noundef %233)
  %235 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %230, <2 x i64> noundef %234)
  store <2 x i64> %235, ptr %9, align 16, !tbaa !5
  br label %236

236:                                              ; preds = %218
  call void @llvm.lifetime.start.p0(i64 16, ptr %20) #3
  %237 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %238 = bitcast <2 x i64> %237 to <16 x i8>
  %239 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %238, <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>
  %240 = bitcast <16 x i8> %239 to <2 x i64>
  %241 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %242 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %240, <2 x i64> noundef %241)
  store <2 x i64> %242, ptr %20, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %21) #3
  %243 = load <2 x i64>, ptr %20, 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 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>
  %246 = bitcast <16 x i8> %245 to <2 x i64>
  %247 = load <2 x i64>, ptr %20, 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 %21, align 16, !tbaa !5
  %249 = load <2 x i64>, ptr %21, align 16, !tbaa !5
  %250 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %251 = bitcast <2 x i64> %250 to <4 x i32>
  %252 = shufflevector <4 x i32> %251, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %253 = bitcast <4 x i32> %252 to <2 x i64>
  %254 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %249, <2 x i64> noundef %253)
  store <2 x i64> %254, 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 %255

255:                                              ; preds = %236
  br label %256

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

274:                                              ; preds = %256
  call void @llvm.lifetime.start.p0(i64 16, ptr %22) #3
  %275 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %276 = bitcast <2 x i64> %275 to <16 x i8>
  %277 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %276, <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>
  %278 = bitcast <16 x i8> %277 to <2 x i64>
  %279 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %280 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %278, <2 x i64> noundef %279)
  store <2 x i64> %280, ptr %22, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %23) #3
  %281 = load <2 x i64>, ptr %22, align 16, !tbaa !5
  %282 = bitcast <2 x i64> %281 to <16 x i8>
  %283 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %282, <16 x i32> <i32 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>
  %284 = bitcast <16 x i8> %283 to <2 x i64>
  %285 = load <2 x i64>, ptr %22, align 16, !tbaa !5
  %286 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %284, <2 x i64> noundef %285)
  store <2 x i64> %286, ptr %23, align 16, !tbaa !5
  %287 = load <2 x i64>, ptr %23, align 16, !tbaa !5
  %288 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %289 = bitcast <2 x i64> %288 to <4 x i32>
  %290 = shufflevector <4 x i32> %289, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %291 = bitcast <4 x i32> %290 to <2 x i64>
  %292 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %287, <2 x i64> noundef %291)
  store <2 x i64> %292, 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 %293

293:                                              ; preds = %274
  br label %294

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

304:                                              ; preds = %294
  call void @llvm.lifetime.start.p0(i64 16, ptr %24) #3
  %305 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %306 = bitcast <2 x i64> %305 to <16 x i8>
  %307 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %306, <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>
  %308 = bitcast <16 x i8> %307 to <2 x i64>
  %309 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %310 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %308, <2 x i64> noundef %309)
  store <2 x i64> %310, ptr %24, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %25) #3
  %311 = load <2 x i64>, ptr %24, 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 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>
  %314 = bitcast <16 x i8> %313 to <2 x i64>
  %315 = load <2 x i64>, ptr %24, 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 %25, align 16, !tbaa !5
  %317 = load <2 x i64>, ptr %25, align 16, !tbaa !5
  %318 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %319 = bitcast <2 x i64> %318 to <4 x i32>
  %320 = shufflevector <4 x i32> %319, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %321 = bitcast <4 x i32> %320 to <2 x i64>
  %322 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %317, <2 x i64> noundef %321)
  store <2 x i64> %322, 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 %323

323:                                              ; preds = %304
  br label %324

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

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

361:                                              ; preds = %342
  br label %362

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

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

399:                                              ; preds = %380
  br label %400

400:                                              ; preds = %399
  %401 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %401, ptr %4, align 16, !tbaa !5
  %402 = load ptr, ptr %7, align 8, !tbaa !8
  %403 = getelementptr inbounds <2 x i64>, ptr %402, i32 1
  store ptr %403, ptr %7, align 8, !tbaa !8
  %404 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %402, <2 x i64> noundef %404)
  %405 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %406 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %405, i32 noundef 19)
  store <2 x i64> %406, ptr %10, align 16, !tbaa !5
  %407 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %407, ptr %9, align 16, !tbaa !5
  %408 = load ptr, ptr %5, align 8, !tbaa !8
  %409 = getelementptr inbounds <2 x i64>, ptr %408, i32 1
  store ptr %409, ptr %5, align 8, !tbaa !8
  %410 = load ptr, ptr %5, align 8, !tbaa !8
  %411 = call <2 x i64> @_mm_loadu_si128(ptr noundef %410)
  store <2 x i64> %411, ptr %8, align 16, !tbaa !5
  %412 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %413 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %414 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %413, i32 noundef 13)
  %415 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %416 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %414, <2 x i64> noundef %415)
  %417 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %412, <2 x i64> noundef %416)
  store <2 x i64> %417, ptr %9, align 16, !tbaa !5
  br label %418

418:                                              ; preds = %400
  call void @llvm.lifetime.start.p0(i64 16, ptr %30) #3
  %419 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %420 = bitcast <2 x i64> %419 to <16 x i8>
  %421 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %420, <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>
  %422 = bitcast <16 x i8> %421 to <2 x i64>
  %423 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %424 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %422, <2 x i64> noundef %423)
  store <2 x i64> %424, ptr %30, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %31) #3
  %425 = load <2 x i64>, ptr %30, align 16, !tbaa !5
  %426 = bitcast <2 x i64> %425 to <16 x i8>
  %427 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %426, <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>
  %428 = bitcast <16 x i8> %427 to <2 x i64>
  %429 = load <2 x i64>, ptr %30, align 16, !tbaa !5
  %430 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %428, <2 x i64> noundef %429)
  store <2 x i64> %430, ptr %31, align 16, !tbaa !5
  %431 = load <2 x i64>, ptr %31, align 16, !tbaa !5
  %432 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %433 = bitcast <2 x i64> %432 to <4 x i32>
  %434 = shufflevector <4 x i32> %433, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %435 = bitcast <4 x i32> %434 to <2 x i64>
  %436 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %431, <2 x i64> noundef %435)
  store <2 x i64> %436, 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 %437

437:                                              ; preds = %418
  br label %438

438:                                              ; preds = %437
  %439 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %439, ptr %4, align 16, !tbaa !5
  %440 = load ptr, ptr %7, align 8, !tbaa !8
  %441 = getelementptr inbounds <2 x i64>, ptr %440, i32 1
  store ptr %441, ptr %7, align 8, !tbaa !8
  %442 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %440, <2 x i64> noundef %442)
  %443 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %444 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %443, i32 noundef 14)
  store <2 x i64> %444, ptr %10, align 16, !tbaa !5
  %445 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %445, ptr %9, align 16, !tbaa !5
  %446 = load ptr, ptr %5, align 8, !tbaa !8
  %447 = getelementptr inbounds <2 x i64>, ptr %446, i32 1
  store ptr %447, ptr %5, align 8, !tbaa !8
  %448 = load ptr, ptr %5, align 8, !tbaa !8
  %449 = call <2 x i64> @_mm_loadu_si128(ptr noundef %448)
  store <2 x i64> %449, ptr %8, align 16, !tbaa !5
  %450 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %451 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %452 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %451, i32 noundef 18)
  %453 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %454 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %452, <2 x i64> noundef %453)
  %455 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %450, <2 x i64> noundef %454)
  store <2 x i64> %455, ptr %9, align 16, !tbaa !5
  br label %456

456:                                              ; preds = %438
  call void @llvm.lifetime.start.p0(i64 16, ptr %32) #3
  %457 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %458 = bitcast <2 x i64> %457 to <16 x i8>
  %459 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %458, <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>
  %460 = bitcast <16 x i8> %459 to <2 x i64>
  %461 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %462 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %460, <2 x i64> noundef %461)
  store <2 x i64> %462, ptr %32, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %33) #3
  %463 = load <2 x i64>, ptr %32, align 16, !tbaa !5
  %464 = bitcast <2 x i64> %463 to <16 x i8>
  %465 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %464, <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>
  %466 = bitcast <16 x i8> %465 to <2 x i64>
  %467 = load <2 x i64>, ptr %32, align 16, !tbaa !5
  %468 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %466, <2 x i64> noundef %467)
  store <2 x i64> %468, ptr %33, align 16, !tbaa !5
  %469 = load <2 x i64>, ptr %33, align 16, !tbaa !5
  %470 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %471 = bitcast <2 x i64> %470 to <4 x i32>
  %472 = shufflevector <4 x i32> %471, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %473 = bitcast <4 x i32> %472 to <2 x i64>
  %474 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %469, <2 x i64> noundef %473)
  store <2 x i64> %474, 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 %475

475:                                              ; preds = %456
  br label %476

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

494:                                              ; preds = %476
  call void @llvm.lifetime.start.p0(i64 16, ptr %34) #3
  %495 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %496 = bitcast <2 x i64> %495 to <16 x i8>
  %497 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %496, <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>
  %498 = bitcast <16 x i8> %497 to <2 x i64>
  %499 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %500 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %498, <2 x i64> noundef %499)
  store <2 x i64> %500, ptr %34, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %35) #3
  %501 = load <2 x i64>, ptr %34, align 16, !tbaa !5
  %502 = bitcast <2 x i64> %501 to <16 x i8>
  %503 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %502, <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>
  %504 = bitcast <16 x i8> %503 to <2 x i64>
  %505 = load <2 x i64>, ptr %34, align 16, !tbaa !5
  %506 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %504, <2 x i64> noundef %505)
  store <2 x i64> %506, ptr %35, align 16, !tbaa !5
  %507 = load <2 x i64>, ptr %35, align 16, !tbaa !5
  %508 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %509 = bitcast <2 x i64> %508 to <4 x i32>
  %510 = shufflevector <4 x i32> %509, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %511 = bitcast <4 x i32> %510 to <2 x i64>
  %512 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %507, <2 x i64> noundef %511)
  store <2 x i64> %512, 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 %513

513:                                              ; preds = %494
  br label %514

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

524:                                              ; preds = %514
  call void @llvm.lifetime.start.p0(i64 16, ptr %36) #3
  %525 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %526 = bitcast <2 x i64> %525 to <16 x i8>
  %527 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %526, <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>
  %528 = bitcast <16 x i8> %527 to <2 x i64>
  %529 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %530 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %528, <2 x i64> noundef %529)
  store <2 x i64> %530, ptr %36, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %37) #3
  %531 = load <2 x i64>, ptr %36, align 16, !tbaa !5
  %532 = bitcast <2 x i64> %531 to <16 x i8>
  %533 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %532, <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>
  %534 = bitcast <16 x i8> %533 to <2 x i64>
  %535 = load <2 x i64>, ptr %36, align 16, !tbaa !5
  %536 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %534, <2 x i64> noundef %535)
  store <2 x i64> %536, ptr %37, align 16, !tbaa !5
  %537 = load <2 x i64>, ptr %37, align 16, !tbaa !5
  %538 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %539 = bitcast <2 x i64> %538 to <4 x i32>
  %540 = shufflevector <4 x i32> %539, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %541 = bitcast <4 x i32> %540 to <2 x i64>
  %542 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %537, <2 x i64> noundef %541)
  store <2 x i64> %542, 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 %543

543:                                              ; preds = %524
  br label %544

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

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

581:                                              ; preds = %562
  br label %582

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

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

619:                                              ; preds = %600
  br label %620

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

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

657:                                              ; preds = %638
  br label %658

658:                                              ; preds = %657
  %659 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %659, ptr %4, align 16, !tbaa !5
  %660 = load ptr, ptr %7, align 8, !tbaa !8
  %661 = getelementptr inbounds <2 x i64>, ptr %660, i32 1
  store ptr %661, ptr %7, align 8, !tbaa !8
  %662 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %660, <2 x i64> noundef %662)
  %663 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %664 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %663, i32 noundef 16)
  store <2 x i64> %664, ptr %10, align 16, !tbaa !5
  %665 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %665, ptr %9, align 16, !tbaa !5
  %666 = load ptr, ptr %5, align 8, !tbaa !8
  %667 = getelementptr inbounds <2 x i64>, ptr %666, i32 1
  store ptr %667, ptr %5, align 8, !tbaa !8
  %668 = load ptr, ptr %5, align 8, !tbaa !8
  %669 = call <2 x i64> @_mm_loadu_si128(ptr noundef %668)
  store <2 x i64> %669, ptr %8, align 16, !tbaa !5
  %670 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %671 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %672 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %671, i32 noundef 16)
  %673 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %674 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %672, <2 x i64> noundef %673)
  %675 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %670, <2 x i64> noundef %674)
  store <2 x i64> %675, ptr %9, align 16, !tbaa !5
  br label %676

676:                                              ; preds = %658
  call void @llvm.lifetime.start.p0(i64 16, ptr %44) #3
  %677 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %678 = bitcast <2 x i64> %677 to <16 x i8>
  %679 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %678, <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>
  %680 = bitcast <16 x i8> %679 to <2 x i64>
  %681 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %682 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %680, <2 x i64> noundef %681)
  store <2 x i64> %682, ptr %44, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %45) #3
  %683 = load <2 x i64>, ptr %44, align 16, !tbaa !5
  %684 = bitcast <2 x i64> %683 to <16 x i8>
  %685 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %684, <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>
  %686 = bitcast <16 x i8> %685 to <2 x i64>
  %687 = load <2 x i64>, ptr %44, align 16, !tbaa !5
  %688 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %686, <2 x i64> noundef %687)
  store <2 x i64> %688, ptr %45, align 16, !tbaa !5
  %689 = load <2 x i64>, ptr %45, align 16, !tbaa !5
  %690 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %691 = bitcast <2 x i64> %690 to <4 x i32>
  %692 = shufflevector <4 x i32> %691, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %693 = bitcast <4 x i32> %692 to <2 x i64>
  %694 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %689, <2 x i64> noundef %693)
  store <2 x i64> %694, 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 %695

695:                                              ; preds = %676
  br label %696

696:                                              ; preds = %695
  %697 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %697, ptr %4, align 16, !tbaa !5
  %698 = load ptr, ptr %7, align 8, !tbaa !8
  %699 = getelementptr inbounds <2 x i64>, ptr %698, i32 1
  store ptr %699, ptr %7, align 8, !tbaa !8
  %700 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %698, <2 x i64> noundef %700)
  %701 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %702 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %701, i32 noundef 11)
  store <2 x i64> %702, ptr %10, align 16, !tbaa !5
  %703 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %703, ptr %9, align 16, !tbaa !5
  %704 = load ptr, ptr %5, align 8, !tbaa !8
  %705 = getelementptr inbounds <2 x i64>, ptr %704, i32 1
  store ptr %705, ptr %5, align 8, !tbaa !8
  %706 = load ptr, ptr %5, align 8, !tbaa !8
  %707 = call <2 x i64> @_mm_loadu_si128(ptr noundef %706)
  store <2 x i64> %707, ptr %8, align 16, !tbaa !5
  %708 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %709 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %710 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %709, i32 noundef 21)
  %711 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %712 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %710, <2 x i64> noundef %711)
  %713 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %708, <2 x i64> noundef %712)
  store <2 x i64> %713, ptr %9, align 16, !tbaa !5
  br label %714

714:                                              ; preds = %696
  call void @llvm.lifetime.start.p0(i64 16, ptr %46) #3
  %715 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %716 = bitcast <2 x i64> %715 to <16 x i8>
  %717 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %716, <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>
  %718 = bitcast <16 x i8> %717 to <2 x i64>
  %719 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %720 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %718, <2 x i64> noundef %719)
  store <2 x i64> %720, ptr %46, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %47) #3
  %721 = load <2 x i64>, ptr %46, align 16, !tbaa !5
  %722 = bitcast <2 x i64> %721 to <16 x i8>
  %723 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %722, <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>
  %724 = bitcast <16 x i8> %723 to <2 x i64>
  %725 = load <2 x i64>, ptr %46, align 16, !tbaa !5
  %726 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %724, <2 x i64> noundef %725)
  store <2 x i64> %726, ptr %47, align 16, !tbaa !5
  %727 = load <2 x i64>, ptr %47, align 16, !tbaa !5
  %728 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %729 = bitcast <2 x i64> %728 to <4 x i32>
  %730 = shufflevector <4 x i32> %729, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %731 = bitcast <4 x i32> %730 to <2 x i64>
  %732 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %727, <2 x i64> noundef %731)
  store <2 x i64> %732, 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 %733

733:                                              ; preds = %714
  br label %734

734:                                              ; preds = %733
  %735 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %735, ptr %4, align 16, !tbaa !5
  %736 = load ptr, ptr %7, align 8, !tbaa !8
  %737 = getelementptr inbounds <2 x i64>, ptr %736, i32 1
  store ptr %737, ptr %7, align 8, !tbaa !8
  %738 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %736, <2 x i64> noundef %738)
  %739 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %740 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %739, i32 noundef 6)
  store <2 x i64> %740, ptr %10, align 16, !tbaa !5
  %741 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %741, ptr %9, align 16, !tbaa !5
  %742 = load ptr, ptr %5, align 8, !tbaa !8
  %743 = getelementptr inbounds <2 x i64>, ptr %742, i32 1
  store ptr %743, ptr %5, align 8, !tbaa !8
  %744 = load ptr, ptr %5, align 8, !tbaa !8
  %745 = call <2 x i64> @_mm_loadu_si128(ptr noundef %744)
  store <2 x i64> %745, ptr %8, align 16, !tbaa !5
  %746 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %747 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %748 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %747, i32 noundef 26)
  %749 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %750 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %748, <2 x i64> noundef %749)
  %751 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %746, <2 x i64> noundef %750)
  store <2 x i64> %751, ptr %9, align 16, !tbaa !5
  br label %752

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

771:                                              ; preds = %752
  br label %772

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

782:                                              ; preds = %772
  call void @llvm.lifetime.start.p0(i64 16, ptr %50) #3
  %783 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %784 = bitcast <2 x i64> %783 to <16 x i8>
  %785 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %784, <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>
  %786 = bitcast <16 x i8> %785 to <2 x i64>
  %787 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %788 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %786, <2 x i64> noundef %787)
  store <2 x i64> %788, ptr %50, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %51) #3
  %789 = load <2 x i64>, ptr %50, align 16, !tbaa !5
  %790 = bitcast <2 x i64> %789 to <16 x i8>
  %791 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %790, <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>
  %792 = bitcast <16 x i8> %791 to <2 x i64>
  %793 = load <2 x i64>, ptr %50, align 16, !tbaa !5
  %794 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %792, <2 x i64> noundef %793)
  store <2 x i64> %794, ptr %51, align 16, !tbaa !5
  %795 = load <2 x i64>, ptr %51, align 16, !tbaa !5
  %796 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %797 = bitcast <2 x i64> %796 to <4 x i32>
  %798 = shufflevector <4 x i32> %797, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %799 = bitcast <4 x i32> %798 to <2 x i64>
  %800 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %795, <2 x i64> noundef %799)
  store <2 x i64> %800, 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 %801

801:                                              ; preds = %782
  br label %802

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

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

839:                                              ; preds = %820
  br label %840

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

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

877:                                              ; preds = %858
  br label %878

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

896:                                              ; preds = %878
  call void @llvm.lifetime.start.p0(i64 16, ptr %56) #3
  %897 = load <2 x i64>, ptr %9, 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 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>
  %900 = bitcast <16 x i8> %899 to <2 x i64>
  %901 = load <2 x i64>, ptr %9, 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 %56, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %57) #3
  %903 = load <2 x i64>, ptr %56, align 16, !tbaa !5
  %904 = bitcast <2 x i64> %903 to <16 x i8>
  %905 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %904, <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>
  %906 = bitcast <16 x i8> %905 to <2 x i64>
  %907 = load <2 x i64>, ptr %56, align 16, !tbaa !5
  %908 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %906, <2 x i64> noundef %907)
  store <2 x i64> %908, ptr %57, align 16, !tbaa !5
  %909 = load <2 x i64>, ptr %57, align 16, !tbaa !5
  %910 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %911 = bitcast <2 x i64> %910 to <4 x i32>
  %912 = shufflevector <4 x i32> %911, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %913 = bitcast <4 x i32> %912 to <2 x i64>
  %914 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %909, <2 x i64> noundef %913)
  store <2 x i64> %914, 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 %915

915:                                              ; preds = %896
  br label %916

916:                                              ; preds = %915
  %917 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %917, ptr %4, align 16, !tbaa !5
  %918 = load ptr, ptr %7, align 8, !tbaa !8
  %919 = getelementptr inbounds <2 x i64>, ptr %918, i32 1
  store ptr %919, ptr %7, align 8, !tbaa !8
  %920 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %918, <2 x i64> noundef %920)
  %921 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %922 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %921, i32 noundef 13)
  store <2 x i64> %922, ptr %10, align 16, !tbaa !5
  %923 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %923, ptr %9, align 16, !tbaa !5
  %924 = load ptr, ptr %5, align 8, !tbaa !8
  %925 = getelementptr inbounds <2 x i64>, ptr %924, i32 1
  store ptr %925, ptr %5, align 8, !tbaa !8
  %926 = load ptr, ptr %5, align 8, !tbaa !8
  %927 = call <2 x i64> @_mm_loadu_si128(ptr noundef %926)
  store <2 x i64> %927, ptr %8, align 16, !tbaa !5
  %928 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %929 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %930 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %929, i32 noundef 19)
  %931 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %932 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %930, <2 x i64> noundef %931)
  %933 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %928, <2 x i64> noundef %932)
  store <2 x i64> %933, ptr %9, align 16, !tbaa !5
  br label %934

934:                                              ; preds = %916
  call void @llvm.lifetime.start.p0(i64 16, ptr %58) #3
  %935 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %936 = bitcast <2 x i64> %935 to <16 x i8>
  %937 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %936, <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>
  %938 = bitcast <16 x i8> %937 to <2 x i64>
  %939 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %940 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %938, <2 x i64> noundef %939)
  store <2 x i64> %940, ptr %58, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %59) #3
  %941 = load <2 x i64>, ptr %58, align 16, !tbaa !5
  %942 = bitcast <2 x i64> %941 to <16 x i8>
  %943 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %942, <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>
  %944 = bitcast <16 x i8> %943 to <2 x i64>
  %945 = load <2 x i64>, ptr %58, align 16, !tbaa !5
  %946 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %944, <2 x i64> noundef %945)
  store <2 x i64> %946, ptr %59, align 16, !tbaa !5
  %947 = load <2 x i64>, ptr %59, align 16, !tbaa !5
  %948 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %949 = bitcast <2 x i64> %948 to <4 x i32>
  %950 = shufflevector <4 x i32> %949, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %951 = bitcast <4 x i32> %950 to <2 x i64>
  %952 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %947, <2 x i64> noundef %951)
  store <2 x i64> %952, 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 %953

953:                                              ; preds = %934
  br label %954

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

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

991:                                              ; preds = %972
  br label %992

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

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

1021:                                             ; preds = %1002
  br label %1022

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

1040:                                             ; preds = %1022
  call void @llvm.lifetime.start.p0(i64 16, ptr %64) #3
  %1041 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1042 = bitcast <2 x i64> %1041 to <16 x i8>
  %1043 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1042, <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>
  %1044 = bitcast <16 x i8> %1043 to <2 x i64>
  %1045 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1046 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1044, <2 x i64> noundef %1045)
  store <2 x i64> %1046, ptr %64, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %65) #3
  %1047 = load <2 x i64>, ptr %64, align 16, !tbaa !5
  %1048 = bitcast <2 x i64> %1047 to <16 x i8>
  %1049 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1048, <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>
  %1050 = bitcast <16 x i8> %1049 to <2 x i64>
  %1051 = load <2 x i64>, ptr %64, align 16, !tbaa !5
  %1052 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1050, <2 x i64> noundef %1051)
  store <2 x i64> %1052, ptr %65, align 16, !tbaa !5
  %1053 = load <2 x i64>, ptr %65, align 16, !tbaa !5
  %1054 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1055 = bitcast <2 x i64> %1054 to <4 x i32>
  %1056 = shufflevector <4 x i32> %1055, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1057 = bitcast <4 x i32> %1056 to <2 x i64>
  %1058 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1053, <2 x i64> noundef %1057)
  store <2 x i64> %1058, 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 %1059

1059:                                             ; preds = %1040
  br label %1060

1060:                                             ; preds = %1059
  %1061 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1061, ptr %4, align 16, !tbaa !5
  %1062 = load ptr, ptr %7, align 8, !tbaa !8
  %1063 = getelementptr inbounds <2 x i64>, ptr %1062, i32 1
  store ptr %1063, ptr %7, align 8, !tbaa !8
  %1064 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1062, <2 x i64> noundef %1064)
  %1065 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1066 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1065, i32 noundef 25)
  store <2 x i64> %1066, ptr %10, align 16, !tbaa !5
  %1067 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %1067, ptr %9, align 16, !tbaa !5
  %1068 = load ptr, ptr %5, align 8, !tbaa !8
  %1069 = getelementptr inbounds <2 x i64>, ptr %1068, i32 1
  store ptr %1069, ptr %5, align 8, !tbaa !8
  %1070 = load ptr, ptr %5, align 8, !tbaa !8
  %1071 = call <2 x i64> @_mm_loadu_si128(ptr noundef %1070)
  store <2 x i64> %1071, ptr %8, align 16, !tbaa !5
  %1072 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1073 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1074 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %1073, i32 noundef 7)
  %1075 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %1076 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %1074, <2 x i64> noundef %1075)
  %1077 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %1072, <2 x i64> noundef %1076)
  store <2 x i64> %1077, ptr %9, align 16, !tbaa !5
  br label %1078

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

1097:                                             ; preds = %1078
  br label %1098

1098:                                             ; preds = %1097
  %1099 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1099, ptr %4, align 16, !tbaa !5
  %1100 = load ptr, ptr %7, align 8, !tbaa !8
  %1101 = getelementptr inbounds <2 x i64>, ptr %1100, i32 1
  store ptr %1101, ptr %7, align 8, !tbaa !8
  %1102 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1100, <2 x i64> noundef %1102)
  %1103 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1104 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1103, i32 noundef 20)
  store <2 x i64> %1104, ptr %10, align 16, !tbaa !5
  %1105 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %1105, ptr %9, align 16, !tbaa !5
  %1106 = load ptr, ptr %5, align 8, !tbaa !8
  %1107 = getelementptr inbounds <2 x i64>, ptr %1106, i32 1
  store ptr %1107, ptr %5, align 8, !tbaa !8
  %1108 = load ptr, ptr %5, align 8, !tbaa !8
  %1109 = call <2 x i64> @_mm_loadu_si128(ptr noundef %1108)
  store <2 x i64> %1109, ptr %8, align 16, !tbaa !5
  %1110 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1111 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1112 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %1111, i32 noundef 12)
  %1113 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %1114 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %1112, <2 x i64> noundef %1113)
  %1115 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %1110, <2 x i64> noundef %1114)
  store <2 x i64> %1115, ptr %9, align 16, !tbaa !5
  br label %1116

1116:                                             ; preds = %1098
  call void @llvm.lifetime.start.p0(i64 16, ptr %68) #3
  %1117 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1118 = bitcast <2 x i64> %1117 to <16 x i8>
  %1119 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1118, <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>
  %1120 = bitcast <16 x i8> %1119 to <2 x i64>
  %1121 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1122 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1120, <2 x i64> noundef %1121)
  store <2 x i64> %1122, ptr %68, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %69) #3
  %1123 = load <2 x i64>, ptr %68, align 16, !tbaa !5
  %1124 = bitcast <2 x i64> %1123 to <16 x i8>
  %1125 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1124, <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>
  %1126 = bitcast <16 x i8> %1125 to <2 x i64>
  %1127 = load <2 x i64>, ptr %68, align 16, !tbaa !5
  %1128 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1126, <2 x i64> noundef %1127)
  store <2 x i64> %1128, ptr %69, align 16, !tbaa !5
  %1129 = load <2 x i64>, ptr %69, align 16, !tbaa !5
  %1130 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1131 = bitcast <2 x i64> %1130 to <4 x i32>
  %1132 = shufflevector <4 x i32> %1131, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1133 = bitcast <4 x i32> %1132 to <2 x i64>
  %1134 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1129, <2 x i64> noundef %1133)
  store <2 x i64> %1134, 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 %1135

1135:                                             ; preds = %1116
  br label %1136

1136:                                             ; preds = %1135
  %1137 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1137, ptr %4, align 16, !tbaa !5
  %1138 = load ptr, ptr %7, align 8, !tbaa !8
  %1139 = getelementptr inbounds <2 x i64>, ptr %1138, i32 1
  store ptr %1139, ptr %7, align 8, !tbaa !8
  %1140 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1138, <2 x i64> noundef %1140)
  %1141 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1142 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1141, i32 noundef 15)
  store <2 x i64> %1142, ptr %10, align 16, !tbaa !5
  %1143 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %1143, ptr %9, align 16, !tbaa !5
  %1144 = load ptr, ptr %5, align 8, !tbaa !8
  %1145 = getelementptr inbounds <2 x i64>, ptr %1144, i32 1
  store ptr %1145, ptr %5, align 8, !tbaa !8
  %1146 = load ptr, ptr %5, align 8, !tbaa !8
  %1147 = call <2 x i64> @_mm_loadu_si128(ptr noundef %1146)
  store <2 x i64> %1147, ptr %8, align 16, !tbaa !5
  %1148 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1149 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1150 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %1149, i32 noundef 17)
  %1151 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %1152 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %1150, <2 x i64> noundef %1151)
  %1153 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %1148, <2 x i64> noundef %1152)
  store <2 x i64> %1153, ptr %9, align 16, !tbaa !5
  br label %1154

1154:                                             ; preds = %1136
  call void @llvm.lifetime.start.p0(i64 16, ptr %70) #3
  %1155 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1156 = bitcast <2 x i64> %1155 to <16 x i8>
  %1157 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1156, <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>
  %1158 = bitcast <16 x i8> %1157 to <2 x i64>
  %1159 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1160 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1158, <2 x i64> noundef %1159)
  store <2 x i64> %1160, ptr %70, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %71) #3
  %1161 = load <2 x i64>, ptr %70, align 16, !tbaa !5
  %1162 = bitcast <2 x i64> %1161 to <16 x i8>
  %1163 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1162, <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>
  %1164 = bitcast <16 x i8> %1163 to <2 x i64>
  %1165 = load <2 x i64>, ptr %70, align 16, !tbaa !5
  %1166 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1164, <2 x i64> noundef %1165)
  store <2 x i64> %1166, ptr %71, align 16, !tbaa !5
  %1167 = load <2 x i64>, ptr %71, align 16, !tbaa !5
  %1168 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1169 = bitcast <2 x i64> %1168 to <4 x i32>
  %1170 = shufflevector <4 x i32> %1169, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1171 = bitcast <4 x i32> %1170 to <2 x i64>
  %1172 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1167, <2 x i64> noundef %1171)
  store <2 x i64> %1172, 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 %1173

1173:                                             ; preds = %1154
  br label %1174

1174:                                             ; preds = %1173
  %1175 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1175, ptr %4, align 16, !tbaa !5
  %1176 = load ptr, ptr %7, align 8, !tbaa !8
  %1177 = getelementptr inbounds <2 x i64>, ptr %1176, i32 1
  store ptr %1177, ptr %7, align 8, !tbaa !8
  %1178 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1176, <2 x i64> noundef %1178)
  %1179 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1180 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1179, i32 noundef 10)
  store <2 x i64> %1180, ptr %10, align 16, !tbaa !5
  %1181 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %1181, ptr %9, align 16, !tbaa !5
  %1182 = load ptr, ptr %5, align 8, !tbaa !8
  %1183 = getelementptr inbounds <2 x i64>, ptr %1182, i32 1
  store ptr %1183, ptr %5, align 8, !tbaa !8
  %1184 = load ptr, ptr %5, align 8, !tbaa !8
  %1185 = call <2 x i64> @_mm_loadu_si128(ptr noundef %1184)
  store <2 x i64> %1185, ptr %8, align 16, !tbaa !5
  %1186 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1187 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1188 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %1187, i32 noundef 22)
  %1189 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %1190 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %1188, <2 x i64> noundef %1189)
  %1191 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %1186, <2 x i64> noundef %1190)
  store <2 x i64> %1191, ptr %9, align 16, !tbaa !5
  br label %1192

1192:                                             ; preds = %1174
  call void @llvm.lifetime.start.p0(i64 16, ptr %72) #3
  %1193 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1194 = bitcast <2 x i64> %1193 to <16 x i8>
  %1195 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1194, <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>
  %1196 = bitcast <16 x i8> %1195 to <2 x i64>
  %1197 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1198 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1196, <2 x i64> noundef %1197)
  store <2 x i64> %1198, ptr %72, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %73) #3
  %1199 = load <2 x i64>, ptr %72, align 16, !tbaa !5
  %1200 = bitcast <2 x i64> %1199 to <16 x i8>
  %1201 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1200, <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>
  %1202 = bitcast <16 x i8> %1201 to <2 x i64>
  %1203 = load <2 x i64>, ptr %72, align 16, !tbaa !5
  %1204 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1202, <2 x i64> noundef %1203)
  store <2 x i64> %1204, ptr %73, align 16, !tbaa !5
  %1205 = load <2 x i64>, ptr %73, align 16, !tbaa !5
  %1206 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1207 = bitcast <2 x i64> %1206 to <4 x i32>
  %1208 = shufflevector <4 x i32> %1207, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1209 = bitcast <4 x i32> %1208 to <2 x i64>
  %1210 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1205, <2 x i64> noundef %1209)
  store <2 x i64> %1210, 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 %1211

1211:                                             ; preds = %1192
  br label %1212

1212:                                             ; preds = %1211
  %1213 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1213, ptr %4, align 16, !tbaa !5
  %1214 = load ptr, ptr %7, align 8, !tbaa !8
  %1215 = getelementptr inbounds <2 x i64>, ptr %1214, i32 1
  store ptr %1215, ptr %7, align 8, !tbaa !8
  %1216 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1214, <2 x i64> noundef %1216)
  %1217 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1218 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1217, i32 noundef 5)
  store <2 x i64> %1218, ptr %10, align 16, !tbaa !5
  %1219 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %1219, ptr %9, align 16, !tbaa !5
  br label %1220

1220:                                             ; preds = %1212
  call void @llvm.lifetime.start.p0(i64 16, ptr %74) #3
  %1221 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1222 = bitcast <2 x i64> %1221 to <16 x i8>
  %1223 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1222, <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>
  %1224 = bitcast <16 x i8> %1223 to <2 x i64>
  %1225 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1226 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1224, <2 x i64> noundef %1225)
  store <2 x i64> %1226, ptr %74, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %75) #3
  %1227 = load <2 x i64>, ptr %74, align 16, !tbaa !5
  %1228 = bitcast <2 x i64> %1227 to <16 x i8>
  %1229 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1228, <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>
  %1230 = bitcast <16 x i8> %1229 to <2 x i64>
  %1231 = load <2 x i64>, ptr %74, align 16, !tbaa !5
  %1232 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1230, <2 x i64> noundef %1231)
  store <2 x i64> %1232, ptr %75, align 16, !tbaa !5
  %1233 = load <2 x i64>, ptr %75, align 16, !tbaa !5
  %1234 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1235 = bitcast <2 x i64> %1234 to <4 x i32>
  %1236 = shufflevector <4 x i32> %1235, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1237 = bitcast <4 x i32> %1236 to <2 x i64>
  %1238 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1233, <2 x i64> noundef %1237)
  store <2 x i64> %1238, 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 %1239

1239:                                             ; preds = %1220
  br label %1240

1240:                                             ; preds = %1239
  %1241 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1241, ptr %4, align 16, !tbaa !5
  %1242 = load ptr, ptr %7, align 8, !tbaa !8
  %1243 = getelementptr inbounds <2 x i64>, ptr %1242, i32 1
  store ptr %1243, ptr %7, align 8, !tbaa !8
  %1244 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1242, <2 x i64> noundef %1244)
  %1245 = 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> %1245
}

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> @iunpack27(<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 134217727)
  %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 27)
  %19 = getelementptr inbounds i8, ptr %1, i64 16
  %20 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %19)
  %21 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %20, i32 noundef 5)
  %22 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %21, <2 x i64> noundef %5)
  %23 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %18, <2 x i64> noundef %22)
  %24 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %23, <2 x i32> <i32 1, i32 2>
  %25 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %24, <2 x i64> noundef %23)
  %26 = bitcast <2 x i64> %25 to <16 x i8>
  %27 = 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> %26, <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>
  %28 = bitcast <16 x i8> %27 to <2 x i64>
  %29 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %28, <2 x i64> noundef %25)
  %30 = bitcast <2 x i64> %16 to <4 x i32>
  %31 = shufflevector <4 x i32> %30, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %32 = bitcast <4 x i32> %31 to <2 x i64>
  %33 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %29, <2 x i64> noundef %32)
  %34 = getelementptr inbounds i8, ptr %2, i64 32
  tail call void @_mm_storeu_si128(ptr noundef nonnull %17, <2 x i64> noundef %33)
  %35 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %20, i32 noundef 22)
  %36 = getelementptr inbounds i8, ptr %1, i64 32
  %37 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %36)
  %38 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %37, i32 noundef 10)
  %39 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %38, <2 x i64> noundef %5)
  %40 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %35, <2 x i64> noundef %39)
  %41 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %40, <2 x i32> <i32 1, i32 2>
  %42 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %41, <2 x i64> noundef %40)
  %43 = bitcast <2 x i64> %42 to <16 x i8>
  %44 = 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> %43, <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>
  %45 = bitcast <16 x i8> %44 to <2 x i64>
  %46 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %45, <2 x i64> noundef %42)
  %47 = bitcast <2 x i64> %33 to <4 x i32>
  %48 = shufflevector <4 x i32> %47, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %49 = bitcast <4 x i32> %48 to <2 x i64>
  %50 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %46, <2 x i64> noundef %49)
  %51 = getelementptr inbounds i8, ptr %2, i64 48
  tail call void @_mm_storeu_si128(ptr noundef nonnull %34, <2 x i64> noundef %50)
  %52 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %37, i32 noundef 17)
  %53 = getelementptr inbounds i8, ptr %1, i64 48
  %54 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %53)
  %55 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %54, i32 noundef 15)
  %56 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %55, <2 x i64> noundef %5)
  %57 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %52, <2 x i64> noundef %56)
  %58 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %57, <2 x i32> <i32 1, i32 2>
  %59 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %58, <2 x i64> noundef %57)
  %60 = bitcast <2 x i64> %59 to <16 x i8>
  %61 = 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> %60, <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>
  %62 = bitcast <16 x i8> %61 to <2 x i64>
  %63 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %62, <2 x i64> noundef %59)
  %64 = bitcast <2 x i64> %50 to <4 x i32>
  %65 = shufflevector <4 x i32> %64, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %66 = bitcast <4 x i32> %65 to <2 x i64>
  %67 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %63, <2 x i64> noundef %66)
  %68 = getelementptr inbounds i8, ptr %2, i64 64
  tail call void @_mm_storeu_si128(ptr noundef nonnull %51, <2 x i64> noundef %67)
  %69 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %54, i32 noundef 12)
  %70 = getelementptr inbounds i8, ptr %1, i64 64
  %71 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %70)
  %72 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %71, i32 noundef 20)
  %73 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %72, <2 x i64> noundef %5)
  %74 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %69, <2 x i64> noundef %73)
  %75 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %74, <2 x i32> <i32 1, i32 2>
  %76 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %75, <2 x i64> noundef %74)
  %77 = bitcast <2 x i64> %76 to <16 x i8>
  %78 = 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> %77, <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>
  %79 = bitcast <16 x i8> %78 to <2 x i64>
  %80 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %79, <2 x i64> noundef %76)
  %81 = bitcast <2 x i64> %67 to <4 x i32>
  %82 = shufflevector <4 x i32> %81, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %83 = bitcast <4 x i32> %82 to <2 x i64>
  %84 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %80, <2 x i64> noundef %83)
  %85 = getelementptr inbounds i8, ptr %2, i64 80
  tail call void @_mm_storeu_si128(ptr noundef nonnull %68, <2 x i64> noundef %84)
  %86 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %71, i32 noundef 7)
  %87 = getelementptr inbounds i8, ptr %1, i64 80
  %88 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %87)
  %89 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %88, i32 noundef 25)
  %90 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %89, <2 x i64> noundef %5)
  %91 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %86, <2 x i64> noundef %90)
  %92 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %91, <2 x i32> <i32 1, i32 2>
  %93 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %92, <2 x i64> noundef %91)
  %94 = bitcast <2 x i64> %93 to <16 x i8>
  %95 = 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> %94, <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>
  %96 = bitcast <16 x i8> %95 to <2 x i64>
  %97 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %96, <2 x i64> noundef %93)
  %98 = bitcast <2 x i64> %84 to <4 x i32>
  %99 = shufflevector <4 x i32> %98, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %100 = bitcast <4 x i32> %99 to <2 x i64>
  %101 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %97, <2 x i64> noundef %100)
  %102 = getelementptr inbounds i8, ptr %2, i64 96
  tail call void @_mm_storeu_si128(ptr noundef nonnull %85, <2 x i64> noundef %101)
  %103 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %88, i32 noundef 2)
  %104 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %103, <2 x i64> noundef %5)
  %105 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %104, <2 x i32> <i32 1, i32 2>
  %106 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %105, <2 x i64> noundef %104)
  %107 = bitcast <2 x i64> %106 to <16 x i8>
  %108 = 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> %107, <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>
  %109 = bitcast <16 x i8> %108 to <2 x i64>
  %110 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %109, <2 x i64> noundef %106)
  %111 = bitcast <2 x i64> %101 to <4 x i32>
  %112 = shufflevector <4 x i32> %111, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %113 = bitcast <4 x i32> %112 to <2 x i64>
  %114 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %110, <2 x i64> noundef %113)
  %115 = getelementptr inbounds i8, ptr %2, i64 112
  tail call void @_mm_storeu_si128(ptr noundef nonnull %102, <2 x i64> noundef %114)
  %116 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %88, i32 noundef 29)
  %117 = getelementptr inbounds i8, ptr %1, i64 96
  %118 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %117)
  %119 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %118, i32 noundef 3)
  %120 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %119, <2 x i64> noundef %5)
  %121 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %116, <2 x i64> noundef %120)
  %122 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %121, <2 x i32> <i32 1, i32 2>
  %123 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %122, <2 x i64> noundef %121)
  %124 = bitcast <2 x i64> %123 to <16 x i8>
  %125 = 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> %124, <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>
  %126 = bitcast <16 x i8> %125 to <2 x i64>
  %127 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %126, <2 x i64> noundef %123)
  %128 = bitcast <2 x i64> %114 to <4 x i32>
  %129 = shufflevector <4 x i32> %128, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %130 = bitcast <4 x i32> %129 to <2 x i64>
  %131 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %127, <2 x i64> noundef %130)
  %132 = getelementptr inbounds i8, ptr %2, i64 128
  tail call void @_mm_storeu_si128(ptr noundef nonnull %115, <2 x i64> noundef %131)
  %133 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %118, i32 noundef 24)
  %134 = getelementptr inbounds i8, ptr %1, i64 112
  %135 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %134)
  %136 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %135, i32 noundef 8)
  %137 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %136, <2 x i64> noundef %5)
  %138 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %133, <2 x i64> noundef %137)
  %139 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %138, <2 x i32> <i32 1, i32 2>
  %140 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %139, <2 x i64> noundef %138)
  %141 = bitcast <2 x i64> %140 to <16 x i8>
  %142 = 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> %141, <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>
  %143 = bitcast <16 x i8> %142 to <2 x i64>
  %144 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %143, <2 x i64> noundef %140)
  %145 = bitcast <2 x i64> %131 to <4 x i32>
  %146 = shufflevector <4 x i32> %145, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %147 = bitcast <4 x i32> %146 to <2 x i64>
  %148 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %144, <2 x i64> noundef %147)
  %149 = getelementptr inbounds i8, ptr %2, i64 144
  tail call void @_mm_storeu_si128(ptr noundef nonnull %132, <2 x i64> noundef %148)
  %150 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %135, i32 noundef 19)
  %151 = getelementptr inbounds i8, ptr %1, i64 128
  %152 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %151)
  %153 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %152, i32 noundef 13)
  %154 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %153, <2 x i64> noundef %5)
  %155 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %150, <2 x i64> noundef %154)
  %156 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %155, <2 x i32> <i32 1, i32 2>
  %157 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %156, <2 x i64> noundef %155)
  %158 = bitcast <2 x i64> %157 to <16 x i8>
  %159 = 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> %158, <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>
  %160 = bitcast <16 x i8> %159 to <2 x i64>
  %161 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %160, <2 x i64> noundef %157)
  %162 = bitcast <2 x i64> %148 to <4 x i32>
  %163 = shufflevector <4 x i32> %162, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %164 = bitcast <4 x i32> %163 to <2 x i64>
  %165 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %161, <2 x i64> noundef %164)
  %166 = getelementptr inbounds i8, ptr %2, i64 160
  tail call void @_mm_storeu_si128(ptr noundef nonnull %149, <2 x i64> noundef %165)
  %167 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %152, i32 noundef 14)
  %168 = getelementptr inbounds i8, ptr %1, i64 144
  %169 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %168)
  %170 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %169, i32 noundef 18)
  %171 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %170, <2 x i64> noundef %5)
  %172 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %167, <2 x i64> noundef %171)
  %173 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %172, <2 x i32> <i32 1, i32 2>
  %174 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %173, <2 x i64> noundef %172)
  %175 = bitcast <2 x i64> %174 to <16 x i8>
  %176 = 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> %175, <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>
  %177 = bitcast <16 x i8> %176 to <2 x i64>
  %178 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %177, <2 x i64> noundef %174)
  %179 = bitcast <2 x i64> %165 to <4 x i32>
  %180 = shufflevector <4 x i32> %179, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %181 = bitcast <4 x i32> %180 to <2 x i64>
  %182 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %178, <2 x i64> noundef %181)
  %183 = getelementptr inbounds i8, ptr %2, i64 176
  tail call void @_mm_storeu_si128(ptr noundef nonnull %166, <2 x i64> noundef %182)
  %184 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %169, i32 noundef 9)
  %185 = getelementptr inbounds i8, ptr %1, i64 160
  %186 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %185)
  %187 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %186, i32 noundef 23)
  %188 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %187, <2 x i64> noundef %5)
  %189 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %184, <2 x i64> noundef %188)
  %190 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %189, <2 x i32> <i32 1, i32 2>
  %191 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %190, <2 x i64> noundef %189)
  %192 = bitcast <2 x i64> %191 to <16 x i8>
  %193 = 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> %192, <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>
  %194 = bitcast <16 x i8> %193 to <2 x i64>
  %195 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %194, <2 x i64> noundef %191)
  %196 = bitcast <2 x i64> %182 to <4 x i32>
  %197 = shufflevector <4 x i32> %196, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %198 = bitcast <4 x i32> %197 to <2 x i64>
  %199 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %195, <2 x i64> noundef %198)
  %200 = getelementptr inbounds i8, ptr %2, i64 192
  tail call void @_mm_storeu_si128(ptr noundef nonnull %183, <2 x i64> noundef %199)
  %201 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %186, i32 noundef 4)
  %202 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %201, <2 x i64> noundef %5)
  %203 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %202, <2 x i32> <i32 1, i32 2>
  %204 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %203, <2 x i64> noundef %202)
  %205 = bitcast <2 x i64> %204 to <16 x i8>
  %206 = 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> %205, <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>
  %207 = bitcast <16 x i8> %206 to <2 x i64>
  %208 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %207, <2 x i64> noundef %204)
  %209 = bitcast <2 x i64> %199 to <4 x i32>
  %210 = shufflevector <4 x i32> %209, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %211 = bitcast <4 x i32> %210 to <2 x i64>
  %212 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %208, <2 x i64> noundef %211)
  %213 = getelementptr inbounds i8, ptr %2, i64 208
  tail call void @_mm_storeu_si128(ptr noundef nonnull %200, <2 x i64> noundef %212)
  %214 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %186, i32 noundef 31)
  %215 = getelementptr inbounds i8, ptr %1, i64 176
  %216 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %215)
  %217 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %216, i32 noundef 1)
  %218 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %217, <2 x i64> noundef %5)
  %219 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %214, <2 x i64> noundef %218)
  %220 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %219, <2 x i32> <i32 1, i32 2>
  %221 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %220, <2 x i64> noundef %219)
  %222 = bitcast <2 x i64> %221 to <16 x i8>
  %223 = 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> %222, <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>
  %224 = bitcast <16 x i8> %223 to <2 x i64>
  %225 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %224, <2 x i64> noundef %221)
  %226 = bitcast <2 x i64> %212 to <4 x i32>
  %227 = shufflevector <4 x i32> %226, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %228 = bitcast <4 x i32> %227 to <2 x i64>
  %229 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %225, <2 x i64> noundef %228)
  %230 = getelementptr inbounds i8, ptr %2, i64 224
  tail call void @_mm_storeu_si128(ptr noundef nonnull %213, <2 x i64> noundef %229)
  %231 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %216, i32 noundef 26)
  %232 = getelementptr inbounds i8, ptr %1, i64 192
  %233 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %232)
  %234 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %233, i32 noundef 6)
  %235 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %234, <2 x i64> noundef %5)
  %236 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %231, <2 x i64> noundef %235)
  %237 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %236, <2 x i32> <i32 1, i32 2>
  %238 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %237, <2 x i64> noundef %236)
  %239 = bitcast <2 x i64> %238 to <16 x i8>
  %240 = 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> %239, <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>
  %241 = bitcast <16 x i8> %240 to <2 x i64>
  %242 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %241, <2 x i64> noundef %238)
  %243 = bitcast <2 x i64> %229 to <4 x i32>
  %244 = shufflevector <4 x i32> %243, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %245 = bitcast <4 x i32> %244 to <2 x i64>
  %246 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %242, <2 x i64> noundef %245)
  %247 = getelementptr inbounds i8, ptr %2, i64 240
  tail call void @_mm_storeu_si128(ptr noundef nonnull %230, <2 x i64> noundef %246)
  %248 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %233, i32 noundef 21)
  %249 = getelementptr inbounds i8, ptr %1, i64 208
  %250 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %249)
  %251 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %250, i32 noundef 11)
  %252 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %251, <2 x i64> noundef %5)
  %253 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %248, <2 x i64> noundef %252)
  %254 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %253, <2 x i32> <i32 1, i32 2>
  %255 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %254, <2 x i64> noundef %253)
  %256 = bitcast <2 x i64> %255 to <16 x i8>
  %257 = 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> %256, <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>
  %258 = bitcast <16 x i8> %257 to <2 x i64>
  %259 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %258, <2 x i64> noundef %255)
  %260 = bitcast <2 x i64> %246 to <4 x i32>
  %261 = shufflevector <4 x i32> %260, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %262 = bitcast <4 x i32> %261 to <2 x i64>
  %263 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %259, <2 x i64> noundef %262)
  %264 = getelementptr inbounds i8, ptr %2, i64 256
  tail call void @_mm_storeu_si128(ptr noundef nonnull %247, <2 x i64> noundef %263)
  %265 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %250, i32 noundef 16)
  %266 = getelementptr inbounds i8, ptr %1, i64 224
  %267 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %266)
  %268 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %267, i32 noundef 16)
  %269 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %268, <2 x i64> noundef %5)
  %270 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %265, <2 x i64> noundef %269)
  %271 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %270, <2 x i32> <i32 1, i32 2>
  %272 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %271, <2 x i64> noundef %270)
  %273 = bitcast <2 x i64> %272 to <16 x i8>
  %274 = 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> %273, <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>
  %275 = bitcast <16 x i8> %274 to <2 x i64>
  %276 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %275, <2 x i64> noundef %272)
  %277 = bitcast <2 x i64> %263 to <4 x i32>
  %278 = shufflevector <4 x i32> %277, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %279 = bitcast <4 x i32> %278 to <2 x i64>
  %280 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %276, <2 x i64> noundef %279)
  %281 = getelementptr inbounds i8, ptr %2, i64 272
  tail call void @_mm_storeu_si128(ptr noundef nonnull %264, <2 x i64> noundef %280)
  %282 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %267, i32 noundef 11)
  %283 = getelementptr inbounds i8, ptr %1, i64 240
  %284 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %283)
  %285 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %284, i32 noundef 21)
  %286 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %285, <2 x i64> noundef %5)
  %287 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %282, <2 x i64> noundef %286)
  %288 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %287, <2 x i32> <i32 1, i32 2>
  %289 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %288, <2 x i64> noundef %287)
  %290 = bitcast <2 x i64> %289 to <16 x i8>
  %291 = 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> %290, <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>
  %292 = bitcast <16 x i8> %291 to <2 x i64>
  %293 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %292, <2 x i64> noundef %289)
  %294 = bitcast <2 x i64> %280 to <4 x i32>
  %295 = shufflevector <4 x i32> %294, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %296 = bitcast <4 x i32> %295 to <2 x i64>
  %297 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %293, <2 x i64> noundef %296)
  %298 = getelementptr inbounds i8, ptr %2, i64 288
  tail call void @_mm_storeu_si128(ptr noundef nonnull %281, <2 x i64> noundef %297)
  %299 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %284, i32 noundef 6)
  %300 = getelementptr inbounds i8, ptr %1, i64 256
  %301 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %300)
  %302 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %301, i32 noundef 26)
  %303 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %302, <2 x i64> noundef %5)
  %304 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %299, <2 x i64> noundef %303)
  %305 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %304, <2 x i32> <i32 1, i32 2>
  %306 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %305, <2 x i64> noundef %304)
  %307 = bitcast <2 x i64> %306 to <16 x i8>
  %308 = 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> %307, <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>
  %309 = bitcast <16 x i8> %308 to <2 x i64>
  %310 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %309, <2 x i64> noundef %306)
  %311 = bitcast <2 x i64> %297 to <4 x i32>
  %312 = shufflevector <4 x i32> %311, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %313 = bitcast <4 x i32> %312 to <2 x i64>
  %314 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %310, <2 x i64> noundef %313)
  %315 = getelementptr inbounds i8, ptr %2, i64 304
  tail call void @_mm_storeu_si128(ptr noundef nonnull %298, <2 x i64> noundef %314)
  %316 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %301, i32 noundef 1)
  %317 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %316, <2 x i64> noundef %5)
  %318 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %317, <2 x i32> <i32 1, i32 2>
  %319 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %318, <2 x i64> noundef %317)
  %320 = bitcast <2 x i64> %319 to <16 x i8>
  %321 = 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> %320, <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>
  %322 = bitcast <16 x i8> %321 to <2 x i64>
  %323 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %322, <2 x i64> noundef %319)
  %324 = bitcast <2 x i64> %314 to <4 x i32>
  %325 = shufflevector <4 x i32> %324, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %326 = bitcast <4 x i32> %325 to <2 x i64>
  %327 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %323, <2 x i64> noundef %326)
  %328 = getelementptr inbounds i8, ptr %2, i64 320
  tail call void @_mm_storeu_si128(ptr noundef nonnull %315, <2 x i64> noundef %327)
  %329 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %301, i32 noundef 28)
  %330 = getelementptr inbounds i8, ptr %1, i64 272
  %331 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %330)
  %332 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %331, i32 noundef 4)
  %333 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %332, <2 x i64> noundef %5)
  %334 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %329, <2 x i64> noundef %333)
  %335 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %334, <2 x i32> <i32 1, i32 2>
  %336 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %335, <2 x i64> noundef %334)
  %337 = bitcast <2 x i64> %336 to <16 x i8>
  %338 = 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> %337, <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>
  %339 = bitcast <16 x i8> %338 to <2 x i64>
  %340 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %339, <2 x i64> noundef %336)
  %341 = bitcast <2 x i64> %327 to <4 x i32>
  %342 = shufflevector <4 x i32> %341, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %343 = bitcast <4 x i32> %342 to <2 x i64>
  %344 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %340, <2 x i64> noundef %343)
  %345 = getelementptr inbounds i8, ptr %2, i64 336
  tail call void @_mm_storeu_si128(ptr noundef nonnull %328, <2 x i64> noundef %344)
  %346 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %331, i32 noundef 23)
  %347 = getelementptr inbounds i8, ptr %1, i64 288
  %348 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %347)
  %349 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %348, i32 noundef 9)
  %350 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %349, <2 x i64> noundef %5)
  %351 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %346, <2 x i64> noundef %350)
  %352 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %351, <2 x i32> <i32 1, i32 2>
  %353 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %352, <2 x i64> noundef %351)
  %354 = bitcast <2 x i64> %353 to <16 x i8>
  %355 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %354, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %356 = bitcast <16 x i8> %355 to <2 x i64>
  %357 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %356, <2 x i64> noundef %353)
  %358 = bitcast <2 x i64> %344 to <4 x i32>
  %359 = shufflevector <4 x i32> %358, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %360 = bitcast <4 x i32> %359 to <2 x i64>
  %361 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %357, <2 x i64> noundef %360)
  %362 = getelementptr inbounds i8, ptr %2, i64 352
  tail call void @_mm_storeu_si128(ptr noundef nonnull %345, <2 x i64> noundef %361)
  %363 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %348, i32 noundef 18)
  %364 = getelementptr inbounds i8, ptr %1, i64 304
  %365 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %364)
  %366 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %365, i32 noundef 14)
  %367 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %366, <2 x i64> noundef %5)
  %368 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %363, <2 x i64> noundef %367)
  %369 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %368, <2 x i32> <i32 1, i32 2>
  %370 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %369, <2 x i64> noundef %368)
  %371 = bitcast <2 x i64> %370 to <16 x i8>
  %372 = 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> %371, <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>
  %373 = bitcast <16 x i8> %372 to <2 x i64>
  %374 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %373, <2 x i64> noundef %370)
  %375 = bitcast <2 x i64> %361 to <4 x i32>
  %376 = shufflevector <4 x i32> %375, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %377 = bitcast <4 x i32> %376 to <2 x i64>
  %378 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %374, <2 x i64> noundef %377)
  %379 = getelementptr inbounds i8, ptr %2, i64 368
  tail call void @_mm_storeu_si128(ptr noundef nonnull %362, <2 x i64> noundef %378)
  %380 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %365, i32 noundef 13)
  %381 = getelementptr inbounds i8, ptr %1, i64 320
  %382 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %381)
  %383 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %382, i32 noundef 19)
  %384 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %383, <2 x i64> noundef %5)
  %385 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %380, <2 x i64> noundef %384)
  %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> %378 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 384
  tail call void @_mm_storeu_si128(ptr noundef nonnull %379, <2 x i64> noundef %395)
  %397 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %382, i32 noundef 8)
  %398 = getelementptr inbounds i8, ptr %1, i64 336
  %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 24)
  %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 400
  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 3)
  %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 416
  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 30)
  %428 = getelementptr inbounds i8, ptr %1, i64 352
  %429 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %428)
  %430 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %429, i32 noundef 2)
  %431 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %430, <2 x i64> noundef %5)
  %432 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %427, <2 x i64> noundef %431)
  %433 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %432, <2 x i32> <i32 1, i32 2>
  %434 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %433, <2 x i64> noundef %432)
  %435 = bitcast <2 x i64> %434 to <16 x i8>
  %436 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %435, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %437 = bitcast <16 x i8> %436 to <2 x i64>
  %438 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %437, <2 x i64> noundef %434)
  %439 = bitcast <2 x i64> %425 to <4 x i32>
  %440 = shufflevector <4 x i32> %439, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %441 = bitcast <4 x i32> %440 to <2 x i64>
  %442 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %438, <2 x i64> noundef %441)
  %443 = getelementptr inbounds i8, ptr %2, i64 432
  tail call void @_mm_storeu_si128(ptr noundef nonnull %426, <2 x i64> noundef %442)
  %444 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %429, i32 noundef 25)
  %445 = getelementptr inbounds i8, ptr %1, i64 368
  %446 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %445)
  %447 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %446, i32 noundef 7)
  %448 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %447, <2 x i64> noundef %5)
  %449 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %444, <2 x i64> noundef %448)
  %450 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %449, <2 x i32> <i32 1, i32 2>
  %451 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %450, <2 x i64> noundef %449)
  %452 = bitcast <2 x i64> %451 to <16 x i8>
  %453 = 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> %452, <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>
  %454 = bitcast <16 x i8> %453 to <2 x i64>
  %455 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %454, <2 x i64> noundef %451)
  %456 = bitcast <2 x i64> %442 to <4 x i32>
  %457 = shufflevector <4 x i32> %456, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %458 = bitcast <4 x i32> %457 to <2 x i64>
  %459 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %455, <2 x i64> noundef %458)
  %460 = getelementptr inbounds i8, ptr %2, i64 448
  tail call void @_mm_storeu_si128(ptr noundef nonnull %443, <2 x i64> noundef %459)
  %461 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %446, i32 noundef 20)
  %462 = getelementptr inbounds i8, ptr %1, i64 384
  %463 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %462)
  %464 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %463, i32 noundef 12)
  %465 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %464, <2 x i64> noundef %5)
  %466 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %461, <2 x i64> noundef %465)
  %467 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %466, <2 x i32> <i32 1, i32 2>
  %468 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %467, <2 x i64> noundef %466)
  %469 = bitcast <2 x i64> %468 to <16 x i8>
  %470 = 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> %469, <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>
  %471 = bitcast <16 x i8> %470 to <2 x i64>
  %472 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %471, <2 x i64> noundef %468)
  %473 = bitcast <2 x i64> %459 to <4 x i32>
  %474 = shufflevector <4 x i32> %473, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %475 = bitcast <4 x i32> %474 to <2 x i64>
  %476 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %472, <2 x i64> noundef %475)
  %477 = getelementptr inbounds i8, ptr %2, i64 464
  tail call void @_mm_storeu_si128(ptr noundef nonnull %460, <2 x i64> noundef %476)
  %478 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %463, i32 noundef 15)
  %479 = getelementptr inbounds i8, ptr %1, i64 400
  %480 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %479)
  %481 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %480, i32 noundef 17)
  %482 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %481, <2 x i64> noundef %5)
  %483 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %478, <2 x i64> noundef %482)
  %484 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %483, <2 x i32> <i32 1, i32 2>
  %485 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %484, <2 x i64> noundef %483)
  %486 = bitcast <2 x i64> %485 to <16 x i8>
  %487 = 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> %486, <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>
  %488 = bitcast <16 x i8> %487 to <2 x i64>
  %489 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %488, <2 x i64> noundef %485)
  %490 = bitcast <2 x i64> %476 to <4 x i32>
  %491 = shufflevector <4 x i32> %490, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %492 = bitcast <4 x i32> %491 to <2 x i64>
  %493 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %489, <2 x i64> noundef %492)
  %494 = getelementptr inbounds i8, ptr %2, i64 480
  tail call void @_mm_storeu_si128(ptr noundef nonnull %477, <2 x i64> noundef %493)
  %495 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %480, i32 noundef 10)
  %496 = getelementptr inbounds i8, ptr %1, i64 416
  %497 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %496)
  %498 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %497, i32 noundef 22)
  %499 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %498, <2 x i64> noundef %5)
  %500 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %495, <2 x i64> noundef %499)
  %501 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %500, <2 x i32> <i32 1, i32 2>
  %502 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %501, <2 x i64> noundef %500)
  %503 = bitcast <2 x i64> %502 to <16 x i8>
  %504 = 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> %503, <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>
  %505 = bitcast <16 x i8> %504 to <2 x i64>
  %506 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %505, <2 x i64> noundef %502)
  %507 = bitcast <2 x i64> %493 to <4 x i32>
  %508 = shufflevector <4 x i32> %507, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %509 = bitcast <4 x i32> %508 to <2 x i64>
  %510 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %506, <2 x i64> noundef %509)
  %511 = getelementptr inbounds i8, ptr %2, i64 496
  tail call void @_mm_storeu_si128(ptr noundef nonnull %494, <2 x i64> noundef %510)
  %512 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %497, i32 noundef 5)
  %513 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %512, <2 x i32> <i32 1, i32 2>
  %514 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %513, <2 x i64> noundef %512)
  %515 = bitcast <2 x i64> %514 to <16 x i8>
  %516 = 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> %515, <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>
  %517 = bitcast <16 x i8> %516 to <2 x i64>
  %518 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %517, <2 x i64> noundef %514)
  %519 = bitcast <2 x i64> %510 to <4 x i32>
  %520 = shufflevector <4 x i32> %519, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %521 = bitcast <4 x i32> %520 to <2 x i64>
  %522 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %518, <2 x i64> noundef %521)
  tail call void @_mm_storeu_si128(ptr noundef nonnull %511, <2 x i64> noundef %522)
  ret <2 x i64> %522
}

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