; 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> @iunpack30(<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 1073741823)
  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 30)
  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 2)
  %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 28)
  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 4)
  %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 26)
  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 6)
  %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 24)
  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 8)
  %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 22)
  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 10)
  %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 20)
  store <2 x i64> %300, ptr %10, align 16, !tbaa !5
  %301 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %301, ptr %9, align 16, !tbaa !5
  %302 = load ptr, ptr %5, align 8, !tbaa !8
  %303 = getelementptr inbounds <2 x i64>, ptr %302, i32 1
  store ptr %303, ptr %5, align 8, !tbaa !8
  %304 = load ptr, ptr %5, align 8, !tbaa !8
  %305 = call <2 x i64> @_mm_loadu_si128(ptr noundef %304)
  store <2 x i64> %305, ptr %8, align 16, !tbaa !5
  %306 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %307 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %308 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %307, i32 noundef 12)
  %309 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %310 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %308, <2 x i64> noundef %309)
  %311 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %306, <2 x i64> noundef %310)
  store <2 x i64> %311, ptr %9, align 16, !tbaa !5
  br label %312

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

331:                                              ; preds = %312
  br label %332

332:                                              ; preds = %331
  %333 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %333, ptr %4, align 16, !tbaa !5
  %334 = load ptr, ptr %7, align 8, !tbaa !8
  %335 = getelementptr inbounds <2 x i64>, ptr %334, i32 1
  store ptr %335, ptr %7, align 8, !tbaa !8
  %336 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %334, <2 x i64> noundef %336)
  %337 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %338 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %337, i32 noundef 18)
  store <2 x i64> %338, ptr %10, align 16, !tbaa !5
  %339 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %339, ptr %9, align 16, !tbaa !5
  %340 = load ptr, ptr %5, align 8, !tbaa !8
  %341 = getelementptr inbounds <2 x i64>, ptr %340, i32 1
  store ptr %341, ptr %5, align 8, !tbaa !8
  %342 = load ptr, ptr %5, align 8, !tbaa !8
  %343 = call <2 x i64> @_mm_loadu_si128(ptr noundef %342)
  store <2 x i64> %343, ptr %8, align 16, !tbaa !5
  %344 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %345 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %346 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %345, i32 noundef 14)
  %347 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %348 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %346, <2 x i64> noundef %347)
  %349 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %344, <2 x i64> noundef %348)
  store <2 x i64> %349, ptr %9, align 16, !tbaa !5
  br label %350

350:                                              ; preds = %332
  call void @llvm.lifetime.start.p0(i64 16, ptr %26) #3
  %351 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %352 = bitcast <2 x i64> %351 to <16 x i8>
  %353 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %352, <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>
  %354 = bitcast <16 x i8> %353 to <2 x i64>
  %355 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %356 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %354, <2 x i64> noundef %355)
  store <2 x i64> %356, ptr %26, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %27) #3
  %357 = load <2 x i64>, ptr %26, align 16, !tbaa !5
  %358 = bitcast <2 x i64> %357 to <16 x i8>
  %359 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %358, <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>
  %360 = bitcast <16 x i8> %359 to <2 x i64>
  %361 = load <2 x i64>, ptr %26, align 16, !tbaa !5
  %362 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %360, <2 x i64> noundef %361)
  store <2 x i64> %362, ptr %27, align 16, !tbaa !5
  %363 = load <2 x i64>, ptr %27, align 16, !tbaa !5
  %364 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %365 = bitcast <2 x i64> %364 to <4 x i32>
  %366 = shufflevector <4 x i32> %365, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %367 = bitcast <4 x i32> %366 to <2 x i64>
  %368 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %363, <2 x i64> noundef %367)
  store <2 x i64> %368, 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 %369

369:                                              ; preds = %350
  br label %370

370:                                              ; preds = %369
  %371 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %371, ptr %4, align 16, !tbaa !5
  %372 = load ptr, ptr %7, align 8, !tbaa !8
  %373 = getelementptr inbounds <2 x i64>, ptr %372, i32 1
  store ptr %373, ptr %7, align 8, !tbaa !8
  %374 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %372, <2 x i64> noundef %374)
  %375 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %376 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %375, i32 noundef 16)
  store <2 x i64> %376, ptr %10, align 16, !tbaa !5
  %377 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %377, ptr %9, align 16, !tbaa !5
  %378 = load ptr, ptr %5, align 8, !tbaa !8
  %379 = getelementptr inbounds <2 x i64>, ptr %378, i32 1
  store ptr %379, ptr %5, align 8, !tbaa !8
  %380 = load ptr, ptr %5, align 8, !tbaa !8
  %381 = call <2 x i64> @_mm_loadu_si128(ptr noundef %380)
  store <2 x i64> %381, ptr %8, align 16, !tbaa !5
  %382 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %383 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %384 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %383, i32 noundef 16)
  %385 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %386 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %384, <2 x i64> noundef %385)
  %387 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %382, <2 x i64> noundef %386)
  store <2 x i64> %387, ptr %9, align 16, !tbaa !5
  br label %388

388:                                              ; preds = %370
  call void @llvm.lifetime.start.p0(i64 16, ptr %28) #3
  %389 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %390 = bitcast <2 x i64> %389 to <16 x i8>
  %391 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %390, <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>
  %392 = bitcast <16 x i8> %391 to <2 x i64>
  %393 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %394 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %392, <2 x i64> noundef %393)
  store <2 x i64> %394, ptr %28, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %29) #3
  %395 = load <2 x i64>, ptr %28, align 16, !tbaa !5
  %396 = bitcast <2 x i64> %395 to <16 x i8>
  %397 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %396, <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>
  %398 = bitcast <16 x i8> %397 to <2 x i64>
  %399 = load <2 x i64>, ptr %28, align 16, !tbaa !5
  %400 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %398, <2 x i64> noundef %399)
  store <2 x i64> %400, ptr %29, align 16, !tbaa !5
  %401 = load <2 x i64>, ptr %29, align 16, !tbaa !5
  %402 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %403 = bitcast <2 x i64> %402 to <4 x i32>
  %404 = shufflevector <4 x i32> %403, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %405 = bitcast <4 x i32> %404 to <2 x i64>
  %406 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %401, <2 x i64> noundef %405)
  store <2 x i64> %406, 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 %407

407:                                              ; preds = %388
  br label %408

408:                                              ; preds = %407
  %409 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %409, ptr %4, align 16, !tbaa !5
  %410 = load ptr, ptr %7, align 8, !tbaa !8
  %411 = getelementptr inbounds <2 x i64>, ptr %410, i32 1
  store ptr %411, ptr %7, align 8, !tbaa !8
  %412 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %410, <2 x i64> noundef %412)
  %413 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %414 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %413, i32 noundef 14)
  store <2 x i64> %414, ptr %10, align 16, !tbaa !5
  %415 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %415, ptr %9, align 16, !tbaa !5
  %416 = load ptr, ptr %5, align 8, !tbaa !8
  %417 = getelementptr inbounds <2 x i64>, ptr %416, i32 1
  store ptr %417, ptr %5, align 8, !tbaa !8
  %418 = load ptr, ptr %5, align 8, !tbaa !8
  %419 = call <2 x i64> @_mm_loadu_si128(ptr noundef %418)
  store <2 x i64> %419, ptr %8, align 16, !tbaa !5
  %420 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %421 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %422 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %421, i32 noundef 18)
  %423 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %424 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %422, <2 x i64> noundef %423)
  %425 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %420, <2 x i64> noundef %424)
  store <2 x i64> %425, ptr %9, align 16, !tbaa !5
  br label %426

426:                                              ; preds = %408
  call void @llvm.lifetime.start.p0(i64 16, ptr %30) #3
  %427 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %428 = bitcast <2 x i64> %427 to <16 x i8>
  %429 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %428, <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>
  %430 = bitcast <16 x i8> %429 to <2 x i64>
  %431 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %432 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %430, <2 x i64> noundef %431)
  store <2 x i64> %432, ptr %30, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %31) #3
  %433 = load <2 x i64>, ptr %30, align 16, !tbaa !5
  %434 = bitcast <2 x i64> %433 to <16 x i8>
  %435 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %434, <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>
  %436 = bitcast <16 x i8> %435 to <2 x i64>
  %437 = load <2 x i64>, ptr %30, align 16, !tbaa !5
  %438 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %436, <2 x i64> noundef %437)
  store <2 x i64> %438, ptr %31, align 16, !tbaa !5
  %439 = load <2 x i64>, ptr %31, align 16, !tbaa !5
  %440 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %441 = bitcast <2 x i64> %440 to <4 x i32>
  %442 = shufflevector <4 x i32> %441, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %443 = bitcast <4 x i32> %442 to <2 x i64>
  %444 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %439, <2 x i64> noundef %443)
  store <2 x i64> %444, 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 %445

