From patchwork Sat Nov 5 12:29:15 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tsukasa OI X-Patchwork-Id: 15964 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp966203wru; Sat, 5 Nov 2022 05:33:15 -0700 (PDT) X-Google-Smtp-Source: AMsMyM6omaOpuwVf/+liUDgL0PT6R/RjstMo6JrJH+n4ABs5jrjtR2Ja2wZp6qeth9laWztwO3TP X-Received: by 2002:a17:907:31c7:b0:740:e3e5:c025 with SMTP id xf7-20020a17090731c700b00740e3e5c025mr39682554ejb.341.1667651595465; Sat, 05 Nov 2022 05:33:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1667651595; cv=none; d=google.com; s=arc-20160816; b=RgA8QeAr3Tu9GLPxhM8AcxugEOgLqcmKHmsUw0fc7+R5dkpr57zTCEKvSBhFRmuj2z LWExCqFRwnE0ttxbkZHLkQv6kDPRqwyOJBu7xClaojqMvHIQ/Cg7vq1p/WLXrgaub2Qr v9Yhia7ol1O8kpvBwQkGt1KmwL9ehS1JS+kKp2fWO+yNgYfW4b5dnmAKEO3euA1lan1T 0bJl3nOwmtnJH8mWSrXAQRuG02NT8pwAJBM7iOduDL0uPBxNLNxvAU7M1VsIIHETpDne 7yEKyXqlZysX4amBPNND7cQ3A+tKAo6pD6IjIyBE7chqq4wT56WK2y4BevbkiU8LzArz NzQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:reply-to:from:list-subscribe:list-help :list-post:list-archive:list-unsubscribe:list-id:precedence :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:dmarc-filter:delivered-to:dkim-signature :dkim-filter; bh=LuIxKwtuLy3JiSUDVDMVJyaJimBBokn1ALvBhs2pulQ=; b=TLpsAQ60kVxpsDdOqGPgHuHaOBccZfR0K8fZwRkszpqjN4L/Id2lPYXUOjsInDMiyO 7O98uaMVI4l8nGLOez5xv7FUN/Pp13OZnEBHieMViCzjyxgpLyWzyYCbeJlaeyYQX5lm f0oX/pp1+FpdEaCgy+gsHv5/kfBVSIRrRxkN/AXdE6hZUwSxF7DuAnRJOm5j5taG7KH6 2bCN7Wur4VRu2uQvTS4hinXKPgmZ4sB0tUtcPI3i0d0zkuXeYJdf6RJYUW3EuHSnmKmp bHXjJ3lnOqIr0YqLES7byKX8902x4Jy/q362FEA0SkmId1Pf2ExVhZ/uffe5DMsTTT0N TJbA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sourceware.org header.s=default header.b=SmVqb4N0; spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=sourceware.org Received: from sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id gu20-20020a170906f29400b007ae29da29d9si1850891ejb.131.2022.11.05.05.33.15 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 05 Nov 2022 05:33:15 -0700 (PDT) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=pass header.i=@sourceware.org header.s=default header.b=SmVqb4N0; spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 51D0238576AB for ; Sat, 5 Nov 2022 12:32:37 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 51D0238576AB DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1667651557; bh=LuIxKwtuLy3JiSUDVDMVJyaJimBBokn1ALvBhs2pulQ=; h=To:Subject:Date:In-Reply-To:References:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=SmVqb4N0MaZvLVH2rlnhMF6WmeWGiM1PHQyEWxF0UYWA8zE7tRpPlwVUzGQvsnWo3 xgE5oJTSaJezLL1qsu/w7epEWHsLMWxyQnq8kwkvRYCXmvtLl82x3jlcDGJ7yvtFlv eb6LncvvjeLjArGUsroHnjbyqxDSNvKdm7rlQx1o= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org 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 9A4553857C77 for ; Sat, 5 Nov 2022 12:30:59 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 9A4553857C77 Received: from [127.0.0.1] (localhost [127.0.0.1]) by mail-sender-0.a4lg.com (Postfix) with ESMTPSA id F291030008C; Sat, 5 Nov 2022 12:30:57 +0000 (UTC) To: Tsukasa OI , Nelson Chu , Kito Cheng , Palmer Dabbelt Subject: [PATCH 09/12] RISC-V: Combine/enhance 'Zicbo[mz]' extension tests Date: Sat, 5 Nov 2022 12:29:15 +0000 Message-Id: <82832a67f240d5857fd502d4b74fd7d841ee2d6e.1667651354.git.research_trasio@irq.a4lg.com> In-Reply-To: References: Mime-Version: 1.0 X-Spam-Status: No, score=-12.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, GIT_PATCH_0, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) 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-Patchwork-Original-From: Tsukasa OI via Binutils From: Tsukasa OI Reply-To: Tsukasa OI Cc: binutils@sourceware.org Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org Sender: "Binutils" X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1748659439206455258?= X-GMAIL-MSGID: =?utf-8?q?1748659439206455258?= This commit combines tests for 'Zicbom' and 'Zicboz' extensions and adds "no required extension" testcases based on new test utilities. It also contains minor tidying (such as minimizing base from RV64G to RV32I). gas/ChangeLog: * testsuite/gas/riscv/zicbo-mz-ext.s: Combine zicbo[mz].s. * testsuite/gas/riscv/zicbo-mz-ext.d: Likewise. Minimize extension requirements and remove source. * testsuite/gas/riscv/zicbo-mz-ext-noarch.d: New test for architecture failure. * testsuite/gas/riscv/zicbo-mz-ext-noarch.l: Likewise. * testsuite/gas/riscv/zicbo-mz-ext-fail.s: Combine zicbo[mz]-fail.s. * testsuite/gas/riscv/zicbo-mz-ext-fail.d: Likewise. Minimize extension requirements. * testsuite/gas/riscv/zicbo-mz-ext-fail.l: Likewise. Make matching pattern stricter. * testsuite/gas/riscv/zicbom.s: Removed. * testsuite/gas/riscv/zicbom.d: Removed. * testsuite/gas/riscv/zicbom-fail.s: Removed. * testsuite/gas/riscv/zicbom-fail.d: Removed. * testsuite/gas/riscv/zicbom-fail.l: Removed. * testsuite/gas/riscv/zicboz.s: Removed. * testsuite/gas/riscv/zicboz.d: Removed. * testsuite/gas/riscv/zicboz-fail.s: Removed. * testsuite/gas/riscv/zicboz-fail.d: Removed. * testsuite/gas/riscv/zicboz-fail.l: Removed. --- gas/testsuite/gas/riscv/zicbo-mz-ext-fail.d | 2 ++ gas/testsuite/gas/riscv/zicbo-mz-ext-fail.l | 11 +++++++++++ .../riscv/{zicbom-fail.s => zicbo-mz-ext-fail.s} | 4 ++++ gas/testsuite/gas/riscv/zicbo-mz-ext-noarch.d | 3 +++ gas/testsuite/gas/riscv/zicbo-mz-ext-noarch.l | 11 +++++++++++ .../gas/riscv/{zicbom.d => zicbo-mz-ext.d} | 9 ++++++--- gas/testsuite/gas/riscv/zicbo-mz-ext.s | 16 ++++++++++++++++ gas/testsuite/gas/riscv/zicbom-fail.d | 3 --- gas/testsuite/gas/riscv/zicbom-fail.l | 7 ------- gas/testsuite/gas/riscv/zicbom.s | 7 ------- gas/testsuite/gas/riscv/zicboz-fail.d | 3 --- gas/testsuite/gas/riscv/zicboz-fail.l | 5 ----- gas/testsuite/gas/riscv/zicboz-fail.s | 5 ----- gas/testsuite/gas/riscv/zicboz.d | 13 ------------- gas/testsuite/gas/riscv/zicboz.s | 5 ----- 15 files changed, 53 insertions(+), 51 deletions(-) create mode 100644 gas/testsuite/gas/riscv/zicbo-mz-ext-fail.d create mode 100644 gas/testsuite/gas/riscv/zicbo-mz-ext-fail.l rename gas/testsuite/gas/riscv/{zicbom-fail.s => zicbo-mz-ext-fail.s} (61%) create mode 100644 gas/testsuite/gas/riscv/zicbo-mz-ext-noarch.d create mode 100644 gas/testsuite/gas/riscv/zicbo-mz-ext-noarch.l rename gas/testsuite/gas/riscv/{zicbom.d => zicbo-mz-ext.d} (60%) create mode 100644 gas/testsuite/gas/riscv/zicbo-mz-ext.s delete mode 100644 gas/testsuite/gas/riscv/zicbom-fail.d delete mode 100644 gas/testsuite/gas/riscv/zicbom-fail.l delete mode 100644 gas/testsuite/gas/riscv/zicbom.s delete mode 100644 gas/testsuite/gas/riscv/zicboz-fail.d delete mode 100644 gas/testsuite/gas/riscv/zicboz-fail.l delete mode 100644 gas/testsuite/gas/riscv/zicboz-fail.s delete mode 100644 gas/testsuite/gas/riscv/zicboz.d delete mode 100644 gas/testsuite/gas/riscv/zicboz.s diff --git a/gas/testsuite/gas/riscv/zicbo-mz-ext-fail.d b/gas/testsuite/gas/riscv/zicbo-mz-ext-fail.d new file mode 100644 index 00000000000..e84233b09a1 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicbo-mz-ext-fail.d @@ -0,0 +1,2 @@ +#as: -march=rv32i_zicbom_zicboz +#error_output: zicbo-mz-ext-fail.l diff --git a/gas/testsuite/gas/riscv/zicbo-mz-ext-fail.l b/gas/testsuite/gas/riscv/zicbo-mz-ext-fail.l new file mode 100644 index 00000000000..a0bd7096f25 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicbo-mz-ext-fail.l @@ -0,0 +1,11 @@ +.*: 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\+5\(x1\)' +.*: Error: illegal operands `cbo\.inval x30' +.*: Error: illegal operands `cbo\.zero x1' +.*: Error: illegal operands `cbo\.zero 1\(x30\)' +.*: Error: illegal operands `cbo\.zero 3\+5\(x1\)' +.*: Error: illegal operands `cbo\.zero \(2\*4\)\(x30\)' diff --git a/gas/testsuite/gas/riscv/zicbom-fail.s b/gas/testsuite/gas/riscv/zicbo-mz-ext-fail.s similarity index 61% rename from gas/testsuite/gas/riscv/zicbom-fail.s rename to gas/testsuite/gas/riscv/zicbo-mz-ext-fail.s index 5fa22749b3a..447e9c37de7 100644 --- a/gas/testsuite/gas/riscv/zicbom-fail.s +++ b/gas/testsuite/gas/riscv/zicbo-mz-ext-fail.s @@ -5,3 +5,7 @@ target: cbo.flush x30 cbo.inval 3*2+5(x1) cbo.inval x30 + cbo.zero x1 + cbo.zero 1(x30) + cbo.zero 3+5(x1) + cbo.zero (2*4)(x30) diff --git a/gas/testsuite/gas/riscv/zicbo-mz-ext-noarch.d b/gas/testsuite/gas/riscv/zicbo-mz-ext-noarch.d new file mode 100644 index 00000000000..33db96dd471 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicbo-mz-ext-noarch.d @@ -0,0 +1,3 @@ +#as: -march=rv32i -I$srcdir/$subdir -defsym NOARCH=1 +#source: zicbo-mz-ext.s +#error_output: zicbo-mz-ext-noarch.l diff --git a/gas/testsuite/gas/riscv/zicbo-mz-ext-noarch.l b/gas/testsuite/gas/riscv/zicbo-mz-ext-noarch.l new file mode 100644 index 00000000000..6cf1e4821a2 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicbo-mz-ext-noarch.l @@ -0,0 +1,11 @@ +.*: Assembler messages: +.*: Error: unrecognized opcode `cbo\.clean \(x1\)', extension `zicbom' required +.*: Error: unrecognized opcode `cbo\.clean 0\(x30\)', extension `zicbom' required +.*: Error: unrecognized opcode `cbo\.flush \(x1\)', extension `zicbom' required +.*: Error: unrecognized opcode `cbo\.flush \(2-2\)\(x30\)', extension `zicbom' required +.*: Error: unrecognized opcode `cbo\.inval \(x1\)', extension `zicbom' required +.*: Error: unrecognized opcode `cbo\.inval 3\*4-12\(x30\)', extension `zicbom' required +.*: Error: unrecognized opcode `cbo\.zero 0\(x1\)', extension `zicboz' required +.*: Error: unrecognized opcode `cbo\.zero \(x30\)', extension `zicboz' required +.*: Error: unrecognized opcode `cbo\.zero 2-2\(x1\)', extension `zicboz' required +.*: Error: unrecognized opcode `cbo\.zero \(3\*5-15\)\(x30\)', extension `zicboz' required diff --git a/gas/testsuite/gas/riscv/zicbom.d b/gas/testsuite/gas/riscv/zicbo-mz-ext.d similarity index 60% rename from gas/testsuite/gas/riscv/zicbom.d rename to gas/testsuite/gas/riscv/zicbo-mz-ext.d index edd8a7079f4..9daa1cc4a93 100644 --- a/gas/testsuite/gas/riscv/zicbom.d +++ b/gas/testsuite/gas/riscv/zicbo-mz-ext.d @@ -1,6 +1,5 @@ -#as: -march=rv64g_zicbom -#source: zicbom.s -#objdump: -dr +#as: -march=rv32i -I$srcdir/$subdir +#objdump: -d .*:[ ]+file format .* @@ -13,3 +12,7 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+002f200f[ ]+cbo\.flush[ ]+\(t5\) [ ]+[0-9a-f]+:[ ]+0000a00f[ ]+cbo\.inval[ ]+\(ra\) [ ]+[0-9a-f]+:[ ]+000f200f[ ]+cbo\.inval[ ]+\(t5\) +[ ]+[0-9a-f]+:[ ]+0040a00f[ ]+cbo\.zero[ ]+\(ra\) +[ ]+[0-9a-f]+:[ ]+004f200f[ ]+cbo\.zero[ ]+\(t5\) +[ ]+[0-9a-f]+:[ ]+0040a00f[ ]+cbo\.zero[ ]+\(ra\) +[ ]+[0-9a-f]+:[ ]+004f200f[ ]+cbo\.zero[ ]+\(t5\) diff --git a/gas/testsuite/gas/riscv/zicbo-mz-ext.s b/gas/testsuite/gas/riscv/zicbo-mz-ext.s new file mode 100644 index 00000000000..af997377903 --- /dev/null +++ b/gas/testsuite/gas/riscv/zicbo-mz-ext.s @@ -0,0 +1,16 @@ +.include "testutils.inc" +target: + SET_ARCH_START +zicbom + cbo.clean (x1) + cbo.clean 0(x30) + cbo.flush (x1) + cbo.flush (2-2)(x30) + cbo.inval (x1) + cbo.inval 3*4-12(x30) + SET_ARCH_END + SET_ARCH_START +zicboz + cbo.zero 0(x1) + cbo.zero (x30) + cbo.zero 2-2(x1) + cbo.zero (3*5-15)(x30) + SET_ARCH_END diff --git a/gas/testsuite/gas/riscv/zicbom-fail.d b/gas/testsuite/gas/riscv/zicbom-fail.d deleted file mode 100644 index a6a61dfd37e..00000000000 --- a/gas/testsuite/gas/riscv/zicbom-fail.d +++ /dev/null @@ -1,3 +0,0 @@ -#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 deleted file mode 100644 index 2cf76356d2b..00000000000 --- a/gas/testsuite/gas/riscv/zicbom-fail.l +++ /dev/null @@ -1,7 +0,0 @@ -.*: 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\+5\(x1\)' -.*: Error: illegal operands `cbo.inval x30' diff --git a/gas/testsuite/gas/riscv/zicbom.s b/gas/testsuite/gas/riscv/zicbom.s deleted file mode 100644 index 6a306b931ed..00000000000 --- a/gas/testsuite/gas/riscv/zicbom.s +++ /dev/null @@ -1,7 +0,0 @@ -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 deleted file mode 100644 index 74cfd2fc911..00000000000 --- a/gas/testsuite/gas/riscv/zicboz-fail.d +++ /dev/null @@ -1,3 +0,0 @@ -#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 deleted file mode 100644 index ad8dcf54e00..00000000000 --- a/gas/testsuite/gas/riscv/zicboz-fail.l +++ /dev/null @@ -1,5 +0,0 @@ -.*: Assembler messages: -.*: Error: illegal operands `cbo.zero x1' -.*: Error: illegal operands `cbo.zero 1\(x30\)' -.*: Error: illegal operands `cbo.zero 3\+5\(x1\)' -.*: Error: illegal operands `cbo.zero \(2\*4\)\(x30\)' diff --git a/gas/testsuite/gas/riscv/zicboz-fail.s b/gas/testsuite/gas/riscv/zicboz-fail.s deleted file mode 100644 index 0856ea85ab1..00000000000 --- a/gas/testsuite/gas/riscv/zicboz-fail.s +++ /dev/null @@ -1,5 +0,0 @@ -target: - cbo.zero x1 - cbo.zero 1(x30) - cbo.zero 3+5(x1) - cbo.zero (2*4)(x30) diff --git a/gas/testsuite/gas/riscv/zicboz.d b/gas/testsuite/gas/riscv/zicboz.d deleted file mode 100644 index e04ab3491db..00000000000 --- a/gas/testsuite/gas/riscv/zicboz.d +++ /dev/null @@ -1,13 +0,0 @@ -#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\) -[ ]+[0-9a-f]+:[ ]+004f200f[ ]+cbo\.zero[ ]+\(t5\) diff --git a/gas/testsuite/gas/riscv/zicboz.s b/gas/testsuite/gas/riscv/zicboz.s deleted file mode 100644 index 3830362c376..00000000000 --- a/gas/testsuite/gas/riscv/zicboz.s +++ /dev/null @@ -1,5 +0,0 @@ -target: - cbo.zero 0(x1) - cbo.zero (x30) - cbo.zero 2-2(x1) - cbo.zero (3*5-15)(x30)