| ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py |
| ; RUN: opt -passes="slp-vectorizer" -mtriple=aarch64--linux-gnu -S %s | FileCheck %s |
| |
| define i16 @foo(ptr %p1, ptr %p2) { |
| ; CHECK-LABEL: @foo( |
| ; CHECK-NEXT: entry: |
| ; CHECK-NEXT: [[CONST:%.*]] = bitcast i32 0 to i32 |
| ; CHECK-NEXT: store i32 [[CONST]], ptr [[P1:%.*]], align 1 |
| ; CHECK-NEXT: [[CONST_MAT:%.*]] = or i32 [[CONST]], 0 |
| ; CHECK-NEXT: store <2 x i32> zeroinitializer, ptr [[P2:%.*]], align 1 |
| ; CHECK-NEXT: ret i16 0 |
| ; |
| entry: |
| %const1 = bitcast i32 0 to i32 |
| %const = bitcast i32 0 to i32 |
| store i32 %const, ptr %p1, align 1 |
| %const_mat = or i32 %const, 0 |
| %v_332.imagp = getelementptr { i32, i32 }, ptr %p2, i32 0, i32 1 |
| store i32 %const, ptr %p2, align 1 |
| store i32 %const1, ptr %v_332.imagp, align 1 |
| ret i16 0 |
| } |