44 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=aarch64 < %s | FileCheck %s3 4define void @test() {5; CHECK-LABEL: define void @test() {6; CHECK-NEXT: [[ENTRY:.*]]:7; CHECK-NEXT: [[G_2197_REAL32_PRE:%.*]] = load i32, ptr null, align 18; CHECK-NEXT: [[G_2197_IMAG33_PRE:%.*]] = load i32, ptr getelementptr inbounds nuw ({ i32, i32 }, ptr null, i32 0, i32 1), align 19; CHECK-NEXT: br label %[[IF_END:.*]]10; CHECK: [[IF_THEN:.*]]:11; CHECK-NEXT: br label %[[IF_END]]12; CHECK: [[IF_END]]:13; CHECK-NEXT: [[TMP4:%.*]] = phi i32 [ [[G_2197_IMAG33_PRE]], %[[ENTRY]] ], [ 0, %[[IF_THEN]] ]14; CHECK-NEXT: [[TMP2:%.*]] = phi i32 [ [[G_2197_REAL32_PRE]], %[[ENTRY]] ], [ 0, %[[IF_THEN]] ]15; CHECK-NEXT: store i32 [[TMP2]], ptr null, align 116; CHECK-NEXT: br label %[[TRAP:.*]]17; CHECK: [[BB3:.*:]]18; CHECK-NEXT: store i32 [[TMP4]], ptr null, align 119; CHECK-NEXT: ret void20; CHECK: [[TRAP]]:21; CHECK-NEXT: unreachable22;23entry:24 %g_2197.real32.pre = load i32, ptr null, align 125 %g_2197.imag33.pre = load i32, ptr getelementptr inbounds nuw ({ i32, i32 }, ptr null, i32 0, i32 1), align 126 br label %if.end27 28if.then:29 br label %if.end30 31if.end:32 %g_2197.imag33 = phi i32 [ %g_2197.imag33.pre, %entry ], [ 0, %if.then ]33 %g_2197.real32 = phi i32 [ %g_2197.real32.pre, %entry ], [ 0, %if.then ]34 store i32 %g_2197.real32, ptr null, align 135 br label %trap36 370:38 store i32 %g_2197.imag33, ptr null, align 139 ret void40 41trap:42 unreachable43}44