445:                                              ; preds = %426
  br label %446

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

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

483:                                              ; preds = %464
  br label %484

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

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

521:                                              ; preds = %502
  br label %522

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

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

559:                                              ; preds = %540
  br label %560

560:                                              ; preds = %559
  %561 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %561, ptr %4, align 16, !tbaa !5
  %562 = load ptr, ptr %7, align 8, !tbaa !8
  %563 = getelementptr inbounds <2 x i64>, ptr %562, i32 1
  store ptr %563, ptr %7, align 8, !tbaa !8
  %564 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %562, <2 x i64> noundef %564)
  %565 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %566 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %565, i32 noundef 6)
  store <2 x i64> %566, ptr %10, align 16, !tbaa !5
  %567 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %567, ptr %9, align 16, !tbaa !5
  %568 = load ptr, ptr %5, align 8, !tbaa !8
  %569 = getelementptr inbounds <2 x i64>, ptr %568, i32 1
  store ptr %569, ptr %5, align 8, !tbaa !8
  %570 = load ptr, ptr %5, align 8, !tbaa !8
  %571 = call <2 x i64> @_mm_loadu_si128(ptr noundef %570)
  store <2 x i64> %571, ptr %8, align 16, !tbaa !5
  %572 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %573 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %574 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %573, i32 noundef 26)
  %575 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %576 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %574, <2 x i64> noundef %575)
  %577 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %572, <2 x i64> noundef %576)
  store <2 x i64> %577, ptr %9, align 16, !tbaa !5
  br label %578

578:                                              ; preds = %560
  call void @llvm.lifetime.start.p0(i64 16, ptr %38) #3
  %579 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %580 = bitcast <2 x i64> %579 to <16 x i8>
  %581 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %580, <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>
  %582 = bitcast <16 x i8> %581 to <2 x i64>
  %583 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %584 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %582, <2 x i64> noundef %583)
  store <2 x i64> %584, ptr %38, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %39) #3
  %585 = load <2 x i64>, ptr %38, align 16, !tbaa !5
  %586 = bitcast <2 x i64> %585 to <16 x i8>
  %587 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %586, <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>
  %588 = bitcast <16 x i8> %587 to <2 x i64>
  %589 = load <2 x i64>, ptr %38, align 16, !tbaa !5
  %590 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %588, <2 x i64> noundef %589)
  store <2 x i64> %590, ptr %39, align 16, !tbaa !5
  %591 = load <2 x i64>, ptr %39, align 16, !tbaa !5
  %592 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %593 = bitcast <2 x i64> %592 to <4 x i32>
  %594 = shufflevector <4 x i32> %593, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %595 = bitcast <4 x i32> %594 to <2 x i64>
  %596 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %591, <2 x i64> noundef %595)
  store <2 x i64> %596, 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 %597

597:                                              ; preds = %578
  br label %598

598:                                              ; preds = %597
  %599 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %599, ptr %4, align 16, !tbaa !5
  %600 = load ptr, ptr %7, align 8, !tbaa !8
  %601 = getelementptr inbounds <2 x i64>, ptr %600, i32 1
  store ptr %601, ptr %7, align 8, !tbaa !8
  %602 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %600, <2 x i64> noundef %602)
  %603 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %604 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %603, i32 noundef 4)
  store <2 x i64> %604, ptr %10, align 16, !tbaa !5
  %605 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %605, ptr %9, align 16, !tbaa !5
  %606 = load ptr, ptr %5, align 8, !tbaa !8
  %607 = getelementptr inbounds <2 x i64>, ptr %606, i32 1
  store ptr %607, ptr %5, align 8, !tbaa !8
  %608 = load ptr, ptr %5, align 8, !tbaa !8
  %609 = call <2 x i64> @_mm_loadu_si128(ptr noundef %608)
  store <2 x i64> %609, ptr %8, align 16, !tbaa !5
  %610 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %611 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %612 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %611, i32 noundef 28)
  %613 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %614 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %612, <2 x i64> noundef %613)
  %615 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %610, <2 x i64> noundef %614)
  store <2 x i64> %615, ptr %9, align 16, !tbaa !5
  br label %616

616:                                              ; preds = %598
  call void @llvm.lifetime.start.p0(i64 16, ptr %40) #3
  %617 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %618 = bitcast <2 x i64> %617 to <16 x i8>
  %619 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %618, <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>
  %620 = bitcast <16 x i8> %619 to <2 x i64>
  %621 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %622 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %620, <2 x i64> noundef %621)
  store <2 x i64> %622, ptr %40, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %41) #3
  %623 = load <2 x i64>, ptr %40, align 16, !tbaa !5
  %624 = bitcast <2 x i64> %623 to <16 x i8>
  %625 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %624, <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>
  %626 = bitcast <16 x i8> %625 to <2 x i64>
  %627 = load <2 x i64>, ptr %40, align 16, !tbaa !5
  %628 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %626, <2 x i64> noundef %627)
  store <2 x i64> %628, ptr %41, align 16, !tbaa !5
  %629 = load <2 x i64>, ptr %41, align 16, !tbaa !5
  %630 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %631 = bitcast <2 x i64> %630 to <4 x i32>
  %632 = shufflevector <4 x i32> %631, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %633 = bitcast <4 x i32> %632 to <2 x i64>
  %634 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %629, <2 x i64> noundef %633)
  store <2 x i64> %634, 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 %635

635:                                              ; preds = %616
  br label %636

636:                                              ; preds = %635
  %637 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %637, ptr %4, align 16, !tbaa !5
  %638 = load ptr, ptr %7, align 8, !tbaa !8
  %639 = getelementptr inbounds <2 x i64>, ptr %638, i32 1
  store ptr %639, ptr %7, align 8, !tbaa !8
  %640 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %638, <2 x i64> noundef %640)
  %641 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %642 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %641, i32 noundef 2)
  store <2 x i64> %642, ptr %10, align 16, !tbaa !5
  %643 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %643, ptr %9, align 16, !tbaa !5
  %644 = load ptr, ptr %5, align 8, !tbaa !8
  %645 = getelementptr inbounds <2 x i64>, ptr %644, i32 1
  store ptr %645, ptr %5, align 8, !tbaa !8
  %646 = load ptr, ptr %5, align 8, !tbaa !8
  %647 = call <2 x i64> @_mm_loadu_si128(ptr noundef %646)
  store <2 x i64> %647, ptr %8, align 16, !tbaa !5
  br label %648

648:                                              ; preds = %636
  call void @llvm.lifetime.start.p0(i64 16, ptr %42) #3
  %649 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %650 = bitcast <2 x i64> %649 to <16 x i8>
  %651 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %650, <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>
  %652 = bitcast <16 x i8> %651 to <2 x i64>
  %653 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %654 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %652, <2 x i64> noundef %653)
  store <2 x i64> %654, ptr %42, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %43) #3
  %655 = load <2 x i64>, ptr %42, align 16, !tbaa !5
  %656 = bitcast <2 x i64> %655 to <16 x i8>
  %657 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %656, <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>
  %658 = bitcast <16 x i8> %657 to <2 x i64>
  %659 = load <2 x i64>, ptr %42, align 16, !tbaa !5
  %660 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %658, <2 x i64> noundef %659)
  store <2 x i64> %660, ptr %43, align 16, !tbaa !5
  %661 = load <2 x i64>, ptr %43, align 16, !tbaa !5
  %662 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %663 = bitcast <2 x i64> %662 to <4 x i32>
  %664 = shufflevector <4 x i32> %663, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %665 = bitcast <4 x i32> %664 to <2 x i64>
  %666 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %661, <2 x i64> noundef %665)
  store <2 x i64> %666, 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 %667

667:                                              ; preds = %648
  br label %668

668:                                              ; preds = %667
  %669 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %669, ptr %4, align 16, !tbaa !5
  %670 = load ptr, ptr %7, align 8, !tbaa !8
  %671 = getelementptr inbounds <2 x i64>, ptr %670, i32 1
  store ptr %671, ptr %7, align 8, !tbaa !8
  %672 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %670, <2 x i64> noundef %672)
  %673 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  store <2 x i64> %673, ptr %10, align 16, !tbaa !5
  %674 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  %675 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %676 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %674, <2 x i64> noundef %675)
  store <2 x i64> %676, ptr %9, align 16, !tbaa !5
  br label %677

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

696:                                              ; preds = %677
  br label %697

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

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

734:                                              ; preds = %715
  br label %735

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

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

772:                                              ; preds = %753
  br label %773

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

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

810:                                              ; preds = %791
  br label %811

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

