From patchwork Sat Nov 5 12:29:13 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tsukasa OI X-Patchwork-Id: 15968 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp967525wru; Sat, 5 Nov 2022 05:36:27 -0700 (PDT) X-Google-Smtp-Source: AMsMyM44djjGTTDqBwL84ybg//gQkwabY62IPAmUZltBBhy2uxRvAoKj1Zn0trIimkVgQXarx3W4 X-Received: by 2002:a17:907:2c68:b0:7ad:8ba7:664a with SMTP id ib8-20020a1709072c6800b007ad8ba7664amr39138925ejc.488.1667651787772; Sat, 05 Nov 2022 05:36:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1667651787; cv=none; d=google.com; s=arc-20160816; b=cvCoJSKDrgVcx4gDSbto+ZtCFvakjbJIAVEiHytIkP5hgCm0Aq2VN8FR1AoQFyzfaa I25oX6ysMCbMsRlAOb1xQ/6Hxn+ru6tzOyEsG7slT3Lw8MTTFtjxSk/NEmFtZ8A3fAmt +6nZgfbFuWtHzn3EQqRqgXPJa7yuq5z4Q/1kXJc0ikCYUuiF+syfR4U++Evm73DLrSFT B7lunQnh0ApnEeLDgp2hr8+8s+lpF2H+5kMbfn8AGVtsgHRVdXmKLtAUjDnkDhHE/wzs dS5I5b3Pdmaj4Q3NMGbMpcMGhHyOaxIZrO1L7TPfjSI1O35GEJ6C9YfHQbJFkyWPD1Zs 5bYA== 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=dLuxgWPr67qo+x1ZP4r0+izLepWF6JF1EhGrCjswta0=; b=flBWCRZX9vEN1VGij9S7cGincp4Q69LWbYaxDUZ610U0Ow7yGBq+6GLHv9Z3Znnygd vueHMsF0umFM4zHQUKw15V53/AaT6Bc6jv+cWepJhhruPhY0n3quXulaQuaEBTKLhpKj RXXvXP9iEUJLJSwR5zkriZnMP0zHEmtDRKdZbiYFzFc/YM17juk+kc7rPRknVNlVzmvA EiZycgcLkOnRtt7kuuh+uiwmEK5XCAvZeA9UmbQ+oQmIUIrLTdWGa/IZfA2GvNokVvMq us/Mq0MSgV38upUS1RO28LMWQK/TDIYSsrAF1/geujBCdnjzn1cHINkKYhQx8T2lP73f ji8w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sourceware.org header.s=default header.b=BpceJMmm; 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 mp3-20020a1709071b0300b0078d0f57b0e2si2487962ejc.412.2022.11.05.05.36.27 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 05 Nov 2022 05:36:27 -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=BpceJMmm; 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 84C493857C74 for ; Sat, 5 Nov 2022 12:34:27 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 84C493857C74 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1667651667; bh=dLuxgWPr67qo+x1ZP4r0+izLepWF6JF1EhGrCjswta0=; 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=BpceJMmmtORBE7JkMFJJyeq64jH8/XJv9c0m8btkSyd5BdUjldRUj+KvbCZt+OXIe f93OHYP4TusJNk+c0pyyokdGUdduBqE/IYnwDzVkRRLe2kwU5YxgGWW20m2g9jJvI/ a+/wNf41fc6Fl2NC9XGkt2ZiOc9PNecgPe047sKU= 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 9B6D0385843B for ; Sat, 5 Nov 2022 12:30:38 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 9B6D0385843B Received: from [127.0.0.1] (localhost [127.0.0.1]) by mail-sender-0.a4lg.com (Postfix) with ESMTPSA id ED237300089; Sat, 5 Nov 2022 12:30:36 +0000 (UTC) To: Tsukasa OI , Nelson Chu , Kito Cheng , Palmer Dabbelt Subject: [PATCH 07/12] RISC-V: Combine complex extension error handling tests Date: Sat, 5 Nov 2022 12:29:13 +0000 Message-Id: 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?1748659640864945037?= X-GMAIL-MSGID: =?utf-8?q?1748659640864945037?= Because mapping symbols with ISA string is now supported, we can now combine five complex "no required extensions" testcases related to the "fcvt.d.h" instruction into one. gas/ChangeLog: * testsuite/gas/riscv/zfhmin-d-noarch.s: Combined. * testsuite/gas/riscv/zfhmin-d-noarch.d: Likewise. Minimize extension requirements. * testsuite/gas/riscv/zfhmin-d-noarch.l: Likewise. Make matching pattern stricter. * testsuite/gas/riscv/zfhmin-d-insn-class-fail.s: Removed. * testsuite/gas/riscv/zfhmin-d-insn-class-fail-1.d: Removed. * testsuite/gas/riscv/zfhmin-d-insn-class-fail-1.l: Removed. * testsuite/gas/riscv/zfhmin-d-insn-class-fail-2.d: Removed. * testsuite/gas/riscv/zfhmin-d-insn-class-fail-2.l: Removed. * testsuite/gas/riscv/zfhmin-d-insn-class-fail-3.d: Removed. * testsuite/gas/riscv/zfhmin-d-insn-class-fail-3.l: Removed. * testsuite/gas/riscv/zfhmin-d-insn-class-fail-4.d: Removed. * testsuite/gas/riscv/zfhmin-d-insn-class-fail-4.l: Removed. * testsuite/gas/riscv/zfhmin-d-insn-class-fail-5.d: Removed. * testsuite/gas/riscv/zfhmin-d-insn-class-fail-5.l: Removed. --- .../gas/riscv/zfhmin-d-insn-class-fail-1.d | 3 --- .../gas/riscv/zfhmin-d-insn-class-fail-1.l | 2 -- .../gas/riscv/zfhmin-d-insn-class-fail-2.d | 3 --- .../gas/riscv/zfhmin-d-insn-class-fail-2.l | 2 -- .../gas/riscv/zfhmin-d-insn-class-fail-3.d | 3 --- .../gas/riscv/zfhmin-d-insn-class-fail-3.l | 2 -- .../gas/riscv/zfhmin-d-insn-class-fail-4.d | 3 --- .../gas/riscv/zfhmin-d-insn-class-fail-4.l | 2 -- .../gas/riscv/zfhmin-d-insn-class-fail-5.d | 3 --- .../gas/riscv/zfhmin-d-insn-class-fail-5.l | 2 -- .../gas/riscv/zfhmin-d-insn-class-fail.s | 4 --- gas/testsuite/gas/riscv/zfhmin-d-noarch.d | 2 ++ gas/testsuite/gas/riscv/zfhmin-d-noarch.l | 6 +++++ gas/testsuite/gas/riscv/zfhmin-d-noarch.s | 25 +++++++++++++++++++ 14 files changed, 33 insertions(+), 29 deletions(-) delete mode 100644 gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-1.d delete mode 100644 gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-1.l delete mode 100644 gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-2.d delete mode 100644 gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-2.l delete mode 100644 gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-3.d delete mode 100644 gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-3.l delete mode 100644 gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-4.d delete mode 100644 gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-4.l delete mode 100644 gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-5.d delete mode 100644 gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-5.l delete mode 100644 gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail.s create mode 100644 gas/testsuite/gas/riscv/zfhmin-d-noarch.d create mode 100644 gas/testsuite/gas/riscv/zfhmin-d-noarch.l create mode 100644 gas/testsuite/gas/riscv/zfhmin-d-noarch.s diff --git a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-1.d b/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-1.d deleted file mode 100644 index 02a11943cf2..00000000000 --- a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-1.d +++ /dev/null @@ -1,3 +0,0 @@ -#as: -march=rv64i -#source: zfhmin-d-insn-class-fail.s -#error_output: zfhmin-d-insn-class-fail-1.l diff --git a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-1.l b/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-1.l deleted file mode 100644 index 12f41a39ae0..00000000000 --- a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-1.l +++ /dev/null @@ -1,2 +0,0 @@ -.*: Assembler messages: -.*: Error: unrecognized opcode `fcvt.d.h fa0,fa1', extension `zfhmin' and `d', or `zhinxmin' and `zdinx' required diff --git a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-2.d b/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-2.d deleted file mode 100644 index 27b5a12857e..00000000000 --- a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-2.d +++ /dev/null @@ -1,3 +0,0 @@ -#as: -march=rv64i_zhinxmin -#source: zfhmin-d-insn-class-fail.s -#error_output: zfhmin-d-insn-class-fail-2.l diff --git a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-2.l b/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-2.l deleted file mode 100644 index 255f96cb5a1..00000000000 --- a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-2.l +++ /dev/null @@ -1,2 +0,0 @@ -.*: Assembler messages: -.*: Error: unrecognized opcode `fcvt.d.h fa0,fa1', extension `zdinx' required diff --git a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-3.d b/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-3.d deleted file mode 100644 index 4f195bfa7c5..00000000000 --- a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-3.d +++ /dev/null @@ -1,3 +0,0 @@ -#as: -march=rv64i_zdinx -#source: zfhmin-d-insn-class-fail.s -#error_output: zfhmin-d-insn-class-fail-3.l diff --git a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-3.l b/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-3.l deleted file mode 100644 index 7ff7b278fe3..00000000000 --- a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-3.l +++ /dev/null @@ -1,2 +0,0 @@ -.*: Assembler messages: -.*: Error: unrecognized opcode `fcvt.d.h fa0,fa1', extension `zhinxmin' required diff --git a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-4.d b/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-4.d deleted file mode 100644 index 940d48c5dfd..00000000000 --- a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-4.d +++ /dev/null @@ -1,3 +0,0 @@ -#as: -march=rv64i_zfhmin -#source: zfhmin-d-insn-class-fail.s -#error_output: zfhmin-d-insn-class-fail-4.l diff --git a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-4.l b/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-4.l deleted file mode 100644 index 2d58e4ce1ce..00000000000 --- a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-4.l +++ /dev/null @@ -1,2 +0,0 @@ -.*: Assembler messages: -.*: Error: unrecognized opcode `fcvt.d.h fa0,fa1', extension `d' required diff --git a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-5.d b/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-5.d deleted file mode 100644 index af26d5e9ea7..00000000000 --- a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-5.d +++ /dev/null @@ -1,3 +0,0 @@ -#as: -march=rv64id -#source: zfhmin-d-insn-class-fail.s -#error_output: zfhmin-d-insn-class-fail-5.l diff --git a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-5.l b/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-5.l deleted file mode 100644 index 2fa6e8c754b..00000000000 --- a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail-5.l +++ /dev/null @@ -1,2 +0,0 @@ -.*: Assembler messages: -.*: Error: unrecognized opcode `fcvt.d.h fa0,fa1', extension `zfhmin' required diff --git a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail.s b/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail.s deleted file mode 100644 index 691d0a929dc..00000000000 --- a/gas/testsuite/gas/riscv/zfhmin-d-insn-class-fail.s +++ /dev/null @@ -1,4 +0,0 @@ -# This test checks error message corresponding required extension(s). -# Operands are invalid on Zhinxmin+Zdinx but they are not parsed since -# extension test fails. -fcvt.d.h fa0, fa1 diff --git a/gas/testsuite/gas/riscv/zfhmin-d-noarch.d b/gas/testsuite/gas/riscv/zfhmin-d-noarch.d new file mode 100644 index 00000000000..fded578caea --- /dev/null +++ b/gas/testsuite/gas/riscv/zfhmin-d-noarch.d @@ -0,0 +1,2 @@ +#as: -march=rv64i -I$srcdir/$subdir +#error_output: zfhmin-d-noarch.l diff --git a/gas/testsuite/gas/riscv/zfhmin-d-noarch.l b/gas/testsuite/gas/riscv/zfhmin-d-noarch.l new file mode 100644 index 00000000000..8a55ccaac2b --- /dev/null +++ b/gas/testsuite/gas/riscv/zfhmin-d-noarch.l @@ -0,0 +1,6 @@ +.*: Assembler messages: +.*: Error: unrecognized opcode `fcvt\.d\.h fa0,fa1', extension `zfhmin' and `d', or `zhinxmin' and `zdinx' required +.*: Error: unrecognized opcode `fcvt\.d\.h fa0,fa1', extension `d' required +.*: Error: unrecognized opcode `fcvt\.d\.h fa0,fa1', extension `zfhmin' required +.*: Error: unrecognized opcode `fcvt\.d\.h a0,a1', extension `zdinx' required +.*: Error: unrecognized opcode `fcvt\.d\.h a0,a1', extension `zhinxmin' required diff --git a/gas/testsuite/gas/riscv/zfhmin-d-noarch.s b/gas/testsuite/gas/riscv/zfhmin-d-noarch.s new file mode 100644 index 00000000000..f247de1bd36 --- /dev/null +++ b/gas/testsuite/gas/riscv/zfhmin-d-noarch.s @@ -0,0 +1,25 @@ +.include "testutils.inc" + +target: + # Case 1: No 'Zfhmin', 'D', 'Zhinxmin' or 'Zdinx' + fcvt.d.h fa0, fa1 + + # Case 2: 'Zfhmin' but no 'D' + SET_ARCH_START +zfhmin + fcvt.d.h fa0, fa1 + SET_ARCH_END + + # Case 3: 'D' but no 'Zfhmin' + SET_ARCH_START +d + fcvt.d.h fa0, fa1 + SET_ARCH_END + + # Case 4: 'Zhinxmin' but no 'Zdinx' + SET_ARCH_START +zhinxmin + fcvt.d.h a0, a1 + SET_ARCH_END + + # Case 5: 'Zdinx' but no 'Zhinxmin' + SET_ARCH_START +zdinx + fcvt.d.h a0, a1 + SET_ARCH_END