@@ -15232,12 +15232,16 @@ uint64x1_t test_vrsra_n_u64(uint64x1_t a, uint64x1_t b) {
1523215232 // LLVM: ret <1 x i64> [[TMP3]]
1523315233}
1523415234
15235- // NYI-LABEL: @test_vshld_n_s64(
15236- // NYI: [[SHLD_N:%.*]] = shl i64 %a, 1
15237- // NYI: ret i64 [[SHLD_N]]
15238- // int64_t test_vshld_n_s64(int64_t a) {
15239- // return (int64_t)vshld_n_s64(a, 1);
15240- // }
15235+ int64_t test_vshld_n_s64(int64_t a) {
15236+ return (int64_t)vshld_n_s64(a, 1);
15237+
15238+ // CIR-LABEL: vshld_n_s64
15239+ // CIR: {{%.*}} = cir.shift(left, {{%.*}} : !s64i, {{%.*}} : !s64i) -> !s64i
15240+
15241+ // LLVM-LABEL: @test_vshld_n_s64(
15242+ // LLVM: [[SHLD_N:%.*]] = shl i64 %0, 1
15243+ // LLVM: ret i64 [[SHLD_N]]
15244+ }
1524115245
1524215246// NYI-LABEL: @test_vshl_n_s64(
1524315247// NYI: [[TMP0:%.*]] = bitcast <1 x i64> %a to <8 x i8>
@@ -15248,12 +15252,16 @@ uint64x1_t test_vrsra_n_u64(uint64x1_t a, uint64x1_t b) {
1524815252// return vshl_n_s64(a, 1);
1524915253// }
1525015254
15251- // NYI-LABEL: @test_vshld_n_u64(
15252- // NYI: [[SHLD_N:%.*]] = shl i64 %a, 63
15253- // NYI: ret i64 [[SHLD_N]]
15254- // uint64_t test_vshld_n_u64(uint64_t a) {
15255- // return (uint64_t)vshld_n_u64(a, 63);
15256- // }
15255+ uint64_t test_vshld_n_u64(uint64_t a) {
15256+ return (uint64_t)vshld_n_u64(a, 63);
15257+
15258+ // CIR-LABEL: vshld_n_u64
15259+ // CIR: {{%.*}} = cir.shift(left, {{%.*}} : !u64i, {{%.*}} : !u64i) -> !u64i
15260+
15261+ // LLVM-LABEL: @test_vshld_n_u64(
15262+ // LLVM: [[SHLD_N:%.*]] = shl i64 %0, 63
15263+ // LLVM: ret i64 [[SHLD_N]]
15264+ }
1525715265
1525815266// NYI-LABEL: @test_vshl_n_u64(
1525915267// NYI: [[TMP0:%.*]] = bitcast <1 x i64> %a to <8 x i8>
0 commit comments