829:                                              ; preds = %811
  call void @llvm.lifetime.start.p0(i64 16, ptr %52) #3
  %830 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %831 = bitcast <2 x i64> %830 to <16 x i8>
  %832 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %831, <16 x i32> <i32 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>
  %833 = bitcast <16 x i8> %832 to <2 x i64>
  %834 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %835 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %833, <2 x i64> noundef %834)
  store <2 x i64> %835, ptr %52, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %53) #3
  %836 = load <2 x i64>, ptr %52, align 16, !tbaa !5
  %837 = bitcast <2 x i64> %836 to <16 x i8>
  %838 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %837, <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>
  %839 = bitcast <16 x i8> %838 to <2 x i64>
  %840 = load <2 x i64>, ptr %52, align 16, !tbaa !5
  %841 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %839, <2 x i64> noundef %840)
  store <2 x i64> %841, ptr %53, align 16, !tbaa !5
  %842 = load <2 x i64>, ptr %53, align 16, !tbaa !5
  %843 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %844 = bitcast <2 x i64> %843 to <4 x i32>
  %845 = shufflevector <4 x i32> %844, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %846 = bitcast <4 x i32> %845 to <2 x i64>
  %847 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %842, <2 x i64> noundef %846)
  store <2 x i64> %847, 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 %848

848:                                              ; preds = %829
  br label %849

849:                                              ; preds = %848
  %850 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %850, ptr %4, align 16, !tbaa !5
  %851 = load ptr, ptr %7, align 8, !tbaa !8
  %852 = getelementptr inbounds <2 x i64>, ptr %851, i32 1
  store ptr %852, ptr %7, align 8, !tbaa !8
  %853 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %851, <2 x i64> noundef %853)
  %854 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %855 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %854, i32 noundef 22)
  store <2 x i64> %855, ptr %10, align 16, !tbaa !5
  %856 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %856, ptr %9, align 16, !tbaa !5
  %857 = load ptr, ptr %5, align 8, !tbaa !8
  %858 = getelementptr inbounds <2 x i64>, ptr %857, i32 1
  store ptr %858, ptr %5, align 8, !tbaa !8
  %859 = load ptr, ptr %5, align 8, !tbaa !8
  %860 = call <2 x i64> @_mm_loadu_si128(ptr noundef %859)
  store <2 x i64> %860, ptr %8, align 16, !tbaa !5
  %861 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %862 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %863 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %862, i32 noundef 10)
  %864 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %865 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %863, <2 x i64> noundef %864)
  %866 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %861, <2 x i64> noundef %865)
  store <2 x i64> %866, ptr %9, align 16, !tbaa !5
  br label %867

867:                                              ; preds = %849
  call void @llvm.lifetime.start.p0(i64 16, ptr %54) #3
  %868 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %869 = bitcast <2 x i64> %868 to <16 x i8>
  %870 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %869, <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>
  %871 = bitcast <16 x i8> %870 to <2 x i64>
  %872 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %873 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %871, <2 x i64> noundef %872)
  store <2 x i64> %873, ptr %54, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %55) #3
  %874 = load <2 x i64>, ptr %54, align 16, !tbaa !5
  %875 = bitcast <2 x i64> %874 to <16 x i8>
  %876 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %875, <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>
  %877 = bitcast <16 x i8> %876 to <2 x i64>
  %878 = load <2 x i64>, ptr %54, align 16, !tbaa !5
  %879 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %877, <2 x i64> noundef %878)
  store <2 x i64> %879, ptr %55, align 16, !tbaa !5
  %880 = load <2 x i64>, ptr %55, align 16, !tbaa !5
  %881 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %882 = bitcast <2 x i64> %881 to <4 x i32>
  %883 = shufflevector <4 x i32> %882, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %884 = bitcast <4 x i32> %883 to <2 x i64>
  %885 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %880, <2 x i64> noundef %884)
  store <2 x i64> %885, 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 %886

886:                                              ; preds = %867
  br label %887

887:                                              ; preds = %886
  %888 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %888, ptr %4, align 16, !tbaa !5
  %889 = load ptr, ptr %7, align 8, !tbaa !8
  %890 = getelementptr inbounds <2 x i64>, ptr %889, i32 1
  store ptr %890, ptr %7, align 8, !tbaa !8
  %891 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %889, <2 x i64> noundef %891)
  %892 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %893 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %892, i32 noundef 20)
  store <2 x i64> %893, ptr %10, align 16, !tbaa !5
  %894 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %894, ptr %9, align 16, !tbaa !5
  %895 = load ptr, ptr %5, align 8, !tbaa !8
  %896 = getelementptr inbounds <2 x i64>, ptr %895, i32 1
  store ptr %896, ptr %5, align 8, !tbaa !8
  %897 = load ptr, ptr %5, align 8, !tbaa !8
  %898 = call <2 x i64> @_mm_loadu_si128(ptr noundef %897)
  store <2 x i64> %898, ptr %8, align 16, !tbaa !5
  %899 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %900 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %901 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %900, i32 noundef 12)
  %902 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %903 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %901, <2 x i64> noundef %902)
  %904 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %899, <2 x i64> noundef %903)
  store <2 x i64> %904, ptr %9, align 16, !tbaa !5
  br label %905

905:                                              ; preds = %887
  call void @llvm.lifetime.start.p0(i64 16, ptr %56) #3
  %906 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %907 = bitcast <2 x i64> %906 to <16 x i8>
  %908 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %907, <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>
  %909 = bitcast <16 x i8> %908 to <2 x i64>
  %910 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %911 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %909, <2 x i64> noundef %910)
  store <2 x i64> %911, ptr %56, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %57) #3
  %912 = load <2 x i64>, ptr %56, align 16, !tbaa !5
  %913 = bitcast <2 x i64> %912 to <16 x i8>
  %914 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %913, <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>
  %915 = bitcast <16 x i8> %914 to <2 x i64>
  %916 = load <2 x i64>, ptr %56, align 16, !tbaa !5
  %917 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %915, <2 x i64> noundef %916)
  store <2 x i64> %917, ptr %57, align 16, !tbaa !5
  %918 = load <2 x i64>, ptr %57, align 16, !tbaa !5
  %919 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %920 = bitcast <2 x i64> %919 to <4 x i32>
  %921 = shufflevector <4 x i32> %920, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %922 = bitcast <4 x i32> %921 to <2 x i64>
  %923 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %918, <2 x i64> noundef %922)
  store <2 x i64> %923, 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 %924

924:                                              ; preds = %905
  br label %925

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

943:                                              ; preds = %925
  call void @llvm.lifetime.start.p0(i64 16, ptr %58) #3
  %944 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %945 = bitcast <2 x i64> %944 to <16 x i8>
  %946 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %945, <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>
  %947 = bitcast <16 x i8> %946 to <2 x i64>
  %948 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %949 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %947, <2 x i64> noundef %948)
  store <2 x i64> %949, ptr %58, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %59) #3
  %950 = load <2 x i64>, ptr %58, align 16, !tbaa !5
  %951 = bitcast <2 x i64> %950 to <16 x i8>
  %952 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %951, <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>
  %953 = bitcast <16 x i8> %952 to <2 x i64>
  %954 = load <2 x i64>, ptr %58, align 16, !tbaa !5
  %955 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %953, <2 x i64> noundef %954)
  store <2 x i64> %955, ptr %59, align 16, !tbaa !5
  %956 = load <2 x i64>, ptr %59, align 16, !tbaa !5
  %957 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %958 = bitcast <2 x i64> %957 to <4 x i32>
  %959 = shufflevector <4 x i32> %958, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %960 = bitcast <4 x i32> %959 to <2 x i64>
  %961 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %956, <2 x i64> noundef %960)
  store <2 x i64> %961, 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 %962

962:                                              ; preds = %943
  br label %963

963:                                              ; preds = %962
  %964 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %964, ptr %4, align 16, !tbaa !5
  %965 = load ptr, ptr %7, align 8, !tbaa !8
  %966 = getelementptr inbounds <2 x i64>, ptr %965, i32 1
  store ptr %966, ptr %7, align 8, !tbaa !8
  %967 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %965, <2 x i64> noundef %967)
  %968 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %969 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %968, i32 noundef 16)
  store <2 x i64> %969, ptr %10, align 16, !tbaa !5
  %970 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %970, ptr %9, align 16, !tbaa !5
  %971 = load ptr, ptr %5, align 8, !tbaa !8
  %972 = getelementptr inbounds <2 x i64>, ptr %971, i32 1
  store ptr %972, ptr %5, align 8, !tbaa !8
  %973 = load ptr, ptr %5, align 8, !tbaa !8
  %974 = call <2 x i64> @_mm_loadu_si128(ptr noundef %973)
  store <2 x i64> %974, ptr %8, align 16, !tbaa !5
  %975 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %976 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %977 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %976, i32 noundef 16)
  %978 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %979 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %977, <2 x i64> noundef %978)
  %980 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %975, <2 x i64> noundef %979)
  store <2 x i64> %980, ptr %9, align 16, !tbaa !5
  br label %981

