From patchwork Sat Nov 5 12:29:08 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tsukasa OI X-Patchwork-Id: 15961 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp965019wru; Sat, 5 Nov 2022 05:30:50 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5LsqfvGz4UtFzYpv5tireahra/CVNyt8Y2LCORQmMRipaeViLhOT2oC0MJz7BUvoXq/D/F X-Received: by 2002:a50:cc07:0:b0:453:4427:a918 with SMTP id m7-20020a50cc07000000b004534427a918mr40434330edi.121.1667651450660; Sat, 05 Nov 2022 05:30:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1667651450; cv=none; d=google.com; s=arc-20160816; b=csVZb+Hz/EiKClFmwq1ZAgLWv1ipPwo7QtpLYzKlPhR6t1yyBtpxSqbyYY2MjrVwHA gFdNaCkITvKFjlKWAHzo1lk9En5xRvWPkWA+OalkdGv6XeFW/2lRFbn+H+dDUFtTpgag OGxFUcaAE424Ut0G2+W7eLZwLT4IPbvH0D53EwsevYEO8IyAjRyw+oohkxE8RXbZTDSZ /egBCty75evbhfdAD6A6OCg7FZNAfuW9NudeWUN7jNfFSUUIUNQX+Qi0OuORmt2xQhlA PRkm/X045NzG779S7CZY4GXpbM+Ci3NHNbk4AoM4viwhAXblFlCik5ehGoPPat1tDYIT B32w== 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=PwF9Zue8HQedc0MAHVBdEVEA/uUgTF6X7ZuO1EhhXvg=; b=qGMCoQwcFtDGeWsQzVTKoWzIRbxzmENDD/Q7hVMlTfZupvujyiMyLa9JuFWF4Nnqvi VpW12dWpKiyg3nIltRTFFPbjO/NNVtryblMqdm0adimO8DKpldSBYIhfFMfyBfdlS5vX 9oDKBMgIkwWagWGqeu+3ZWkRctO59/wiT4nl9N7jK/F9qEaKG4v/zG3Eqs59j3QToAqC aMB7xmL6fmESXpgCSKChdK1VRIECK3Dv6W6r1tqNLhf3QPcI2PPFZ5NtRR9g/FRjdHrc d6DMLHqth1Unjl423s8BmGhHoLYza7ugR5KLtppFQPFQ925wKqeYtrkzwIyL+l26nfn7 b8jQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sourceware.org header.s=default header.b="sh/SEemk"; spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 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 (ip-8-43-85-97.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id m13-20020a056402430d00b0044ecd80f257si3103674edc.603.2022.11.05.05.30.50 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 05 Nov 2022 05:30:50 -0700 (PDT) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@sourceware.org header.s=default header.b="sh/SEemk"; spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 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 032DA3858011 for ; Sat, 5 Nov 2022 12:30:45 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 032DA3858011 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1667651445; bh=PwF9Zue8HQedc0MAHVBdEVEA/uUgTF6X7ZuO1EhhXvg=; 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=sh/SEemkKap6Au9rnlAmydKYI0NNEvLjAKuRGO04P1vUb/oB0I14b9nsO486h6Qo6 UfMAm4lcCStqGJ4/UJ/rD8SRkiY2OxorPRrcxYBv+RWPsyXiPH5+fnnxlNZ83riM0i Awi3t8618m5iC2MCuJEUrnG4AF+AbnPYqwYmwZYc= 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 EEC613858421 for ; Sat, 5 Nov 2022 12:29:45 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org EEC613858421 Received: from [127.0.0.1] (localhost [127.0.0.1]) by mail-sender-0.a4lg.com (Postfix) with ESMTPSA id 4E9F2300089; Sat, 5 Nov 2022 12:29:44 +0000 (UTC) To: Tsukasa OI , Nelson Chu , Kito Cheng , Palmer Dabbelt Subject: [PATCH 02/12] RISC-V: Tidy disassembler corner case tests Date: Sat, 5 Nov 2022 12:29:08 +0000 Message-Id: <4496235002a396043598ab9755bd8eda5c077b1f.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?1748659287662407619?= X-GMAIL-MSGID: =?utf-8?q?1748659287662407619?= Because later commits use "XLEN" symbol rather than "rv64", it replaces occurrences of "rv64" with "XLEN" and makes other tidying changes for consistency with other testcases. gas/ChangeLog: * testsuite/gas/riscv/dis-addr-addiw-a.d: Tidying. * testsuite/gas/riscv/dis-addr-addiw-b.d: Likewise. * testsuite/gas/riscv/dis-addr-overflow.s: Tidying. * testsuite/gas/riscv/dis-addr-overflow-32.d: Use XLEN symbol. * testsuite/gas/riscv/dis-addr-overflow-64.d: Likewise. * testsuite/gas/riscv/dis-addr-topaddr-gp.s: Tidying. * testsuite/gas/riscv/dis-addr-topaddr-gp-32.d: Use XLEN symbol. * testsuite/gas/riscv/dis-addr-topaddr-gp-64.d: Likewise. * testsuite/gas/riscv/dis-addr-topaddr.s: Moved to... * testsuite/gas/riscv/dis-addr-topaddr-zero.s: ...here with tidying. * testsuite/gas/riscv/dis-addr-topaddr-32.d: Moved to... * testsuite/gas/riscv/dis-addr-topaddr-zero-32.d: ...here. Use XLEN symbol. Minimize architecture requirements. * testsuite/gas/riscv/dis-addr-topaddr-64.d: Moved to... * testsuite/gas/riscv/dis-addr-topaddr-zero-64.d: ...here. Use XLEN symbol. Minimize architecture requirements. --- gas/testsuite/gas/riscv/dis-addr-addiw-a.d | 2 +- gas/testsuite/gas/riscv/dis-addr-addiw-b.d | 2 +- .../gas/riscv/dis-addr-overflow-32.d | 4 +- .../gas/riscv/dis-addr-overflow-64.d | 4 +- gas/testsuite/gas/riscv/dis-addr-overflow.s | 40 +++++++++---------- .../gas/riscv/dis-addr-topaddr-gp-32.d | 4 +- .../gas/riscv/dis-addr-topaddr-gp-64.d | 4 +- gas/testsuite/gas/riscv/dis-addr-topaddr-gp.s | 12 +++--- ...opaddr-32.d => dis-addr-topaddr-zero-32.d} | 6 +-- ...opaddr-64.d => dis-addr-topaddr-zero-64.d} | 6 +-- .../gas/riscv/dis-addr-topaddr-zero.s | 11 +++++ gas/testsuite/gas/riscv/dis-addr-topaddr.s | 10 ----- 12 files changed, 53 insertions(+), 52 deletions(-) rename gas/testsuite/gas/riscv/{dis-addr-topaddr-32.d => dis-addr-topaddr-zero-32.d} (60%) rename gas/testsuite/gas/riscv/{dis-addr-topaddr-64.d => dis-addr-topaddr-zero-64.d} (58%) create mode 100644 gas/testsuite/gas/riscv/dis-addr-topaddr-zero.s delete mode 100644 gas/testsuite/gas/riscv/dis-addr-topaddr.s diff --git a/gas/testsuite/gas/riscv/dis-addr-addiw-a.d b/gas/testsuite/gas/riscv/dis-addr-addiw-a.d index c4e4cfe6df7..44837ff4f69 100644 --- a/gas/testsuite/gas/riscv/dis-addr-addiw-a.d +++ b/gas/testsuite/gas/riscv/dis-addr-addiw-a.d @@ -2,7 +2,7 @@ #source: dis-addr-addiw.s #objdump: -d --adjust-vma=0xffffffe0 -.*: file format elf64-(little|big)riscv +.*:[ ]+file format .* Disassembly of section .text: diff --git a/gas/testsuite/gas/riscv/dis-addr-addiw-b.d b/gas/testsuite/gas/riscv/dis-addr-addiw-b.d index d5f84db172e..bc1841f35f1 100644 --- a/gas/testsuite/gas/riscv/dis-addr-addiw-b.d +++ b/gas/testsuite/gas/riscv/dis-addr-addiw-b.d @@ -2,7 +2,7 @@ #source: dis-addr-addiw.s #objdump: -d --adjust-vma=0x7fffffe0 -.*: file format elf64-(little|big)riscv +.*:[ ]+file format .* Disassembly of section .text: diff --git a/gas/testsuite/gas/riscv/dis-addr-overflow-32.d b/gas/testsuite/gas/riscv/dis-addr-overflow-32.d index 287c5ea022f..b246605e361 100644 --- a/gas/testsuite/gas/riscv/dis-addr-overflow-32.d +++ b/gas/testsuite/gas/riscv/dis-addr-overflow-32.d @@ -1,8 +1,8 @@ -#as: -march=rv32ic +#as: -march=rv32ic -defsym XLEN=32 #source: dis-addr-overflow.s #objdump: -d -.*: file format elf32-(little|big)riscv +.*:[ ]+file format .* Disassembly of section .text: diff --git a/gas/testsuite/gas/riscv/dis-addr-overflow-64.d b/gas/testsuite/gas/riscv/dis-addr-overflow-64.d index 1966a5ed743..61885edbc75 100644 --- a/gas/testsuite/gas/riscv/dis-addr-overflow-64.d +++ b/gas/testsuite/gas/riscv/dis-addr-overflow-64.d @@ -1,8 +1,8 @@ -#as: -march=rv64ic -defsym rv64=1 +#as: -march=rv64ic -defsym XLEN=64 #source: dis-addr-overflow.s #objdump: -d -.*: file format elf64-(little|big)riscv +.*:[ ]+file format .* Disassembly of section .text: diff --git a/gas/testsuite/gas/riscv/dis-addr-overflow.s b/gas/testsuite/gas/riscv/dis-addr-overflow.s index 77ca39c07b6..47e5351c9fc 100644 --- a/gas/testsuite/gas/riscv/dis-addr-overflow.s +++ b/gas/testsuite/gas/riscv/dis-addr-overflow.s @@ -1,26 +1,26 @@ -.set __global_pointer$, 0x00000200 +.set __global_pointer$, 0x00000200 -.ifdef rv64 -topbase = 0xffffffff00000000 +.ifge XLEN-64 +.set topbase, 0xffffffff00000000 .else -topbase = 0 +.set topbase, 0 .endif -.set addr_load, topbase + 0xffffeffc # -0x1000 -4 -.set addr_store, topbase + 0xffffdff8 # -0x2000 -8 -.set addr_jalr_1, topbase + 0xffffd000 # -0x3000 -.set addr_jalr_2, topbase + 0xffffbff4 # -0x4000 -12 -.set addr_jalr_3, topbase + 0xffffb000 # -0x5000 -.set addr_loadaddr, topbase + 0xffff9ff0 # -0x6000 -16 -.set addr_loadaddr_c, topbase + 0xffff8fec # -0x7000 -20 -.set addr_loadaddr_w, topbase + 0xffff7fe8 # -0x8000 -24 -.set addr_loadaddr_w_c, topbase + 0xffff6fe4 # -0x9000 -28 -.set addr_rel_gp_pos, 0x00000600 # __global_pointer$ + 0x400 -.set addr_rel_gp_neg, topbase + 0xfffffe00 # __global_pointer$ - 0x400 -.set addr_rel_zero_pos, 0x00000100 -.set addr_rel_zero_neg, topbase + 0xfffff800 # -0x800 -.set addr_jalr_rel_zero_pos, 0x00000104 -.set addr_jalr_rel_zero_neg, topbase + 0xfffff804 # -0x7fc +.set addr_load, topbase + 0xffffeffc # -0x1000 -4 +.set addr_store, topbase + 0xffffdff8 # -0x2000 -8 +.set addr_jalr_1, topbase + 0xffffd000 # -0x3000 +.set addr_jalr_2, topbase + 0xffffbff4 # -0x4000 -12 +.set addr_jalr_3, topbase + 0xffffb000 # -0x5000 +.set addr_loadaddr, topbase + 0xffff9ff0 # -0x6000 -16 +.set addr_loadaddr_c, topbase + 0xffff8fec # -0x7000 -20 +.set addr_loadaddr_w, topbase + 0xffff7fe8 # -0x8000 -24 +.set addr_loadaddr_w_c, topbase + 0xffff6fe4 # -0x9000 -28 +.set addr_rel_gp_pos, 0x00000600 # __global_pointer$ + 0x400 +.set addr_rel_gp_neg, topbase + 0xfffffe00 # __global_pointer$ - 0x400 +.set addr_rel_zero_pos, 0x00000100 +.set addr_rel_zero_neg, topbase + 0xfffff800 # -0x800 +.set addr_jalr_rel_zero_pos, 0x00000104 +.set addr_jalr_rel_zero_neg, topbase + 0xfffff804 # -0x7fc target: .option push @@ -48,7 +48,7 @@ target: lui t6, 0xffff9 .option pop c.addi t6, -20 -.ifdef rv64 +.ifge XLEN-64 .option push .option arch, -c # ADDIW (not compressed) diff --git a/gas/testsuite/gas/riscv/dis-addr-topaddr-gp-32.d b/gas/testsuite/gas/riscv/dis-addr-topaddr-gp-32.d index 875bfe73189..cdbbe3bf846 100644 --- a/gas/testsuite/gas/riscv/dis-addr-topaddr-gp-32.d +++ b/gas/testsuite/gas/riscv/dis-addr-topaddr-gp-32.d @@ -1,8 +1,8 @@ -#as: -march=rv32i +#as: -march=rv32i -defsym XLEN=32 #source: dis-addr-topaddr-gp.s #objdump: -d -.*: file format elf32-(little|big)riscv +.*:[ ]+file format .* Disassembly of section .text: diff --git a/gas/testsuite/gas/riscv/dis-addr-topaddr-gp-64.d b/gas/testsuite/gas/riscv/dis-addr-topaddr-gp-64.d index 5ac4b52b18d..54fc8631901 100644 --- a/gas/testsuite/gas/riscv/dis-addr-topaddr-gp-64.d +++ b/gas/testsuite/gas/riscv/dis-addr-topaddr-gp-64.d @@ -1,8 +1,8 @@ -#as: -march=rv64i -defsym rv64=1 +#as: -march=rv64i -defsym XLEN=64 #source: dis-addr-topaddr-gp.s #objdump: -d -.*: file format elf64-(little|big)riscv +.*:[ ]+file format .* Disassembly of section .text: diff --git a/gas/testsuite/gas/riscv/dis-addr-topaddr-gp.s b/gas/testsuite/gas/riscv/dis-addr-topaddr-gp.s index 6ba9fc7a39d..1689cdf89c1 100644 --- a/gas/testsuite/gas/riscv/dis-addr-topaddr-gp.s +++ b/gas/testsuite/gas/riscv/dis-addr-topaddr-gp.s @@ -1,12 +1,12 @@ -.ifdef rv64 -topbase = 0xffffffff00000000 +.ifge XLEN-64 +.set topbase, 0xffffffff00000000 .else -topbase = 0 +.set topbase, 0 .endif -.set __global_pointer$, topbase + 0xffffffff # -1 -.set addr_rel_gp_pos, 0x00000004 # +4 -.set addr_rel_gp_neg, topbase + 0xfffffffc # -4 +.set __global_pointer$, topbase + 0xffffffff # -1 +.set addr_rel_gp_pos, 0x00000004 # +4 +.set addr_rel_gp_neg, topbase + 0xfffffffc # -4 target: # Use addresses relative to gp diff --git a/gas/testsuite/gas/riscv/dis-addr-topaddr-32.d b/gas/testsuite/gas/riscv/dis-addr-topaddr-zero-32.d similarity index 60% rename from gas/testsuite/gas/riscv/dis-addr-topaddr-32.d rename to gas/testsuite/gas/riscv/dis-addr-topaddr-zero-32.d index 87854cd58e6..2934e2d5fec 100644 --- a/gas/testsuite/gas/riscv/dis-addr-topaddr-32.d +++ b/gas/testsuite/gas/riscv/dis-addr-topaddr-zero-32.d @@ -1,8 +1,8 @@ -#as: -march=rv32ic -#source: dis-addr-topaddr.s +#as: -march=rv32i -defsym XLEN=32 +#source: dis-addr-topaddr-zero.s #objdump: -d -.*: file format elf32-(little|big)riscv +.*:[ ]+file format .* Disassembly of section .text: diff --git a/gas/testsuite/gas/riscv/dis-addr-topaddr-64.d b/gas/testsuite/gas/riscv/dis-addr-topaddr-zero-64.d similarity index 58% rename from gas/testsuite/gas/riscv/dis-addr-topaddr-64.d rename to gas/testsuite/gas/riscv/dis-addr-topaddr-zero-64.d index 38f67efdcaf..9b2d170d3d6 100644 --- a/gas/testsuite/gas/riscv/dis-addr-topaddr-64.d +++ b/gas/testsuite/gas/riscv/dis-addr-topaddr-zero-64.d @@ -1,8 +1,8 @@ -#as: -march=rv64ic -defsym rv64=1 -#source: dis-addr-topaddr.s +#as: -march=rv64i -defsym XLEN=64 +#source: dis-addr-topaddr-zero.s #objdump: -d -.*: file format elf64-(little|big)riscv +.*:[ ]+file format .* Disassembly of section .text: diff --git a/gas/testsuite/gas/riscv/dis-addr-topaddr-zero.s b/gas/testsuite/gas/riscv/dis-addr-topaddr-zero.s new file mode 100644 index 00000000000..cdf44b5403b --- /dev/null +++ b/gas/testsuite/gas/riscv/dis-addr-topaddr-zero.s @@ -0,0 +1,11 @@ +.ifge XLEN-64 +.set topbase, 0xffffffff00000000 +.else +.set topbase, 0 +.endif + +.set addr_top, topbase + 0xffffffff # -1 + +target: + # Use address relative to zero + lb t0, -1(zero) diff --git a/gas/testsuite/gas/riscv/dis-addr-topaddr.s b/gas/testsuite/gas/riscv/dis-addr-topaddr.s deleted file mode 100644 index b66587f448d..00000000000 --- a/gas/testsuite/gas/riscv/dis-addr-topaddr.s +++ /dev/null @@ -1,10 +0,0 @@ -.ifdef rv64 -topbase = 0xffffffff00000000 -.else -topbase = 0 -.endif - -.set addr_top, topbase + 0xffffffff # -1 - -target: - lb t0, -1(zero)