brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.8 KiB · 72714c9 Raw
48 lines · plain
1; RUN: llvm-as < %s | llvm-dis | FileCheck %s2 3target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"4target triple = "aarch64"5 6@important_val = extern_weak dso_local global i32, align 47 8; CHECK-LABEL: define <vscale x 4 x i32> @const_shufflevector(9; CHECK: <vscale x 4 x i32> zeroinitializer10 11define <vscale x 4 x i32> @const_shufflevector() {12  ret <vscale x 4 x i32> shufflevector (<vscale x 4 x i32> zeroinitializer,13                                        <vscale x 4 x i32> undef,14                                        <vscale x 4 x i32> zeroinitializer)15}16 17; CHECK-LABEL: define <vscale x 4 x i32> @const_shufflevector_ex()18; CHECK: <vscale x 4 x i32> zeroinitializer19 20define <vscale x 4 x i32> @const_shufflevector_ex() {21  ret <vscale x 4 x i32> shufflevector (<vscale x 2 x i32> zeroinitializer,22                                        <vscale x 2 x i32> undef,23                                        <vscale x 4 x i32> zeroinitializer)24}25 26; CHECK-LABEL: define <vscale x 4 x i32> @non_const_shufflevector(27; CHECK: %res = shufflevector <vscale x 4 x i32>28 29define <vscale x 4 x i32> @non_const_shufflevector(<vscale x 4 x i32> %lhs,30                                                   <vscale x 4 x i32> %rhs) {31  %res = shufflevector <vscale x 4 x i32> %lhs,32                       <vscale x 4 x i32> %rhs,33                       <vscale x 4 x i32> zeroinitializer34 35  ret <vscale x 4 x i32> %res36}37 38; CHECK-LABEL: define <vscale x 4 x i32> @const_select()39; CHECK: select <vscale x 4 x i1>40 41define <vscale x 4 x i32> @const_select() {42  %s = select <vscale x 4 x i1> insertelement43      (<vscale x 4 x i1> undef, i1 true, i32 0),44     <vscale x 4 x i32> zeroinitializer,45     <vscale x 4 x i32> insertelement (<vscale x 4 x i32> undef, i32 1, i32 0)46  ret <vscale x 4 x i32> %s47}48