981:                                              ; preds = %963
  call void @llvm.lifetime.start.p0(i64 16, ptr %60) #3
  %982 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %983 = bitcast <2 x i64> %982 to <16 x i8>
  %984 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %983, <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>
  %985 = bitcast <16 x i8> %984 to <2 x i64>
  %986 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %987 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %985, <2 x i64> noundef %986)
  store <2 x i64> %987, ptr %60, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %61) #3
  %988 = load <2 x i64>, ptr %60, align 16, !tbaa !5
  %989 = bitcast <2 x i64> %988 to <16 x i8>
  %990 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %989, <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>
  %991 = bitcast <16 x i8> %990 to <2 x i64>
  %992 = load <2 x i64>, ptr %60, align 16, !tbaa !5
  %993 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %991, <2 x i64> noundef %992)
  store <2 x i64> %993, ptr %61, align 16, !tbaa !5
  %994 = load <2 x i64>, ptr %61, align 16, !tbaa !5
  %995 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %996 = bitcast <2 x i64> %995 to <4 x i32>
  %997 = shufflevector <4 x i32> %996, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %998 = bitcast <4 x i32> %997 to <2 x i64>
  %999 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %994, <2 x i64> noundef %998)
  store <2 x i64> %999, 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 %1000

1000:                                             ; preds = %981
  br label %1001

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

1019:                                             ; preds = %1001
  call void @llvm.lifetime.start.p0(i64 16, ptr %62) #3
  %1020 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1021 = bitcast <2 x i64> %1020 to <16 x i8>
  %1022 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1021, <16 x i32> <i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>
  %1023 = bitcast <16 x i8> %1022 to <2 x i64>
  %1024 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1025 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1023, <2 x i64> noundef %1024)
  store <2 x i64> %1025, ptr %62, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %63) #3
  %1026 = load <2 x i64>, ptr %62, align 16, !tbaa !5
  %1027 = bitcast <2 x i64> %1026 to <16 x i8>
  %1028 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1027, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %1029 = bitcast <16 x i8> %1028 to <2 x i64>
  %1030 = load <2 x i64>, ptr %62, align 16, !tbaa !5
  %1031 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1029, <2 x i64> noundef %1030)
  store <2 x i64> %1031, ptr %63, align 16, !tbaa !5
  %1032 = load <2 x i64>, ptr %63, align 16, !tbaa !5
  %1033 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1034 = bitcast <2 x i64> %1033 to <4 x i32>
  %1035 = shufflevector <4 x i32> %1034, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1036 = bitcast <4 x i32> %1035 to <2 x i64>
  %1037 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1032, <2 x i64> noundef %1036)
  store <2 x i64> %1037, ptr %9, align 16, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr %63) #3
  call void @llvm.lifetime.end.p0(i64 16, ptr %62) #3
  br label %1038

1038:                                             ; preds = %1019
  br label %1039

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

1057:                                             ; preds = %1039
  call void @llvm.lifetime.start.p0(i64 16, ptr %64) #3
  %1058 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1059 = bitcast <2 x i64> %1058 to <16 x i8>
  %1060 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1059, <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>
  %1061 = bitcast <16 x i8> %1060 to <2 x i64>
  %1062 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1063 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1061, <2 x i64> noundef %1062)
  store <2 x i64> %1063, ptr %64, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %65) #3
  %1064 = load <2 x i64>, ptr %64, align 16, !tbaa !5
  %1065 = bitcast <2 x i64> %1064 to <16 x i8>
  %1066 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1065, <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>
  %1067 = bitcast <16 x i8> %1066 to <2 x i64>
  %1068 = load <2 x i64>, ptr %64, align 16, !tbaa !5
  %1069 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1067, <2 x i64> noundef %1068)
  store <2 x i64> %1069, ptr %65, align 16, !tbaa !5
  %1070 = load <2 x i64>, ptr %65, align 16, !tbaa !5
  %1071 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1072 = bitcast <2 x i64> %1071 to <4 x i32>
  %1073 = shufflevector <4 x i32> %1072, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1074 = bitcast <4 x i32> %1073 to <2 x i64>
  %1075 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1070, <2 x i64> noundef %1074)
  store <2 x i64> %1075, 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 %1076

1076:                                             ; preds = %1057
  br label %1077

1077:                                             ; preds = %1076
  %1078 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1078, ptr %4, align 16, !tbaa !5
  %1079 = load ptr, ptr %7, align 8, !tbaa !8
  %1080 = getelementptr inbounds <2 x i64>, ptr %1079, i32 1
  store ptr %1080, ptr %7, align 8, !tbaa !8
  %1081 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1079, <2 x i64> noundef %1081)
  %1082 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1083 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1082, i32 noundef 10)
  store <2 x i64> %1083, ptr %10, align 16, !tbaa !5
  %1084 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %1084, ptr %9, align 16, !tbaa !5
  %1085 = load ptr, ptr %5, align 8, !tbaa !8
  %1086 = getelementptr inbounds <2 x i64>, ptr %1085, i32 1
  store ptr %1086, ptr %5, align 8, !tbaa !8
  %1087 = load ptr, ptr %5, align 8, !tbaa !8
  %1088 = call <2 x i64> @_mm_loadu_si128(ptr noundef %1087)
  store <2 x i64> %1088, ptr %8, align 16, !tbaa !5
  %1089 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1090 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1091 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %1090, i32 noundef 22)
  %1092 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %1093 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %1091, <2 x i64> noundef %1092)
  %1094 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %1089, <2 x i64> noundef %1093)
  store <2 x i64> %1094, ptr %9, align 16, !tbaa !5
  br label %1095

1095:                                             ; preds = %1077
  call void @llvm.lifetime.start.p0(i64 16, ptr %66) #3
  %1096 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1097 = bitcast <2 x i64> %1096 to <16 x i8>
  %1098 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1097, <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>
  %1099 = bitcast <16 x i8> %1098 to <2 x i64>
  %1100 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1101 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1099, <2 x i64> noundef %1100)
  store <2 x i64> %1101, ptr %66, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %67) #3
  %1102 = load <2 x i64>, ptr %66, align 16, !tbaa !5
  %1103 = bitcast <2 x i64> %1102 to <16 x i8>
  %1104 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1103, <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>
  %1105 = bitcast <16 x i8> %1104 to <2 x i64>
  %1106 = load <2 x i64>, ptr %66, align 16, !tbaa !5
  %1107 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1105, <2 x i64> noundef %1106)
  store <2 x i64> %1107, ptr %67, align 16, !tbaa !5
  %1108 = load <2 x i64>, ptr %67, align 16, !tbaa !5
  %1109 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1110 = bitcast <2 x i64> %1109 to <4 x i32>
  %1111 = shufflevector <4 x i32> %1110, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1112 = bitcast <4 x i32> %1111 to <2 x i64>
  %1113 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1108, <2 x i64> noundef %1112)
  store <2 x i64> %1113, 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 %1114

1114:                                             ; preds = %1095
  br label %1115

1115:                                             ; preds = %1114
  %1116 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1116, ptr %4, align 16, !tbaa !5
  %1117 = load ptr, ptr %7, align 8, !tbaa !8
  %1118 = getelementptr inbounds <2 x i64>, ptr %1117, i32 1
  store ptr %1118, ptr %7, align 8, !tbaa !8
  %1119 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1117, <2 x i64> noundef %1119)
  %1120 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1121 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1120, i32 noundef 8)
  store <2 x i64> %1121, ptr %10, align 16, !tbaa !5
  %1122 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %1122, ptr %9, align 16, !tbaa !5
  %1123 = load ptr, ptr %5, align 8, !tbaa !8
  %1124 = getelementptr inbounds <2 x i64>, ptr %1123, i32 1
  store ptr %1124, ptr %5, align 8, !tbaa !8
  %1125 = load ptr, ptr %5, align 8, !tbaa !8
  %1126 = call <2 x i64> @_mm_loadu_si128(ptr noundef %1125)
  store <2 x i64> %1126, ptr %8, align 16, !tbaa !5
  %1127 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1128 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1129 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %1128, i32 noundef 24)
  %1130 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %1131 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %1129, <2 x i64> noundef %1130)
  %1132 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %1127, <2 x i64> noundef %1131)
  store <2 x i64> %1132, ptr %9, align 16, !tbaa !5
  br label %1133

