================
@@ -982,3 +982,166 @@ int64_t test_vshld_u64(int64_t a,int64_t b) {
   return (int64_t)vshld_u64(a, b);
 }
 
+// ALL-LABEL: test_vshlq_n_s8
+int8x16_t test_vshlq_n_s8(int8x16_t a, int64_t b) {
+ // CIR: [[RES:%.*]] = cir.shift(left, %{{.*}} : !cir.vector<16 x !s8i>, 
%{{.*}} : !cir.vector<16 x !s8i>) -> !cir.vector<16 x !s8i>
+  
+ // LLVM-SAME: <16 x i8> {{.*}} [[A:%.*]], i64 {{.*}} [[B:%.*]]) 
#[[ATTR0:[0-9]+]] {
+ // LLVM: [[SHL:%.*]] = shl <16 x i8> {{.*}}, splat (i8 1)
+ // LLVM: ret <16 x i8> [[SHL]]
+ return vshlq_n_s8(a, 1);
----------------
banach-space wrote:

Indeed, that's the intended approach for testing, documented in: 
https://github.com/llvm/llvm-project/issues/185382#issuecomment-4022508229

https://github.com/llvm/llvm-project/pull/187516
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to