From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ot1-x32b.google.com (mail-ot1-x32b.google.com [IPv6:2607:f8b0:4864:20::32b]) by sourceware.org (Postfix) with ESMTPS id 55B2F38582BC for ; Tue, 29 Nov 2022 07:53:47 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 55B2F38582BC Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=rivosinc.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=rivosinc.com Received: by mail-ot1-x32b.google.com with SMTP id 94-20020a9d0067000000b0066c8d13a33dso8549277ota.12 for ; Mon, 28 Nov 2022 23:53:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20210112.gappssmtp.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=JZVP9OAW7V0oGPiLI56sysZpgNa4OAXiE5rpEbKXByg=; b=aPkleo7cTd0ZOIfZO08AJ5FND+CF5Gz3cehdDju9vyWGMXbaNoac48Cwvwm/azS52l Juox5b0uiJDg4rFgWz8KXjfDr101pQJrK6QvBDHLABKxDpMo3jiwyA+JfqmY5i+8ozmp QpPuwuknAPU/FB5D6t3q1VQSbOFxazUy6oW1I+E7Ko7VSs5ly5FLwQDyE+w0v0fwNXh6 hr5IQKKl0vAWQUZgFepNoruVB7DCKAKjEls4ldOURLHIxHZpaURiwSRRewFShWcIUtC/ AH4RikMJD4rsaQsbIiaJyy8rYV1stFdpVVJD91U4HUuUTY667NDU7b3i+PIj3UDqKvwG TGiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=JZVP9OAW7V0oGPiLI56sysZpgNa4OAXiE5rpEbKXByg=; b=WxOKAlvN5/iFJz0eV0S/PCMuVM10iQgTb31nt66a3Cp636g2P1t4PU8JU4bhZb6b1f Sqwbv55eBB5XMFZmJTzB0cuTj93WuTH7tPUO4LHXEeV4szqRcfKBM6a5qvAvb9Eb+8Gz kEvh3ZW8TfuKCxvJCnAyM/TcYUG+MTAv5ywJoaxaRP+csdZymgHWObvw0UbkOLq2+9BI YDj406+0DhgTDkQVp9esIgXnv2zyHkrzPq8iPCDgkLApJd99wDxiStMducFNlGTj7H2W 6tP2OA11JJLDSIlmrOIHLhZN962osBQ+j6cW5BvTMJ2atXwZhSrclHHB4KLS3G30U8KF 6qAQ== X-Gm-Message-State: ANoB5pnmLJP8wVHbQhZkqob5if+wMZGHpZS4EWFE0FUWzT8kQcSg5HHq 9GA8fZ74LDb9jaQIER4eOFTH1eToqjJQc6KTbfEdSSnNcFaEww== X-Google-Smtp-Source: AA0mqf7NfwKOotuK1Ib9jrTyeeRptmgV2hlF1QSpoD0x5H1XElpJKRnRQcGmd+IbnWVomfsrDfkwY3jhezlxHOKC9FQ= X-Received: by 2002:a9d:61d6:0:b0:66d:685d:a138 with SMTP id h22-20020a9d61d6000000b0066d685da138mr27841880otk.208.1669708426688; Mon, 28 Nov 2022 23:53:46 -0800 (PST) MIME-Version: 1.0 References: <6a020edd0e114a003edbaafe1088a040e9fa07e7.1667651354.git.research_trasio@irq.a4lg.com> In-Reply-To: <6a020edd0e114a003edbaafe1088a040e9fa07e7.1667651354.git.research_trasio@irq.a4lg.com> From: Nelson Chu Date: Tue, 29 Nov 2022 15:53:36 +0800 Message-ID: Subject: Re: [PATCH 04/12] RISC-V: GAS: Add basic shared test utilities To: Tsukasa OI Cc: Kito Cheng , Palmer Dabbelt , binutils@sourceware.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-9.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,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 List-Id: I disagree with this change. This make testcase too complicated. Besides, I also don't prefer to add something only used for future purposes. Just add the stuff when we really need it. Nelson On Sat, Nov 5, 2022 at 8:30 PM Tsukasa OI wrote: > > This commit adds basic shared test utilities intended for future > extension tests. > > gas/ChangeLog: > > * testsuite/gas/riscv/testutils.inc: New test utilities. > --- > gas/testsuite/gas/riscv/testutils.inc | 113 ++++++++++++++++++++++++++ > 1 file changed, 113 insertions(+) > create mode 100644 gas/testsuite/gas/riscv/testutils.inc > > diff --git a/gas/testsuite/gas/riscv/testutils.inc b/gas/testsuite/gas/riscv/testutils.inc > new file mode 100644 > index 00000000000..009484eefed > --- /dev/null > +++ b/gas/testsuite/gas/riscv/testutils.inc > @@ -0,0 +1,113 @@ > +# Set NOARCH symbols. > +.ifndef NOARCH > +.set NOARCH, 0 > +.endif > +.ifndef NOARCH_ARCH > +.set NOARCH_ARCH, 0 > +.endif > +.ifndef NOARCH_XLEN > +.set NOARCH_XLEN, 0 > +.endif > +.if NOARCH > +.set NOARCH_ARCH, 1 > +.set NOARCH_XLEN, 1 > +.endif > + > +# Update XLEN constraint symbols. > +# For intentional error handling tests, .if SYM ... .endif block should be > +# used to test those varibales. > +.macro UPDATE_XLEN > + .if NOARCH_XLEN > + # When NOARCH_XLEN is set, > + # set those variables to "invalid" 1 to generate errors. > + .set XLEN_EQ_32, 1 > + .set XLEN_EQ_64, 1 > + .set XLEN_GE_64, 1 > + .else > + # Set symbol values depending on the XLEN. > + .ifdef XLEN > + .ifeq XLEN-32 > + .set XLEN_EQ_32, 1 > + .else > + .set XLEN_EQ_32, 0 > + .endif > + .ifeq XLEN-64 > + .set XLEN_EQ_64, 1 > + .else > + .set XLEN_EQ_64, 0 > + .endif > + .ifge XLEN-64 > + .set XLEN_GE_64, 1 > + .else > + .set XLEN_GE_64, 0 > + .endif > + .else > + .set XLEN_EQ_32, 0 > + .set XLEN_EQ_64, 0 > + .set XLEN_GE_64, 0 > + .endif > + .endif > +.endm > +UPDATE_XLEN > + > +# Set the base architecture. > +.macro SET_BASE_FORCE xlen, basearch=i > + .option arch, rv\xlen\basearch > + .set XLEN, \xlen > + UPDATE_XLEN > +.endm > + > +# Set the base architecture unless the symbol NOARCH_ARCH is set. > +.macro SET_BASE xlen, basearch=i > + .if !NOARCH_ARCH > + SET_BASE_FORCE \xlen, \basearch > + .endif > +.endm > + > +# Begin base architecture block. > +.macro SET_BASE_START_FORCE xlen, basearch=i > + .option push > + SET_BASE_FORCE \xlen, \basearch > +.endm > + > +# Begin base architecture block. > +# Don't change the architecture if NOARCH_ARCH is set. > +.macro SET_BASE_START xlen, basearch=i > + .option push > + SET_BASE \xlen, \basearch > +.endm > + > +# End base architecture block. > +.macro SET_BASE_END > + .option pop > +.endm > + > +# Set the architecture. > +.macro SET_ARCH_FORCE arch > + .option arch, \arch > +.endm > + > +# Set the architecture unless the symbol NOARCH_ARCH is set. > +.macro SET_ARCH arch > + .ifeq NOARCH_ARCH-0 > + SET_ARCH_FORCE \arch > + .endif > +.endm > + > +# Begin architecture block. > +.macro SET_ARCH_START_FORCE arch > + .option push > + SET_ARCH_FORCE \arch > +.endm > + > +# Begin architecture block. > +# Don't change the architecture if NOARCH_ARCH is set. > +.macro SET_ARCH_START arch > + .option push > + SET_ARCH \arch > +.endm > + > +# End architecture block. > +.macro SET_ARCH_END > + .option pop > +.endm > -- > 2.37.2 >