1133:                                             ; preds = %1115
  call void @llvm.lifetime.start.p0(i64 16, ptr %68) #3
  %1134 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1135 = bitcast <2 x i64> %1134 to <16 x i8>
  %1136 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1135, <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>
  %1137 = bitcast <16 x i8> %1136 to <2 x i64>
  %1138 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1139 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1137, <2 x i64> noundef %1138)
  store <2 x i64> %1139, ptr %68, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %69) #3
  %1140 = load <2 x i64>, ptr %68, align 16, !tbaa !5
  %1141 = bitcast <2 x i64> %1140 to <16 x i8>
  %1142 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1141, <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>
  %1143 = bitcast <16 x i8> %1142 to <2 x i64>
  %1144 = load <2 x i64>, ptr %68, align 16, !tbaa !5
  %1145 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1143, <2 x i64> noundef %1144)
  store <2 x i64> %1145, ptr %69, align 16, !tbaa !5
  %1146 = load <2 x i64>, ptr %69, align 16, !tbaa !5
  %1147 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1148 = bitcast <2 x i64> %1147 to <4 x i32>
  %1149 = shufflevector <4 x i32> %1148, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1150 = bitcast <4 x i32> %1149 to <2 x i64>
  %1151 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1146, <2 x i64> noundef %1150)
  store <2 x i64> %1151, 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 %1152

1152:                                             ; preds = %1133
  br label %1153

1153:                                             ; preds = %1152
  %1154 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1154, ptr %4, align 16, !tbaa !5
  %1155 = load ptr, ptr %7, align 8, !tbaa !8
  %1156 = getelementptr inbounds <2 x i64>, ptr %1155, i32 1
  store ptr %1156, ptr %7, align 8, !tbaa !8
  %1157 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1155, <2 x i64> noundef %1157)
  %1158 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1159 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1158, i32 noundef 6)
  store <2 x i64> %1159, ptr %10, align 16, !tbaa !5
  %1160 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %1160, ptr %9, align 16, !tbaa !5
  %1161 = load ptr, ptr %5, align 8, !tbaa !8
  %1162 = getelementptr inbounds <2 x i64>, ptr %1161, i32 1
  store ptr %1162, ptr %5, align 8, !tbaa !8
  %1163 = load ptr, ptr %5, align 8, !tbaa !8
  %1164 = call <2 x i64> @_mm_loadu_si128(ptr noundef %1163)
  store <2 x i64> %1164, ptr %8, align 16, !tbaa !5
  %1165 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1166 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1167 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %1166, i32 noundef 26)
  %1168 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %1169 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %1167, <2 x i64> noundef %1168)
  %1170 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %1165, <2 x i64> noundef %1169)
  store <2 x i64> %1170, ptr %9, align 16, !tbaa !5
  br label %1171

1171:                                             ; preds = %1153
  call void @llvm.lifetime.start.p0(i64 16, ptr %70) #3
  %1172 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1173 = bitcast <2 x i64> %1172 to <16 x i8>
  %1174 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1173, <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>
  %1175 = bitcast <16 x i8> %1174 to <2 x i64>
  %1176 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1177 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1175, <2 x i64> noundef %1176)
  store <2 x i64> %1177, ptr %70, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %71) #3
  %1178 = load <2 x i64>, ptr %70, align 16, !tbaa !5
  %1179 = bitcast <2 x i64> %1178 to <16 x i8>
  %1180 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1179, <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>
  %1181 = bitcast <16 x i8> %1180 to <2 x i64>
  %1182 = load <2 x i64>, ptr %70, align 16, !tbaa !5
  %1183 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1181, <2 x i64> noundef %1182)
  store <2 x i64> %1183, ptr %71, align 16, !tbaa !5
  %1184 = load <2 x i64>, ptr %71, align 16, !tbaa !5
  %1185 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1186 = bitcast <2 x i64> %1185 to <4 x i32>
  %1187 = shufflevector <4 x i32> %1186, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1188 = bitcast <4 x i32> %1187 to <2 x i64>
  %1189 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1184, <2 x i64> noundef %1188)
  store <2 x i64> %1189, 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 %1190

1190:                                             ; preds = %1171
  br label %1191

1191:                                             ; preds = %1190
  %1192 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1192, ptr %4, align 16, !tbaa !5
  %1193 = load ptr, ptr %7, align 8, !tbaa !8
  %1194 = getelementptr inbounds <2 x i64>, ptr %1193, i32 1
  store ptr %1194, ptr %7, align 8, !tbaa !8
  %1195 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1193, <2 x i64> noundef %1195)
  %1196 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1197 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1196, i32 noundef 4)
  store <2 x i64> %1197, ptr %10, align 16, !tbaa !5
  %1198 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %1198, ptr %9, align 16, !tbaa !5
  %1199 = load ptr, ptr %5, align 8, !tbaa !8
  %1200 = getelementptr inbounds <2 x i64>, ptr %1199, i32 1
  store ptr %1200, ptr %5, align 8, !tbaa !8
  %1201 = load ptr, ptr %5, align 8, !tbaa !8
  %1202 = call <2 x i64> @_mm_loadu_si128(ptr noundef %1201)
  store <2 x i64> %1202, ptr %8, align 16, !tbaa !5
  %1203 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1204 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1205 = call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %1204, i32 noundef 28)
  %1206 = load <2 x i64>, ptr %11, align 16, !tbaa !5
  %1207 = call <2 x i64> @_mm_and_si128(<2 x i64> noundef %1205, <2 x i64> noundef %1206)
  %1208 = call <2 x i64> @_mm_or_si128(<2 x i64> noundef %1203, <2 x i64> noundef %1207)
  store <2 x i64> %1208, ptr %9, align 16, !tbaa !5
  br label %1209

1209:                                             ; preds = %1191
  call void @llvm.lifetime.start.p0(i64 16, ptr %72) #3
  %1210 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1211 = bitcast <2 x i64> %1210 to <16 x i8>
  %1212 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1211, <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>
  %1213 = bitcast <16 x i8> %1212 to <2 x i64>
  %1214 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1215 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1213, <2 x i64> noundef %1214)
  store <2 x i64> %1215, ptr %72, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %73) #3
  %1216 = load <2 x i64>, ptr %72, align 16, !tbaa !5
  %1217 = bitcast <2 x i64> %1216 to <16 x i8>
  %1218 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1217, <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>
  %1219 = bitcast <16 x i8> %1218 to <2 x i64>
  %1220 = load <2 x i64>, ptr %72, align 16, !tbaa !5
  %1221 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1219, <2 x i64> noundef %1220)
  store <2 x i64> %1221, ptr %73, align 16, !tbaa !5
  %1222 = load <2 x i64>, ptr %73, align 16, !tbaa !5
  %1223 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1224 = bitcast <2 x i64> %1223 to <4 x i32>
  %1225 = shufflevector <4 x i32> %1224, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1226 = bitcast <4 x i32> %1225 to <2 x i64>
  %1227 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1222, <2 x i64> noundef %1226)
  store <2 x i64> %1227, 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 %1228

1228:                                             ; preds = %1209
  br label %1229

1229:                                             ; preds = %1228
  %1230 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1230, ptr %4, align 16, !tbaa !5
  %1231 = load ptr, ptr %7, align 8, !tbaa !8
  %1232 = getelementptr inbounds <2 x i64>, ptr %1231, i32 1
  store ptr %1232, ptr %7, align 8, !tbaa !8
  %1233 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1231, <2 x i64> noundef %1233)
  %1234 = load <2 x i64>, ptr %8, align 16, !tbaa !5
  %1235 = call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %1234, i32 noundef 2)
  store <2 x i64> %1235, ptr %10, align 16, !tbaa !5
  %1236 = load <2 x i64>, ptr %10, align 16, !tbaa !5
  store <2 x i64> %1236, ptr %9, align 16, !tbaa !5
  br label %1237

1237:                                             ; preds = %1229
  call void @llvm.lifetime.start.p0(i64 16, ptr %74) #3
  %1238 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1239 = bitcast <2 x i64> %1238 to <16 x i8>
  %1240 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1239, <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>
  %1241 = bitcast <16 x i8> %1240 to <2 x i64>
  %1242 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  %1243 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1241, <2 x i64> noundef %1242)
  store <2 x i64> %1243, ptr %74, align 16, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr %75) #3
  %1244 = load <2 x i64>, ptr %74, align 16, !tbaa !5
  %1245 = bitcast <2 x i64> %1244 to <16 x i8>
  %1246 = shufflevector <16 x i8> zeroinitializer, <16 x i8> %1245, <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>
  %1247 = bitcast <16 x i8> %1246 to <2 x i64>
  %1248 = load <2 x i64>, ptr %74, align 16, !tbaa !5
  %1249 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1247, <2 x i64> noundef %1248)
  store <2 x i64> %1249, ptr %75, align 16, !tbaa !5
  %1250 = load <2 x i64>, ptr %75, align 16, !tbaa !5
  %1251 = load <2 x i64>, ptr %4, align 16, !tbaa !5
  %1252 = bitcast <2 x i64> %1251 to <4 x i32>
  %1253 = shufflevector <4 x i32> %1252, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %1254 = bitcast <4 x i32> %1253 to <2 x i64>
  %1255 = call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %1250, <2 x i64> noundef %1254)
  store <2 x i64> %1255, 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 %1256

