From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-sender-0.a4lg.com (mail-sender-0.a4lg.com [IPv6:2401:2500:203:30b:4000:6bfe:4757:0]) by sourceware.org (Postfix) with ESMTPS id BA2C2385800B for ; Wed, 9 Feb 2022 02:29:58 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org BA2C2385800B From: Tsukasa OI To: Tsukasa OI Cc: binutils@sourceware.org Subject: [PATCH 3/5] RISC-V: Cache management instruction testcases Date: Wed, 9 Feb 2022 11:29:30 +0900 Message-Id: In-Reply-To: References: Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-13.0 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_STATUS, SPF_HELO_NONE, SPF_PASS, TO_EQ_FM_DIRECT_MX, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 09 Feb 2022 02:30:01 -0000 This commit adds testcases for 'Zicbom' / 'Zicboz' instructions. * testsuite/gas/riscv/zicbom.d: New cache-block management instruction tests. * testsuite/gas/riscv/zicbom.s: Likewise. * testsuite/gas/riscv/zicbom-fail.d: New cache-block management instruction failure tests. * testsuite/gas/riscv/zicbom-fail.l: Likewise. * testsuite/gas/riscv/zicbom-fail.s: Likewise. * testsuite/gas/riscv/zicboz.d: New cache-block zero instruction tests. * testsuite/gas/riscv/zicboz.s: Likewise. * testsuite/gas/riscv/zicboz-fail.d: New cache-block zero instruction failure tests. * testsuite/gas/riscv/zicboz-fail.l: Likewise. * testsuite/gas/riscv/zicboz-fail.s: Likewise. --- gas/testsuite/gas/riscv/zicbom-fail.d | 3 +++ gas/testsuite/gas/riscv/zicbom-fail.l | 7 +++++++ gas/testsuite/gas/riscv/zicbom-fail.s | 7 +++++++ gas/testsuite/gas/riscv/zicbom.d | 15 +++++++++++++++ gas/testsuite/gas/riscv/zicbom.s | 7 +++++++ gas/testsuite/gas/riscv/zicboz-fail.d | 3 +++ gas/testsuite/gas/riscv/zicboz-fail.l | 3 +++ gas/testsuite/gas/riscv/zicboz-fail.s | 3 +++ gas/testsuite/gas/riscv/zicboz.d | 12 ++++++++++++ gas/testsuite/gas/riscv/zicboz.s | 4 ++++ 10 files changed, 64 insertions(+) create mode 100644 gas/testsuite/gas/riscv/zicbom-fail.d create mode 100644 gas/testsuite/gas/riscv/zicbom-fail.l create mode 100644 gas/testsuite/gas/riscv/zicbom-fail.s create mode 100644 gas/testsuite/gas/riscv/zicbom.d create mode 100644 gas/testsuite/gas/riscv/zicbom.s create mode 100644 gas/testsuite/gas/riscv/zicboz-fail.d create mode 100644 gas/testsuite/gas/riscv/zicboz-fail.l create mode 100644 gas/testsuite/gas/riscv/zicboz-fail.s create mode 100644 gas/testsuite/gas/riscv/zicboz.d create mode 100644 gas/testsuite/gas/riscv/zicboz.s diff --git a/gas/testsuite/gas/riscv/zicbom-fail.d b/gas/testsuite/gas/riscv/zicbom-fail.d new file mode 100644 index 00000000000..a6a61dfd37e --- /dev/null +++ b/gas/testsuite/gas/riscv/zicbom-fail.d @@ -0,0 +1,3 @@ +#as: -march=rv64g_zicbom +#source: zicbom-fail.s +#error_output: zicbom-fail.l diff --git a/gas/testsuite/gas/riscv/zicbom-fail.l b/gas/testsuite/gas/riscv/zicbom-fail.l new file mode 100644 index 00000000000..8b8eab54301 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicbom-fail.l @@ -0,0 +1,7 @@ +.*: Assembler messages: +.*: Error: illegal operands `cbo.clean 1\(x1\)' +.*: Error: illegal operands `cbo.clean x30' +.*: Error: illegal operands `cbo.flush \(0\+1\)\(x1\)' +.*: Error: illegal operands `cbo.flush x30' +.*: Error: illegal operands `cbo.inval \(3\*2\)\(x1\)' +.*: Error: illegal operands `cbo.inval x30' diff --git a/gas/testsuite/gas/riscv/zicbom-fail.s b/gas/testsuite/gas/riscv/zicbom-fail.s new file mode 100644 index 00000000000..11133ff75d4 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicbom-fail.s @@ -0,0 +1,7 @@ +target: + cbo.clean 1(x1) + cbo.clean x30 + cbo.flush (0+1)(x1) + cbo.flush x30 + cbo.inval (3*2)(x1) + cbo.inval x30 diff --git a/gas/testsuite/gas/riscv/zicbom.d b/gas/testsuite/gas/riscv/zicbom.d new file mode 100644 index 00000000000..edd8a7079f4 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicbom.d @@ -0,0 +1,15 @@ +#as: -march=rv64g_zicbom +#source: zicbom.s +#objdump: -dr + +.*:[ ]+file format .* + +Disassembly of section .text: + +0+000 : +[ ]+[0-9a-f]+:[ ]+0010a00f[ ]+cbo\.clean[ ]+\(ra\) +[ ]+[0-9a-f]+:[ ]+001f200f[ ]+cbo\.clean[ ]+\(t5\) +[ ]+[0-9a-f]+:[ ]+0020a00f[ ]+cbo\.flush[ ]+\(ra\) +[ ]+[0-9a-f]+:[ ]+002f200f[ ]+cbo\.flush[ ]+\(t5\) +[ ]+[0-9a-f]+:[ ]+0000a00f[ ]+cbo\.inval[ ]+\(ra\) +[ ]+[0-9a-f]+:[ ]+000f200f[ ]+cbo\.inval[ ]+\(t5\) diff --git a/gas/testsuite/gas/riscv/zicbom.s b/gas/testsuite/gas/riscv/zicbom.s new file mode 100644 index 00000000000..463a6b3ebb4 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicbom.s @@ -0,0 +1,7 @@ +target: + cbo.clean (x1) + cbo.clean 0(x30) + cbo.flush (x1) + cbo.flush (2-2)(x30) + cbo.inval (x1) + cbo.inval (3*4-12)(x30) diff --git a/gas/testsuite/gas/riscv/zicboz-fail.d b/gas/testsuite/gas/riscv/zicboz-fail.d new file mode 100644 index 00000000000..74cfd2fc911 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicboz-fail.d @@ -0,0 +1,3 @@ +#as: -march=rv64g_zicboz +#source: zicboz-fail.s +#error_output: zicboz-fail.l diff --git a/gas/testsuite/gas/riscv/zicboz-fail.l b/gas/testsuite/gas/riscv/zicboz-fail.l new file mode 100644 index 00000000000..0a19d3323c4 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicboz-fail.l @@ -0,0 +1,3 @@ +.*: Assembler messages: +.*: Error: illegal operands `cbo.zero x1' +.*: Error: illegal operands `cbo.zero 1\(x30\)' diff --git a/gas/testsuite/gas/riscv/zicboz-fail.s b/gas/testsuite/gas/riscv/zicboz-fail.s new file mode 100644 index 00000000000..b524cb6e269 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicboz-fail.s @@ -0,0 +1,3 @@ +target: + cbo.zero x1 + cbo.zero 1(x30) diff --git a/gas/testsuite/gas/riscv/zicboz.d b/gas/testsuite/gas/riscv/zicboz.d new file mode 100644 index 00000000000..7e47ad72610 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicboz.d @@ -0,0 +1,12 @@ +#as: -march=rv64g_zicboz +#source: zicboz.s +#objdump: -dr + +.*:[ ]+file format .* + +Disassembly of section .text: + +0+000 : +[ ]+[0-9a-f]+:[ ]+0040a00f[ ]+cbo\.zero[ ]+\(ra\) +[ ]+[0-9a-f]+:[ ]+004f200f[ ]+cbo\.zero[ ]+\(t5\) +[ ]+[0-9a-f]+:[ ]+0040a00f[ ]+cbo\.zero[ ]+\(ra\) diff --git a/gas/testsuite/gas/riscv/zicboz.s b/gas/testsuite/gas/riscv/zicboz.s new file mode 100644 index 00000000000..ca5efb5ce24 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicboz.s @@ -0,0 +1,4 @@ +target: + cbo.zero 0(x1) + cbo.zero (x30) + cbo.zero (2-2)(x1) -- 2.32.0