@@ -10046,12 +10046,29 @@ int32_t test_vqadds_s32(int32_t a, int32_t b) {
10046
10046
// LLVM: ret i32 [[VQADDS_S32_I]]
10047
10047
}
10048
10048
10049
- // NYI-LABEL: @test_vqaddd_s64(
10050
- // NYI: [[VQADDD_S64_I:%.*]] = call i64 @llvm.aarch64.neon.sqadd.i64(i64 %a, i64 %b)
10051
- // NYI: ret i64 [[VQADDD_S64_I]]
10052
- // int64_t test_vqaddd_s64(int64_t a, int64_t b) {
10053
- // return vqaddd_s64(a, b);
10054
- // }
10049
+ int64_t test_vqaddd_s64(int64_t a, int64_t b) {
10050
+ return vqaddd_s64(a, b);
10051
+
10052
+ // CIR: vqaddd_s64
10053
+ // CIR: cir.llvm.intrinsic "aarch64.neon.sqadd" {{%.*}}, {{%.*}} : (!s64i, !s64i) -> !s64i
10054
+
10055
+ // LLVM-LABEL: @test_vqaddd_s64
10056
+ // LLVM-SAME: (i64{{.*}}[[a:%.*]], i64{{.*}}[[b:%.*]])
10057
+ // LLVM: [[VQADD_S64_I:%.*]] = call i64 @llvm.aarch64.neon.sqadd.i64(i64 [[a]], i64 [[b]])
10058
+ // LLVM: ret i64 [[VQADD_S64_I]]
10059
+ }
10060
+
10061
+ uint64_t test_vqaddd_u64(uint64_t a, uint64_t b) {
10062
+ return vqaddd_u64(a, b);
10063
+
10064
+ // CIR: vqaddd_u64
10065
+ // CIR: cir.llvm.intrinsic "aarch64.neon.uqadd" {{%.*}}, {{%.*}} : (!u64i, !u64i) -> !u64i
10066
+
10067
+ // LLVM-LABEL: @test_vqaddd_u64
10068
+ // LLVM-SAME: (i64{{.*}}[[a:%.*]], i64{{.*}}[[b:%.*]])
10069
+ // LLVM: [[VQADD_U64_I:%.*]] = call i64 @llvm.aarch64.neon.uqadd.i64(i64 [[a]], i64 [[b]])
10070
+ // LLVM: ret i64 [[VQADD_U64_I]]
10071
+ }
10055
10072
10056
10073
// NYI-LABEL: @test_vqaddb_u8(
10057
10074
// NYI: [[TMP0:%.*]] = insertelement <8 x i8> poison, i8 %a, i64 0
@@ -10085,12 +10102,6 @@ uint32_t test_vqadds_u32(uint32_t a, uint32_t b) {
10085
10102
// LLVM: ret i32 [[VQADDS_U32_I]]
10086
10103
}
10087
10104
10088
- // NYI-LABEL: @test_vqaddd_u64(
10089
- // NYI: [[VQADDD_U64_I:%.*]] = call i64 @llvm.aarch64.neon.uqadd.i64(i64 %a, i64 %b)
10090
- // NYI: ret i64 [[VQADDD_U64_I]]
10091
- // uint64_t test_vqaddd_u64(uint64_t a, uint64_t b) {
10092
- // return vqaddd_u64(a, b);
10093
- // }
10094
10105
10095
10106
// NYI-LABEL: @test_vqsubb_s8(
10096
10107
// NYI: [[TMP0:%.*]] = insertelement <8 x i8> poison, i8 %a, i64 0
0 commit comments