1256:                                             ; preds = %1237
  br label %1257

1257:                                             ; preds = %1256
  %1258 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  store <2 x i64> %1258, ptr %4, align 16, !tbaa !5
  %1259 = load ptr, ptr %7, align 8, !tbaa !8
  %1260 = getelementptr inbounds <2 x i64>, ptr %1259, i32 1
  store ptr %1260, ptr %7, align 8, !tbaa !8
  %1261 = load <2 x i64>, ptr %9, align 16, !tbaa !5
  call void @_mm_storeu_si128(ptr noundef %1259, <2 x i64> noundef %1261)
  %1262 = 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> %1262
}

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> @iunpack30(<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 1073741823)
  %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 30)
  %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 2)
  %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 28)
  %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 4)
  %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 26)
  %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 6)
  %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 24)
  %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 8)
  %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 22)
  %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 10)
  %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 20)
  %104 = getelementptr inbounds i8, ptr %1, i64 96
  %105 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %104)
  %106 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %105, i32 noundef 12)
  %107 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %106, <2 x i64> noundef %5)
  %108 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %103, <2 x i64> noundef %107)
  %109 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %108, <2 x i32> <i32 1, i32 2>
  %110 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %109, <2 x i64> noundef %108)
  %111 = bitcast <2 x i64> %110 to <16 x i8>
  %112 = 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> %111, <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>
  %113 = bitcast <16 x i8> %112 to <2 x i64>
  %114 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %113, <2 x i64> noundef %110)
  %115 = bitcast <2 x i64> %101 to <4 x i32>
  %116 = shufflevector <4 x i32> %115, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %117 = bitcast <4 x i32> %116 to <2 x i64>
  %118 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %114, <2 x i64> noundef %117)
  %119 = getelementptr inbounds i8, ptr %2, i64 112
  tail call void @_mm_storeu_si128(ptr noundef nonnull %102, <2 x i64> noundef %118)
  %120 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %105, i32 noundef 18)
  %121 = getelementptr inbounds i8, ptr %1, i64 112
  %122 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %121)
  %123 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %122, i32 noundef 14)
  %124 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %123, <2 x i64> noundef %5)
  %125 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %120, <2 x i64> noundef %124)
  %126 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %125, <2 x i32> <i32 1, i32 2>
  %127 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %126, <2 x i64> noundef %125)
  %128 = bitcast <2 x i64> %127 to <16 x i8>
  %129 = 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> %128, <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>
  %130 = bitcast <16 x i8> %129 to <2 x i64>
  %131 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %130, <2 x i64> noundef %127)
  %132 = bitcast <2 x i64> %118 to <4 x i32>
  %133 = shufflevector <4 x i32> %132, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %134 = bitcast <4 x i32> %133 to <2 x i64>
  %135 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %131, <2 x i64> noundef %134)
  %136 = getelementptr inbounds i8, ptr %2, i64 128
  tail call void @_mm_storeu_si128(ptr noundef nonnull %119, <2 x i64> noundef %135)
  %137 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %122, i32 noundef 16)
  %138 = getelementptr inbounds i8, ptr %1, i64 128
  %139 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %138)
  %140 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %139, i32 noundef 16)
  %141 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %140, <2 x i64> noundef %5)
  %142 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %137, <2 x i64> noundef %141)
  %143 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %142, <2 x i32> <i32 1, i32 2>
  %144 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %143, <2 x i64> noundef %142)
  %145 = bitcast <2 x i64> %144 to <16 x i8>
  %146 = 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> %145, <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>
  %147 = bitcast <16 x i8> %146 to <2 x i64>
  %148 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %147, <2 x i64> noundef %144)
  %149 = bitcast <2 x i64> %135 to <4 x i32>
  %150 = shufflevector <4 x i32> %149, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %151 = bitcast <4 x i32> %150 to <2 x i64>
  %152 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %148, <2 x i64> noundef %151)
  %153 = getelementptr inbounds i8, ptr %2, i64 144
  tail call void @_mm_storeu_si128(ptr noundef nonnull %136, <2 x i64> noundef %152)
  %154 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %139, i32 noundef 14)
  %155 = getelementptr inbounds i8, ptr %1, i64 144
  %156 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %155)
  %157 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %156, i32 noundef 18)
  %158 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %157, <2 x i64> noundef %5)
  %159 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %154, <2 x i64> noundef %158)
  %160 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %159, <2 x i32> <i32 1, i32 2>
  %161 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %160, <2 x i64> noundef %159)
  %162 = bitcast <2 x i64> %161 to <16 x i8>
  %163 = 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> %162, <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>
  %164 = bitcast <16 x i8> %163 to <2 x i64>
  %165 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %164, <2 x i64> noundef %161)
  %166 = bitcast <2 x i64> %152 to <4 x i32>
  %167 = shufflevector <4 x i32> %166, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %168 = bitcast <4 x i32> %167 to <2 x i64>
  %169 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %165, <2 x i64> noundef %168)
  %170 = getelementptr inbounds i8, ptr %2, i64 160
  tail call void @_mm_storeu_si128(ptr noundef nonnull %153, <2 x i64> noundef %169)
  %171 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %156, i32 noundef 12)
  %172 = getelementptr inbounds i8, ptr %1, i64 160
  %173 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %172)
  %174 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %173, i32 noundef 20)
  %175 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %174, <2 x i64> noundef %5)
  %176 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %171, <2 x i64> noundef %175)
  %177 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %176, <2 x i32> <i32 1, i32 2>
  %178 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %177, <2 x i64> noundef %176)
  %179 = bitcast <2 x i64> %178 to <16 x i8>
  %180 = 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> %179, <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>
  %181 = bitcast <16 x i8> %180 to <2 x i64>
  %182 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %181, <2 x i64> noundef %178)
  %183 = bitcast <2 x i64> %169 to <4 x i32>
  %184 = shufflevector <4 x i32> %183, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %185 = bitcast <4 x i32> %184 to <2 x i64>
  %186 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %182, <2 x i64> noundef %185)
  %187 = getelementptr inbounds i8, ptr %2, i64 176
  tail call void @_mm_storeu_si128(ptr noundef nonnull %170, <2 x i64> noundef %186)
  %188 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %173, i32 noundef 10)
  %189 = getelementptr inbounds i8, ptr %1, i64 176
  %190 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %189)
  %191 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %190, i32 noundef 22)
  %192 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %191, <2 x i64> noundef %5)
  %193 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %188, <2 x i64> noundef %192)
  %194 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %193, <2 x i32> <i32 1, i32 2>
  %195 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %194, <2 x i64> noundef %193)
  %196 = bitcast <2 x i64> %195 to <16 x i8>
  %197 = 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> %196, <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>
  %198 = bitcast <16 x i8> %197 to <2 x i64>
  %199 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %198, <2 x i64> noundef %195)
  %200 = bitcast <2 x i64> %186 to <4 x i32>
  %201 = shufflevector <4 x i32> %200, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %202 = bitcast <4 x i32> %201 to <2 x i64>
  %203 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %199, <2 x i64> noundef %202)
  %204 = getelementptr inbounds i8, ptr %2, i64 192
  tail call void @_mm_storeu_si128(ptr noundef nonnull %187, <2 x i64> noundef %203)
  %205 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %190, i32 noundef 8)
  %206 = getelementptr inbounds i8, ptr %1, i64 192
  %207 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %206)
  %208 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %207, i32 noundef 24)
  %209 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %208, <2 x i64> noundef %5)
  %210 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %205, <2 x i64> noundef %209)
  %211 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %210, <2 x i32> <i32 1, i32 2>
  %212 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %211, <2 x i64> noundef %210)
  %213 = bitcast <2 x i64> %212 to <16 x i8>
  %214 = 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> %213, <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>
  %215 = bitcast <16 x i8> %214 to <2 x i64>
  %216 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %215, <2 x i64> noundef %212)
  %217 = bitcast <2 x i64> %203 to <4 x i32>
  %218 = shufflevector <4 x i32> %217, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %219 = bitcast <4 x i32> %218 to <2 x i64>
  %220 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %216, <2 x i64> noundef %219)
  %221 = getelementptr inbounds i8, ptr %2, i64 208
  tail call void @_mm_storeu_si128(ptr noundef nonnull %204, <2 x i64> noundef %220)
  %222 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %207, i32 noundef 6)
  %223 = getelementptr inbounds i8, ptr %1, i64 208
  %224 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %223)
  %225 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %224, i32 noundef 26)
  %226 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %225, <2 x i64> noundef %5)
  %227 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %222, <2 x i64> noundef %226)
  %228 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %227, <2 x i32> <i32 1, i32 2>
  %229 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %228, <2 x i64> noundef %227)
  %230 = bitcast <2 x i64> %229 to <16 x i8>
  %231 = 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> %230, <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>
  %232 = bitcast <16 x i8> %231 to <2 x i64>
  %233 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %232, <2 x i64> noundef %229)
  %234 = bitcast <2 x i64> %220 to <4 x i32>
  %235 = shufflevector <4 x i32> %234, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %236 = bitcast <4 x i32> %235 to <2 x i64>
  %237 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %233, <2 x i64> noundef %236)
  %238 = getelementptr inbounds i8, ptr %2, i64 224
  tail call void @_mm_storeu_si128(ptr noundef nonnull %221, <2 x i64> noundef %237)
  %239 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %224, i32 noundef 4)
  %240 = getelementptr inbounds i8, ptr %1, i64 224
  %241 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %240)
  %242 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %241, i32 noundef 28)
  %243 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %242, <2 x i64> noundef %5)
  %244 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %239, <2 x i64> noundef %243)
  %245 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %244, <2 x i32> <i32 1, i32 2>
  %246 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %245, <2 x i64> noundef %244)
  %247 = bitcast <2 x i64> %246 to <16 x i8>
  %248 = 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> %247, <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>
  %249 = bitcast <16 x i8> %248 to <2 x i64>
  %250 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %249, <2 x i64> noundef %246)
  %251 = bitcast <2 x i64> %237 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 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %250, <2 x i64> noundef %253)
  %255 = getelementptr inbounds i8, ptr %2, i64 240
  tail call void @_mm_storeu_si128(ptr noundef nonnull %238, <2 x i64> noundef %254)
  %256 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %241, i32 noundef 2)
  %257 = getelementptr inbounds i8, ptr %1, i64 240
  %258 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %257)
  %259 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %256, <2 x i32> <i32 1, i32 2>
  %260 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %259, <2 x i64> noundef %256)
  %261 = bitcast <2 x i64> %260 to <16 x i8>
  %262 = 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> %261, <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>
  %263 = bitcast <16 x i8> %262 to <2 x i64>
  %264 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %263, <2 x i64> noundef %260)
  %265 = bitcast <2 x i64> %254 to <4 x i32>
  %266 = shufflevector <4 x i32> %265, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %267 = bitcast <4 x i32> %266 to <2 x i64>
  %268 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %264, <2 x i64> noundef %267)
  %269 = getelementptr inbounds i8, ptr %2, i64 256
  tail call void @_mm_storeu_si128(ptr noundef nonnull %255, <2 x i64> noundef %268)
  %270 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %258, <2 x i64> noundef %5)
  %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> %268 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 %269, <2 x i64> noundef %280)
  %282 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %258, i32 noundef 30)
  %283 = getelementptr inbounds i8, ptr %1, i64 256
  %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 2)
  %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 28)
  %300 = getelementptr inbounds i8, ptr %1, i64 272
  %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 4)
  %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 26)
  %317 = getelementptr inbounds i8, ptr %1, i64 288
  %318 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %317)
  %319 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %318, i32 noundef 6)
  %320 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %319, <2 x i64> noundef %5)
  %321 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %316, <2 x i64> noundef %320)
  %322 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %321, <2 x i32> <i32 1, i32 2>
  %323 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %322, <2 x i64> noundef %321)
  %324 = bitcast <2 x i64> %323 to <16 x i8>
  %325 = 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> %324, <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>
  %326 = bitcast <16 x i8> %325 to <2 x i64>
  %327 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %326, <2 x i64> noundef %323)
  %328 = bitcast <2 x i64> %314 to <4 x i32>
  %329 = shufflevector <4 x i32> %328, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %330 = bitcast <4 x i32> %329 to <2 x i64>
  %331 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %327, <2 x i64> noundef %330)
  %332 = getelementptr inbounds i8, ptr %2, i64 320
  tail call void @_mm_storeu_si128(ptr noundef nonnull %315, <2 x i64> noundef %331)
  %333 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %318, i32 noundef 24)
  %334 = getelementptr inbounds i8, ptr %1, i64 304
  %335 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %334)
  %336 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %335, i32 noundef 8)
  %337 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %336, <2 x i64> noundef %5)
  %338 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %333, <2 x i64> noundef %337)
  %339 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %338, <2 x i32> <i32 1, i32 2>
  %340 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %339, <2 x i64> noundef %338)
  %341 = bitcast <2 x i64> %340 to <16 x i8>
  %342 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %341, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %343 = bitcast <16 x i8> %342 to <2 x i64>
  %344 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %343, <2 x i64> noundef %340)
  %345 = bitcast <2 x i64> %331 to <4 x i32>
  %346 = shufflevector <4 x i32> %345, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %347 = bitcast <4 x i32> %346 to <2 x i64>
  %348 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %344, <2 x i64> noundef %347)
  %349 = getelementptr inbounds i8, ptr %2, i64 336
  tail call void @_mm_storeu_si128(ptr noundef nonnull %332, <2 x i64> noundef %348)
  %350 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %335, i32 noundef 22)
  %351 = getelementptr inbounds i8, ptr %1, i64 320
  %352 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %351)
  %353 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %352, i32 noundef 10)
  %354 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %353, <2 x i64> noundef %5)
  %355 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %350, <2 x i64> noundef %354)
  %356 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %355, <2 x i32> <i32 1, i32 2>
  %357 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %356, <2 x i64> noundef %355)
  %358 = bitcast <2 x i64> %357 to <16 x i8>
  %359 = 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> %358, <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>
  %360 = bitcast <16 x i8> %359 to <2 x i64>
  %361 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %360, <2 x i64> noundef %357)
  %362 = bitcast <2 x i64> %348 to <4 x i32>
  %363 = shufflevector <4 x i32> %362, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %364 = bitcast <4 x i32> %363 to <2 x i64>
  %365 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %361, <2 x i64> noundef %364)
  %366 = getelementptr inbounds i8, ptr %2, i64 352
  tail call void @_mm_storeu_si128(ptr noundef nonnull %349, <2 x i64> noundef %365)
  %367 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %352, i32 noundef 20)
  %368 = getelementptr inbounds i8, ptr %1, i64 336
  %369 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %368)
  %370 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %369, i32 noundef 12)
  %371 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %370, <2 x i64> noundef %5)
  %372 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %367, <2 x i64> noundef %371)
  %373 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %372, <2 x i32> <i32 1, i32 2>
  %374 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %373, <2 x i64> noundef %372)
  %375 = bitcast <2 x i64> %374 to <16 x i8>
  %376 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %375, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %377 = bitcast <16 x i8> %376 to <2 x i64>
  %378 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %377, <2 x i64> noundef %374)
  %379 = bitcast <2 x i64> %365 to <4 x i32>
  %380 = shufflevector <4 x i32> %379, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %381 = bitcast <4 x i32> %380 to <2 x i64>
  %382 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %378, <2 x i64> noundef %381)
  %383 = getelementptr inbounds i8, ptr %2, i64 368
  tail call void @_mm_storeu_si128(ptr noundef nonnull %366, <2 x i64> noundef %382)
  %384 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %369, i32 noundef 18)
  %385 = getelementptr inbounds i8, ptr %1, i64 352
  %386 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %385)
  %387 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %386, i32 noundef 14)
  %388 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %387, <2 x i64> noundef %5)
  %389 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %384, <2 x i64> noundef %388)
  %390 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %389, <2 x i32> <i32 1, i32 2>
  %391 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %390, <2 x i64> noundef %389)
  %392 = bitcast <2 x i64> %391 to <16 x i8>
  %393 = 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> %392, <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>
  %394 = bitcast <16 x i8> %393 to <2 x i64>
  %395 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %394, <2 x i64> noundef %391)
  %396 = bitcast <2 x i64> %382 to <4 x i32>
  %397 = shufflevector <4 x i32> %396, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %398 = bitcast <4 x i32> %397 to <2 x i64>
  %399 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %395, <2 x i64> noundef %398)
  %400 = getelementptr inbounds i8, ptr %2, i64 384
  tail call void @_mm_storeu_si128(ptr noundef nonnull %383, <2 x i64> noundef %399)
  %401 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %386, i32 noundef 16)
  %402 = getelementptr inbounds i8, ptr %1, i64 368
  %403 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %402)
  %404 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %403, i32 noundef 16)
  %405 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %404, <2 x i64> noundef %5)
  %406 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %401, <2 x i64> noundef %405)
  %407 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %406, <2 x i32> <i32 1, i32 2>
  %408 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %407, <2 x i64> noundef %406)
  %409 = bitcast <2 x i64> %408 to <16 x i8>
  %410 = 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> %409, <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>
  %411 = bitcast <16 x i8> %410 to <2 x i64>
  %412 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %411, <2 x i64> noundef %408)
  %413 = bitcast <2 x i64> %399 to <4 x i32>
  %414 = shufflevector <4 x i32> %413, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %415 = bitcast <4 x i32> %414 to <2 x i64>
  %416 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %412, <2 x i64> noundef %415)
  %417 = getelementptr inbounds i8, ptr %2, i64 400
  tail call void @_mm_storeu_si128(ptr noundef nonnull %400, <2 x i64> noundef %416)
  %418 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %403, i32 noundef 14)
  %419 = getelementptr inbounds i8, ptr %1, i64 384
  %420 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %419)
  %421 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %420, i32 noundef 18)
  %422 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %421, <2 x i64> noundef %5)
  %423 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %418, <2 x i64> noundef %422)
  %424 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %423, <2 x i32> <i32 1, i32 2>
  %425 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %424, <2 x i64> noundef %423)
  %426 = bitcast <2 x i64> %425 to <16 x i8>
  %427 = 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> %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 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %428, <2 x i64> noundef %425)
  %430 = bitcast <2 x i64> %416 to <4 x i32>
  %431 = shufflevector <4 x i32> %430, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %432 = bitcast <4 x i32> %431 to <2 x i64>
  %433 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %429, <2 x i64> noundef %432)
  %434 = getelementptr inbounds i8, ptr %2, i64 416
  tail call void @_mm_storeu_si128(ptr noundef nonnull %417, <2 x i64> noundef %433)
  %435 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %420, i32 noundef 12)
  %436 = getelementptr inbounds i8, ptr %1, i64 400
  %437 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %436)
  %438 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %437, i32 noundef 20)
  %439 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %438, <2 x i64> noundef %5)
  %440 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %435, <2 x i64> noundef %439)
  %441 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %440, <2 x i32> <i32 1, i32 2>
  %442 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %441, <2 x i64> noundef %440)
  %443 = bitcast <2 x i64> %442 to <16 x i8>
  %444 = shufflevector <16 x i8> <i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 poison, i8 0, i8 0, i8 0, i8 0>, <16 x i8> %443, <16 x i32> <i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>
  %445 = bitcast <16 x i8> %444 to <2 x i64>
  %446 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %445, <2 x i64> noundef %442)
  %447 = bitcast <2 x i64> %433 to <4 x i32>
  %448 = shufflevector <4 x i32> %447, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %449 = bitcast <4 x i32> %448 to <2 x i64>
  %450 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %446, <2 x i64> noundef %449)
  %451 = getelementptr inbounds i8, ptr %2, i64 432
  tail call void @_mm_storeu_si128(ptr noundef nonnull %434, <2 x i64> noundef %450)
  %452 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %437, i32 noundef 10)
  %453 = getelementptr inbounds i8, ptr %1, i64 416
  %454 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %453)
  %455 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %454, i32 noundef 22)
  %456 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %455, <2 x i64> noundef %5)
  %457 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %452, <2 x i64> noundef %456)
  %458 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %457, <2 x i32> <i32 1, i32 2>
  %459 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %458, <2 x i64> noundef %457)
  %460 = bitcast <2 x i64> %459 to <16 x i8>
  %461 = 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> %460, <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>
  %462 = bitcast <16 x i8> %461 to <2 x i64>
  %463 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %462, <2 x i64> noundef %459)
  %464 = bitcast <2 x i64> %450 to <4 x i32>
  %465 = shufflevector <4 x i32> %464, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %466 = bitcast <4 x i32> %465 to <2 x i64>
  %467 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %463, <2 x i64> noundef %466)
  %468 = getelementptr inbounds i8, ptr %2, i64 448
  tail call void @_mm_storeu_si128(ptr noundef nonnull %451, <2 x i64> noundef %467)
  %469 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %454, i32 noundef 8)
  %470 = getelementptr inbounds i8, ptr %1, i64 432
  %471 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %470)
  %472 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %471, i32 noundef 24)
  %473 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %472, <2 x i64> noundef %5)
  %474 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %469, <2 x i64> noundef %473)
  %475 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %474, <2 x i32> <i32 1, i32 2>
  %476 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %475, <2 x i64> noundef %474)
  %477 = bitcast <2 x i64> %476 to <16 x i8>
  %478 = 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> %477, <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>
  %479 = bitcast <16 x i8> %478 to <2 x i64>
  %480 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %479, <2 x i64> noundef %476)
  %481 = bitcast <2 x i64> %467 to <4 x i32>
  %482 = shufflevector <4 x i32> %481, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %483 = bitcast <4 x i32> %482 to <2 x i64>
  %484 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %480, <2 x i64> noundef %483)
  %485 = getelementptr inbounds i8, ptr %2, i64 464
  tail call void @_mm_storeu_si128(ptr noundef nonnull %468, <2 x i64> noundef %484)
  %486 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %471, i32 noundef 6)
  %487 = getelementptr inbounds i8, ptr %1, i64 448
  %488 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %487)
  %489 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %488, i32 noundef 26)
  %490 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %489, <2 x i64> noundef %5)
  %491 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %486, <2 x i64> noundef %490)
  %492 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %491, <2 x i32> <i32 1, i32 2>
  %493 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %492, <2 x i64> noundef %491)
  %494 = bitcast <2 x i64> %493 to <16 x i8>
  %495 = 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> %494, <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>
  %496 = bitcast <16 x i8> %495 to <2 x i64>
  %497 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %496, <2 x i64> noundef %493)
  %498 = bitcast <2 x i64> %484 to <4 x i32>
  %499 = shufflevector <4 x i32> %498, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %500 = bitcast <4 x i32> %499 to <2 x i64>
  %501 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %497, <2 x i64> noundef %500)
  %502 = getelementptr inbounds i8, ptr %2, i64 480
  tail call void @_mm_storeu_si128(ptr noundef nonnull %485, <2 x i64> noundef %501)
  %503 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %488, i32 noundef 4)
  %504 = getelementptr inbounds i8, ptr %1, i64 464
  %505 = tail call <2 x i64> @_mm_loadu_si128(ptr noundef nonnull %504)
  %506 = tail call <2 x i64> @_mm_slli_epi32(<2 x i64> noundef %505, i32 noundef 28)
  %507 = tail call <2 x i64> @_mm_and_si128(<2 x i64> noundef %506, <2 x i64> noundef %5)
  %508 = tail call <2 x i64> @_mm_or_si128(<2 x i64> noundef %503, <2 x i64> noundef %507)
  %509 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %508, <2 x i32> <i32 1, i32 2>
  %510 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %509, <2 x i64> noundef %508)
  %511 = bitcast <2 x i64> %510 to <16 x i8>
  %512 = 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> %511, <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>
  %513 = bitcast <16 x i8> %512 to <2 x i64>
  %514 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %513, <2 x i64> noundef %510)
  %515 = bitcast <2 x i64> %501 to <4 x i32>
  %516 = shufflevector <4 x i32> %515, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %517 = bitcast <4 x i32> %516 to <2 x i64>
  %518 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %514, <2 x i64> noundef %517)
  %519 = getelementptr inbounds i8, ptr %2, i64 496
  tail call void @_mm_storeu_si128(ptr noundef nonnull %502, <2 x i64> noundef %518)
  %520 = tail call <2 x i64> @_mm_srli_epi32(<2 x i64> noundef %505, i32 noundef 2)
  %521 = shufflevector <2 x i64> <i64 poison, i64 0>, <2 x i64> %520, <2 x i32> <i32 1, i32 2>
  %522 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %521, <2 x i64> noundef %520)
  %523 = bitcast <2 x i64> %522 to <16 x i8>
  %524 = 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> %523, <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>
  %525 = bitcast <16 x i8> %524 to <2 x i64>
  %526 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %525, <2 x i64> noundef %522)
  %527 = bitcast <2 x i64> %518 to <4 x i32>
  %528 = shufflevector <4 x i32> %527, <4 x i32> poison, <4 x i32> <i32 3, i32 3, i32 3, i32 3>
  %529 = bitcast <4 x i32> %528 to <2 x i64>
  %530 = tail call <2 x i64> @_mm_add_epi32(<2 x i64> noundef %526, <2 x i64> noundef %529)
  tail call void @_mm_storeu_si128(ptr noundef nonnull %519, <2 x i64> noundef %530)
  ret <2 x i64> %530
}

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