[llvm] [LLVM][AArch64][tblgen]: Make operand suffix case-insinsitive (PR #76808)

Hassnaa Hamdi via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 3 03:09:15 PST 2024


https://github.com/hassnaaHamdi created https://github.com/llvm/llvm-project/pull/76808

EX: `fdot v26.8H, v22.16B, v9.2B[0]` should be equivalent to `fdot v26.8h, v22.16b, v9.2b[0]`

>From 3f75412f7b45123442b6038720e271b11c851d82 Mon Sep 17 00:00:00 2001
From: Hassnaa Hamdi <hassnaa.hamdi at arm.com>
Date: Wed, 3 Jan 2024 11:04:48 +0000
Subject: [PATCH] [LLVM][AArch64][tblgen]: Make operand suffix case-insinsitive

Change-Id: I006ecd1016e06fe42cecd7d2e9215723bbb4edd0
---
 llvm/lib/Target/AArch64/AArch64InstrFormats.td | 1 +
 llvm/test/MC/AArch64/FP8/dot.s                 | 6 ++++++
 2 files changed, 7 insertions(+)

diff --git a/llvm/lib/Target/AArch64/AArch64InstrFormats.td b/llvm/lib/Target/AArch64/AArch64InstrFormats.td
index cb63d8726744d4..10ad5b1f8f2580 100644
--- a/llvm/lib/Target/AArch64/AArch64InstrFormats.td
+++ b/llvm/lib/Target/AArch64/AArch64InstrFormats.td
@@ -12586,6 +12586,7 @@ def : TokenAlias<".4S", ".4s">;
 def : TokenAlias<".2D", ".2d">;
 def : TokenAlias<".1Q", ".1q">;
 def : TokenAlias<".2H", ".2h">;
+def : TokenAlias<".2B", ".2b">;
 def : TokenAlias<".B", ".b">;
 def : TokenAlias<".H", ".h">;
 def : TokenAlias<".S", ".s">;
diff --git a/llvm/test/MC/AArch64/FP8/dot.s b/llvm/test/MC/AArch64/FP8/dot.s
index e755430745c34e..cfcc1137231a95 100644
--- a/llvm/test/MC/AArch64/FP8/dot.s
+++ b/llvm/test/MC/AArch64/FP8/dot.s
@@ -44,6 +44,12 @@ fdot  v31.4h, v31.8b, v15.2b[0]
 // CHECK-ERROR: instruction requires: fp8dot2
 // CHECK-UNKNOWN: 0f4f03ff <unknown>
 
+fdot v26.8H, v22.16B, v9.2B[0]
+// CHECK-INST: fdot  v26.8h, v22.16b, v9.2b[0]
+// CHECK-ENCODING: [0xda,0x02,0x49,0x4f]
+// CHECK-ERROR: instruction requires: fp8dot2
+// CHECK-UNKNOWN: 4f4902da <unknown>
+
 fdot  v0.8h, v0.16b, v15.2b[7]
 // CHECK-INST: fdot  v0.8h, v0.16b, v15.2b[7]
 // CHECK-ENCODING: [0x00,0x08,0x7f,0x4f]



More information about the llvm-commits mailing list