Skip to content

Commit 62bf165

Browse files
[Clang][LLVM] Implement multi-multi vectors MOP4{A/S}
1 parent 3e146f8 commit 62bf165

File tree

6 files changed

+1154
-9
lines changed

6 files changed

+1154
-9
lines changed

clang/include/clang/Basic/arm_sme.td

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,7 @@ multiclass MOP4<string mode, string za, string t, string i, list<ImmCheck> check
296296
def _1x1 : Inst<"svmop4" # mode # "[_1x1]_" # za # "[_{d}_{d}]", "vidd", t, MergeNone, i # "_1x1", [IsInOutZA, IsStreaming], checks>;
297297
def _1x2 : Inst<"svmop4" # mode # "[_1x2]_" # za # "[_{d}_{d}]", "vid2", t, MergeNone, i # "_1x2", [IsInOutZA, IsStreaming], checks>;
298298
def _2x1 : Inst<"svmop4" # mode # "[_2x1]_" # za # "[_{d}_{d}]", "vi2d", t, MergeNone, i # "_2x1", [IsInOutZA, IsStreaming], checks>;
299+
def _2x2 : Inst<"svmop4" # mode # "[_2x2]_" # za # "[_{d}_{d}]", "vi22", t, MergeNone, i # "_2x2", [IsInOutZA, IsStreaming], checks>;
299300
}
300301

301302
let SMETargetGuard = "sme2,sme-mop4" in {
@@ -355,6 +356,10 @@ multiclass SUMOP4<string mode, string za, string t, string i, list<ImmCheck> che
355356
"vi2u", t, MergeNone, "aarch64_sme_sumop4" # mode # i # "_wide_2x1",
356357
[IsStreaming, IsInOutZA],
357358
checks>;
359+
def _2x2 : SInst<"svmop4" # mode # "[_2x2]_" # za # "[_{d}_{3}]",
360+
"vi2.x2.u", t, MergeNone, "aarch64_sme_sumop4" # mode # i # "_wide_2x2",
361+
[IsStreaming, IsInOutZA],
362+
checks>;
358363
}
359364

360365
multiclass USMOP4<string mode, string za, string t, string i, list<ImmCheck> checks> {
@@ -370,6 +375,10 @@ multiclass USMOP4<string mode, string za, string t, string i, list<ImmCheck> che
370375
"vi2x", t, MergeNone, "aarch64_sme_usmop4" # mode # i # "_wide_2x1",
371376
[IsStreaming, IsInOutZA],
372377
checks>;
378+
def _2x2 : SInst<"svmop4" # mode # "[_2x2]_" # za # "[_{d}_{3}]",
379+
"vi2.u2.x", t, MergeNone, "aarch64_sme_usmop4" # mode # i # "_wide_2x2",
380+
[IsStreaming, IsInOutZA],
381+
checks>;
373382
}
374383

375384
let SMETargetGuard = "sme2,sme-mop4" in {

0 commit comments

Comments
 (0)