brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.0 KiB · 47a25a0 Raw
99 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 52; RUN: opt -S --passes=slp-vectorizer -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s3 4define void @test(ptr %0, <8 x i8> %1) {5; CHECK-LABEL: define void @test(6; CHECK-SAME: ptr [[TMP0:%.*]], <8 x i8> [[TMP1:%.*]]) {7; CHECK-NEXT:    [[TMP3:%.*]] = load i8, ptr [[TMP0]], align 28; CHECK-NEXT:    [[TMP4:%.*]] = getelementptr i8, ptr [[TMP0]], i64 134369; CHECK-NEXT:    [[TMP8:%.*]] = getelementptr i8, ptr [[TMP0]], i64 1344410; CHECK-NEXT:    [[TMP6:%.*]] = load i8, ptr [[TMP8]], align 411; CHECK-NEXT:    [[TMP11:%.*]] = getelementptr i8, ptr [[TMP0]], i64 1354412; CHECK-NEXT:    [[TMP5:%.*]] = getelementptr i8, ptr [[TMP0]], i64 1353613; CHECK-NEXT:    [[TMP7:%.*]] = load <8 x i8>, ptr [[TMP4]], align 414; CHECK-NEXT:    [[TMP12:%.*]] = insertelement <8 x i8> poison, i8 [[TMP6]], i32 015; CHECK-NEXT:    [[TMP9:%.*]] = insertelement <8 x i8> [[TMP12]], i8 [[TMP3]], i32 116; CHECK-NEXT:    [[TMP10:%.*]] = shufflevector <8 x i8> [[TMP9]], <8 x i8> poison, <8 x i32> <i32 0, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1>17; CHECK-NEXT:    [[TMP13:%.*]] = or <8 x i8> [[TMP10]], [[TMP7]]18; CHECK-NEXT:    store <8 x i8> [[TMP13]], ptr [[TMP11]], align 419; CHECK-NEXT:    [[TMP14:%.*]] = shufflevector <8 x i8> [[TMP1]], <8 x i8> poison, <8 x i32> <i32 0, i32 0, i32 2, i32 3, i32 4, i32 5, i32 0, i32 7>20; CHECK-NEXT:    [[TMP15:%.*]] = or <8 x i8> [[TMP7]], [[TMP14]]21; CHECK-NEXT:    store <8 x i8> [[TMP15]], ptr [[TMP5]], align 422; CHECK-NEXT:    ret void23;24  %3 = load i8, ptr %0, align 225  %4 = getelementptr i8, ptr %0, i64 1344226  %5 = load i8, ptr %4, align 227  %6 = or i8 %5, %328  %7 = getelementptr i8, ptr %0, i64 1355029  store i8 %6, ptr %7, align 230  %8 = extractelement <8 x i8> %1, i64 031  %9 = or i8 %5, %832  %10 = getelementptr i8, ptr %0, i64 1354233  store i8 %9, ptr %10, align 234  %11 = getelementptr i8, ptr %0, i64 1343835  %12 = load i8, ptr %11, align 236  %13 = or i8 %12, %337  %14 = getelementptr i8, ptr %0, i64 1354638  store i8 %13, ptr %14, align 239  %15 = extractelement <8 x i8> %1, i64 240  %16 = or i8 %12, %1541  %17 = getelementptr i8, ptr %0, i64 1353842  store i8 %16, ptr %17, align 243  %18 = getelementptr i8, ptr %0, i64 1344044  %19 = load i8, ptr %18, align 445  %20 = or i8 %19, %346  %21 = getelementptr i8, ptr %0, i64 1354847  store i8 %20, ptr %21, align 448  %22 = extractelement <8 x i8> %1, i64 449  %23 = or i8 %19, %2250  %24 = getelementptr i8, ptr %0, i64 1354051  store i8 %23, ptr %24, align 452  %25 = getelementptr i8, ptr %0, i64 1343653  %26 = load i8, ptr %25, align 454  %27 = getelementptr i8, ptr %0, i64 1344455  %28 = load i8, ptr %27, align 456  %29 = or i8 %28, %2657  %30 = getelementptr i8, ptr %0, i64 1354458  store i8 %29, ptr %30, align 459  %31 = or i8 %26, %860  %32 = getelementptr i8, ptr %0, i64 1353661  store i8 %31, ptr %32, align 462  %33 = getelementptr i8, ptr %0, i64 1344363  %34 = load i8, ptr %33, align 164  %35 = or i8 %34, %365  %36 = getelementptr i8, ptr %0, i64 1355166  store i8 %35, ptr %36, align 167  %37 = extractelement <8 x i8> %1, i64 768  %38 = or i8 %34, %3769  %39 = getelementptr i8, ptr %0, i64 1354370  store i8 %38, ptr %39, align 171  %40 = getelementptr i8, ptr %0, i64 1343972  %41 = load i8, ptr %40, align 173  %42 = or i8 %41, %374  %43 = getelementptr i8, ptr %0, i64 1354775  store i8 %42, ptr %43, align 176  %44 = extractelement <8 x i8> %1, i64 377  %45 = or i8 %41, %4478  %46 = getelementptr i8, ptr %0, i64 1353979  store i8 %45, ptr %46, align 180  %47 = getelementptr i8, ptr %0, i64 1344181  %48 = load i8, ptr %47, align 182  %49 = or i8 %48, %383  %50 = getelementptr i8, ptr %0, i64 1354984  store i8 %49, ptr %50, align 185  %51 = extractelement <8 x i8> %1, i64 586  %52 = or i8 %48, %5187  %53 = getelementptr i8, ptr %0, i64 1354188  store i8 %52, ptr %53, align 189  %54 = getelementptr i8, ptr %0, i64 1343790  %55 = load i8, ptr %54, align 191  %56 = or i8 %55, %392  %57 = getelementptr i8, ptr %0, i64 1354593  store i8 %56, ptr %57, align 194  %58 = or i8 %55, %895  %59 = getelementptr i8, ptr %0, i64 1353796  store i8 %58, ptr %59, align 197  ret void98}99