From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-sender-0.a4lg.com (mail-sender.a4lg.com [153.120.152.154]) by sourceware.org (Postfix) with ESMTPS id 772B03858411 for ; Fri, 24 Dec 2021 03:23:47 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 772B03858411 Received: by mail-sender-0.a4lg.com (Postfix) with ESMTPSA id 1F6B5300089; Fri, 24 Dec 2021 03:23:45 +0000 (UTC) From: Tsukasa OI To: Tsukasa OI , Nelson Chu , Vineet Gupta Cc: binutils@sourceware.org Subject: [PATCH v2 2/3] RISC-V: Unify "access all CSRs" testcases Date: Fri, 24 Dec 2021 12:22:55 +0900 Message-Id: In-Reply-To: References: Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-12.2 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.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: Fri, 24 Dec 2021 03:23:51 -0000 This commit unifies two "access all CSRs" sources using .include directive. gas/ChangeLog: * testsuite/gas/riscv/priv-reg.s: Move main contents to priv-reg-all-access.s. * testsuite/gas/riscv/priv-reg-fail-read-only-01.s: Move main contents to priv-reg-all-access.s. * testsuite/gas/riscv/priv-reg-access-all.s: New: common part of "access all CSRs" testcases. * testsuite/gas/riscv/priv-reg-fail-fext.d: Add necessary assembler option. * testsuite/gas/riscv/priv-reg-fail-read-only-01.d: Likewise. * testsuite/gas/riscv/priv-reg-fail-rv32-only.d: Likewise. * testsuite/gas/riscv/priv-reg-fail-version-1p10.d: Likewise. * testsuite/gas/riscv/priv-reg-fail-version-1p11.d: Likewise. * testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d: Likewise. * testsuite/gas/riscv/priv-reg-fail-zkr.d: Likewise. * testsuite/gas/riscv/priv-reg-version-1p10.d: Likewise. * testsuite/gas/riscv/priv-reg-version-1p11.d: Likewise. * testsuite/gas/riscv/priv-reg-version-1p9p1.d: Likewise. --- gas/testsuite/gas/riscv/priv-reg-access-all.s | 292 +++++++++++++++++ gas/testsuite/gas/riscv/priv-reg-fail-fext.d | 2 +- .../gas/riscv/priv-reg-fail-read-only-01.d | 2 +- .../gas/riscv/priv-reg-fail-read-only-01.s | 267 +--------------- .../gas/riscv/priv-reg-fail-rv32-only.d | 2 +- .../gas/riscv/priv-reg-fail-version-1p10.d | 2 +- .../gas/riscv/priv-reg-fail-version-1p11.d | 2 +- .../gas/riscv/priv-reg-fail-version-1p9p1.d | 2 +- gas/testsuite/gas/riscv/priv-reg-fail-zkr.d | 2 +- .../gas/riscv/priv-reg-version-1p10.d | 2 +- .../gas/riscv/priv-reg-version-1p11.d | 2 +- .../gas/riscv/priv-reg-version-1p9p1.d | 2 +- gas/testsuite/gas/riscv/priv-reg.s | 294 +----------------- 13 files changed, 304 insertions(+), 569 deletions(-) create mode 100644 gas/testsuite/gas/riscv/priv-reg-access-all.s diff --git a/gas/testsuite/gas/riscv/priv-reg-access-all.s b/gas/testsuite/gas/riscv/priv-reg-access-all.s new file mode 100644 index 00000000000..2479b29a976 --- /dev/null +++ b/gas/testsuite/gas/riscv/priv-reg-access-all.s @@ -0,0 +1,292 @@ + # Supported the current priv spec 1.11. + csr ustatus + csr uie + csr utvec + + csr uscratch + csr uepc + csr ucause + csr utval # Added in 1.10 + csr uip + + csr cycle + csr time + csr instret + csr hpmcounter3 + csr hpmcounter4 + csr hpmcounter5 + csr hpmcounter6 + csr hpmcounter7 + csr hpmcounter8 + csr hpmcounter9 + csr hpmcounter10 + csr hpmcounter11 + csr hpmcounter12 + csr hpmcounter13 + csr hpmcounter14 + csr hpmcounter15 + csr hpmcounter16 + csr hpmcounter17 + csr hpmcounter18 + csr hpmcounter19 + csr hpmcounter20 + csr hpmcounter21 + csr hpmcounter22 + csr hpmcounter23 + csr hpmcounter24 + csr hpmcounter25 + csr hpmcounter26 + csr hpmcounter27 + csr hpmcounter28 + csr hpmcounter29 + csr hpmcounter30 + csr hpmcounter31 + csr cycleh + csr timeh + csr instreth + csr hpmcounter3h + csr hpmcounter4h + csr hpmcounter5h + csr hpmcounter6h + csr hpmcounter7h + csr hpmcounter8h + csr hpmcounter9h + csr hpmcounter10h + csr hpmcounter11h + csr hpmcounter12h + csr hpmcounter13h + csr hpmcounter14h + csr hpmcounter15h + csr hpmcounter16h + csr hpmcounter17h + csr hpmcounter18h + csr hpmcounter19h + csr hpmcounter20h + csr hpmcounter21h + csr hpmcounter22h + csr hpmcounter23h + csr hpmcounter24h + csr hpmcounter25h + csr hpmcounter26h + csr hpmcounter27h + csr hpmcounter28h + csr hpmcounter29h + csr hpmcounter30h + csr hpmcounter31h + + csr sstatus + csr sedeleg + csr sideleg + csr sie + csr stvec + csr scounteren # Added in 1.10 + + csr sscratch + csr sepc + csr scause + csr stval # Added in 1.10 + csr sip + + csr satp # Added in 1.10 + + csr mvendorid + csr marchid + csr mimpid + csr mhartid + + csr mstatus + csr misa # 0xf10 in 1.9, but changed to 0x301 since 1.9.1. + csr medeleg + csr mideleg + csr mie + csr mtvec + csr mcounteren # Added in 1.10 + + csr mscratch + csr mepc + csr mcause + csr mtval # Added in 1.10 + csr mip + + csr pmpcfg0 # Added in 1.10 + csr pmpcfg1 # Added in 1.10 + csr pmpcfg2 # Added in 1.10 + csr pmpcfg3 # Added in 1.10 + csr pmpaddr0 # Added in 1.10 + csr pmpaddr1 # Added in 1.10 + csr pmpaddr2 # Added in 1.10 + csr pmpaddr3 # Added in 1.10 + csr pmpaddr4 # Added in 1.10 + csr pmpaddr5 # Added in 1.10 + csr pmpaddr6 # Added in 1.10 + csr pmpaddr7 # Added in 1.10 + csr pmpaddr8 # Added in 1.10 + csr pmpaddr9 # Added in 1.10 + csr pmpaddr10 # Added in 1.10 + csr pmpaddr11 # Added in 1.10 + csr pmpaddr12 # Added in 1.10 + csr pmpaddr13 # Added in 1.10 + csr pmpaddr14 # Added in 1.10 + csr pmpaddr15 # Added in 1.10 + + csr mcycle + csr minstret + csr mhpmcounter3 + csr mhpmcounter4 + csr mhpmcounter5 + csr mhpmcounter6 + csr mhpmcounter7 + csr mhpmcounter8 + csr mhpmcounter9 + csr mhpmcounter10 + csr mhpmcounter11 + csr mhpmcounter12 + csr mhpmcounter13 + csr mhpmcounter14 + csr mhpmcounter15 + csr mhpmcounter16 + csr mhpmcounter17 + csr mhpmcounter18 + csr mhpmcounter19 + csr mhpmcounter20 + csr mhpmcounter21 + csr mhpmcounter22 + csr mhpmcounter23 + csr mhpmcounter24 + csr mhpmcounter25 + csr mhpmcounter26 + csr mhpmcounter27 + csr mhpmcounter28 + csr mhpmcounter29 + csr mhpmcounter30 + csr mhpmcounter31 + csr mcycleh + csr minstreth + csr mhpmcounter3h + csr mhpmcounter4h + csr mhpmcounter5h + csr mhpmcounter6h + csr mhpmcounter7h + csr mhpmcounter8h + csr mhpmcounter9h + csr mhpmcounter10h + csr mhpmcounter11h + csr mhpmcounter12h + csr mhpmcounter13h + csr mhpmcounter14h + csr mhpmcounter15h + csr mhpmcounter16h + csr mhpmcounter17h + csr mhpmcounter18h + csr mhpmcounter19h + csr mhpmcounter20h + csr mhpmcounter21h + csr mhpmcounter22h + csr mhpmcounter23h + csr mhpmcounter24h + csr mhpmcounter25h + csr mhpmcounter26h + csr mhpmcounter27h + csr mhpmcounter28h + csr mhpmcounter29h + csr mhpmcounter30h + csr mhpmcounter31h + + csr mcountinhibit # Added in 1.11 + csr mhpmevent3 + csr mhpmevent4 + csr mhpmevent5 + csr mhpmevent6 + csr mhpmevent7 + csr mhpmevent8 + csr mhpmevent9 + csr mhpmevent10 + csr mhpmevent11 + csr mhpmevent12 + csr mhpmevent13 + csr mhpmevent14 + csr mhpmevent15 + csr mhpmevent16 + csr mhpmevent17 + csr mhpmevent18 + csr mhpmevent19 + csr mhpmevent20 + csr mhpmevent21 + csr mhpmevent22 + csr mhpmevent23 + csr mhpmevent24 + csr mhpmevent25 + csr mhpmevent26 + csr mhpmevent27 + csr mhpmevent28 + csr mhpmevent29 + csr mhpmevent30 + csr mhpmevent31 + + # Supported in previous priv spec, but dropped now. + csr ubadaddr # 0x043 in 1.9.1, but the value is utval since 1.10 + csr sbadaddr # 0x143 in 1.9.1, but the value is stval since 1.10 + csr sptbr # 0x180 in 1.9.1, but the value is satp since 1.10 + csr mbadaddr # 0x343 in 1.9.1, but the value is mtval since 1.10 + csr mucounteren # 0x320 in 1.9.1, dropped in 1.10, but the value is mcountinhibit since 1.11 + + csr hstatus # 0x200, dropped in 1.10 + csr hedeleg # 0x202, dropped in 1.10 + csr hideleg # 0x203, dropped in 1.10 + csr hie # 0x204, dropped in 1.10 + csr htvec # 0x205, dropped in 1.10 + csr hscratch # 0x240, dropped in 1.10 + csr hepc # 0x241, dropped in 1.10 + csr hcause # 0x242, dropped in 1.10 + csr hbadaddr # 0x243, dropped in 1.10 + csr hip # 0x244, dropped in 1.10 + csr mbase # 0x380, dropped in 1.10 + csr mbound # 0x381, dropped in 1.10 + csr mibase # 0x382, dropped in 1.10 + csr mibound # 0x383, dropped in 1.10 + csr mdbase # 0x384, dropped in 1.10 + csr mdbound # 0x385, dropped in 1.10 + csr mscounteren # 0x321, dropped in 1.10 + csr mhcounteren # 0x322, dropped in 1.10 + + # Unprivileged CSR which are not controlled by privilege spec. + + # Float + csr fflags + csr frm + csr fcsr + + # Core debug + csr dcsr + csr dpc + csr dscratch0 + csr dscratch1 + csr dscratch # 0x7b2, alias to dscratch0 + + # Trigger debug + csr tselect + csr tdata1 + csr tdata2 + csr tdata3 + csr tinfo + csr tcontrol + csr mcontext + csr scontext + csr mcontrol # 0x7a1, alias to tdata1 + csr icount # 0x7a1, alias to tdata1 + csr itrigger # 0x7a1, alias to tdata1 + csr etrigger # 0x7a1, alias to tdata1 + csr textra32 # 0x7a3, alias to tdata3 + csr textra64 # 0x7a3, alias to tdata3 + + # Scalar crypto + csr seed # 0x015, Entropy Source + + # Vector + csr vstart + csr vxsat + csr vxrm + csr vcsr + csr vl + csr vtype + csr vlenb diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-fext.d b/gas/testsuite/gas/riscv/priv-reg-fail-fext.d index da535663693..cce806e8705 100644 --- a/gas/testsuite/gas/riscv/priv-reg-fail-fext.d +++ b/gas/testsuite/gas/riscv/priv-reg-fail-fext.d @@ -1,3 +1,3 @@ -#as: -march=rv32i -mcsr-check +#as: -I$srcdir/$subdir -march=rv32i -mcsr-check #source: priv-reg.s #warning_output: priv-reg-fail-fext.l diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d b/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d index ae190c053c6..1134c4c7955 100644 --- a/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d +++ b/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.d @@ -1,3 +1,3 @@ -#as: -march=rv32if -mcsr-check +#as: -I$srcdir/$subdir -march=rv32if -mcsr-check #source: priv-reg-fail-read-only-01.s #warning_output: priv-reg-fail-read-only-01.l diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.s b/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.s index af0fc4e14a4..fc996f6159f 100644 --- a/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.s +++ b/gas/testsuite/gas/riscv/priv-reg-fail-read-only-01.s @@ -1,269 +1,4 @@ .macro csr val csrw \val, a1 .endm - - # Supported the current priv spec 1.11. - csr ustatus - csr uie - csr utvec - - csr uscratch - csr uepc - csr ucause - csr utval # Added in 1.10 - csr uip - - csr fflags - csr frm - csr fcsr - - csr cycle - csr time - csr instret - csr hpmcounter3 - csr hpmcounter4 - csr hpmcounter5 - csr hpmcounter6 - csr hpmcounter7 - csr hpmcounter8 - csr hpmcounter9 - csr hpmcounter10 - csr hpmcounter11 - csr hpmcounter12 - csr hpmcounter13 - csr hpmcounter14 - csr hpmcounter15 - csr hpmcounter16 - csr hpmcounter17 - csr hpmcounter18 - csr hpmcounter19 - csr hpmcounter20 - csr hpmcounter21 - csr hpmcounter22 - csr hpmcounter23 - csr hpmcounter24 - csr hpmcounter25 - csr hpmcounter26 - csr hpmcounter27 - csr hpmcounter28 - csr hpmcounter29 - csr hpmcounter30 - csr hpmcounter31 - csr cycleh - csr timeh - csr instreth - csr hpmcounter3h - csr hpmcounter4h - csr hpmcounter5h - csr hpmcounter6h - csr hpmcounter7h - csr hpmcounter8h - csr hpmcounter9h - csr hpmcounter10h - csr hpmcounter11h - csr hpmcounter12h - csr hpmcounter13h - csr hpmcounter14h - csr hpmcounter15h - csr hpmcounter16h - csr hpmcounter17h - csr hpmcounter18h - csr hpmcounter19h - csr hpmcounter20h - csr hpmcounter21h - csr hpmcounter22h - csr hpmcounter23h - csr hpmcounter24h - csr hpmcounter25h - csr hpmcounter26h - csr hpmcounter27h - csr hpmcounter28h - csr hpmcounter29h - csr hpmcounter30h - csr hpmcounter31h - - csr sstatus - csr sedeleg - csr sideleg - csr sie - csr stvec - csr scounteren # Added in 1.10 - - csr sscratch - csr sepc - csr scause - csr stval # Added in 1.10 - csr sip - - csr satp # Added in 1.10 - - csr mvendorid - csr marchid - csr mimpid - csr mhartid - - csr mstatus - csr misa # 0xf10 in 1.9, but changed to 0x301 since 1.9.1. - csr medeleg - csr mideleg - csr mie - csr mtvec - csr mcounteren # Added in 1.10 - - csr mscratch - csr mepc - csr mcause - csr mtval # Added in 1.10 - csr mip - - csr pmpcfg0 # Added in 1.10 - csr pmpcfg1 # Added in 1.10 - csr pmpcfg2 # Added in 1.10 - csr pmpcfg3 # Added in 1.10 - csr pmpaddr0 # Added in 1.10 - csr pmpaddr1 # Added in 1.10 - csr pmpaddr2 # Added in 1.10 - csr pmpaddr3 # Added in 1.10 - csr pmpaddr4 # Added in 1.10 - csr pmpaddr5 # Added in 1.10 - csr pmpaddr6 # Added in 1.10 - csr pmpaddr7 # Added in 1.10 - csr pmpaddr8 # Added in 1.10 - csr pmpaddr9 # Added in 1.10 - csr pmpaddr10 # Added in 1.10 - csr pmpaddr11 # Added in 1.10 - csr pmpaddr12 # Added in 1.10 - csr pmpaddr13 # Added in 1.10 - csr pmpaddr14 # Added in 1.10 - csr pmpaddr15 # Added in 1.10 - - csr mcycle - csr minstret - csr mhpmcounter3 - csr mhpmcounter4 - csr mhpmcounter5 - csr mhpmcounter6 - csr mhpmcounter7 - csr mhpmcounter8 - csr mhpmcounter9 - csr mhpmcounter10 - csr mhpmcounter11 - csr mhpmcounter12 - csr mhpmcounter13 - csr mhpmcounter14 - csr mhpmcounter15 - csr mhpmcounter16 - csr mhpmcounter17 - csr mhpmcounter18 - csr mhpmcounter19 - csr mhpmcounter20 - csr mhpmcounter21 - csr mhpmcounter22 - csr mhpmcounter23 - csr mhpmcounter24 - csr mhpmcounter25 - csr mhpmcounter26 - csr mhpmcounter27 - csr mhpmcounter28 - csr mhpmcounter29 - csr mhpmcounter30 - csr mhpmcounter31 - csr mcycleh - csr minstreth - csr mhpmcounter3h - csr mhpmcounter4h - csr mhpmcounter5h - csr mhpmcounter6h - csr mhpmcounter7h - csr mhpmcounter8h - csr mhpmcounter9h - csr mhpmcounter10h - csr mhpmcounter11h - csr mhpmcounter12h - csr mhpmcounter13h - csr mhpmcounter14h - csr mhpmcounter15h - csr mhpmcounter16h - csr mhpmcounter17h - csr mhpmcounter18h - csr mhpmcounter19h - csr mhpmcounter20h - csr mhpmcounter21h - csr mhpmcounter22h - csr mhpmcounter23h - csr mhpmcounter24h - csr mhpmcounter25h - csr mhpmcounter26h - csr mhpmcounter27h - csr mhpmcounter28h - csr mhpmcounter29h - csr mhpmcounter30h - csr mhpmcounter31h - - csr mcountinhibit # Added in 1.11 - csr mhpmevent3 - csr mhpmevent4 - csr mhpmevent5 - csr mhpmevent6 - csr mhpmevent7 - csr mhpmevent8 - csr mhpmevent9 - csr mhpmevent10 - csr mhpmevent11 - csr mhpmevent12 - csr mhpmevent13 - csr mhpmevent14 - csr mhpmevent15 - csr mhpmevent16 - csr mhpmevent17 - csr mhpmevent18 - csr mhpmevent19 - csr mhpmevent20 - csr mhpmevent21 - csr mhpmevent22 - csr mhpmevent23 - csr mhpmevent24 - csr mhpmevent25 - csr mhpmevent26 - csr mhpmevent27 - csr mhpmevent28 - csr mhpmevent29 - csr mhpmevent30 - csr mhpmevent31 - - csr tselect - csr tdata1 - csr tdata2 - csr tdata3 - - csr dcsr - csr dpc - csr dscratch0 # Added in 1.11 - csr dscratch1 # Added in 1.11 - - # Supported in previous priv spec, but dropped now. - csr ubadaddr # 0x043 in 1.9.1, but the value is utval since 1.10 - csr sbadaddr # 0x143 in 1.9.1, but the value is stval since 1.10 - csr sptbr # 0x180 in 1.9.1, but the value is satp since 1.10 - csr mbadaddr # 0x343 in 1.9.1, but the value is mtval since 1.10 - csr mucounteren # 0x320 in 1.9.1, dropped in 1.10, but the value is mcountinhibit since 1.11 - csr dscratch # 0x7b2 in 1.10, but the value is dscratch0 since 1.11 - - csr hstatus # 0x200, dropped in 1.10 - csr hedeleg # 0x202, dropped in 1.10 - csr hideleg # 0x203, dropped in 1.10 - csr hie # 0x204, dropped in 1.10 - csr htvec # 0x205, dropped in 1.10 - csr hscratch # 0x240, dropped in 1.10 - csr hepc # 0x241, dropped in 1.10 - csr hcause # 0x242, dropped in 1.10 - csr hbadaddr # 0x243, dropped in 1.10 - csr hip # 0x244, dropped in 1.10 - csr mbase # 0x380, dropped in 1.10 - csr mbound # 0x381, dropped in 1.10 - csr mibase # 0x382, dropped in 1.10 - csr mibound # 0x383, dropped in 1.10 - csr mdbase # 0x384, dropped in 1.10 - csr mdbound # 0x385, dropped in 1.10 - csr mscounteren # 0x321, dropped in 1.10 - csr mhcounteren # 0x322, dropped in 1.10 + .include "priv-reg-access-all.s" diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d b/gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d index d71b2615c5f..a1f27ec0622 100644 --- a/gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d +++ b/gas/testsuite/gas/riscv/priv-reg-fail-rv32-only.d @@ -1,3 +1,3 @@ -#as: -march=rv64if -mcsr-check +#as: -I$srcdir/$subdir -march=rv64if -mcsr-check #source: priv-reg.s #warning_output: priv-reg-fail-rv32-only.l diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d b/gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d index 3e1836a64a9..aa95d3396f4 100644 --- a/gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d +++ b/gas/testsuite/gas/riscv/priv-reg-fail-version-1p10.d @@ -1,4 +1,4 @@ -#as: -march=rv32ifv_zkr -mcsr-check -mpriv-spec=1.10 -march-attr +#as: -I$srcdir/$subdir -march=rv32ifv_zkr -mcsr-check -mpriv-spec=1.10 -march-attr #source: priv-reg.s #warning_output: priv-reg-fail-version-1p10.l #readelf: -A diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d b/gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d index e1705e7cafc..d57b5423485 100644 --- a/gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d +++ b/gas/testsuite/gas/riscv/priv-reg-fail-version-1p11.d @@ -1,4 +1,4 @@ -#as: -march=rv32ifv_zkr -mcsr-check -mpriv-spec=1.11 -march-attr +#as: -I$srcdir/$subdir -march=rv32ifv_zkr -mcsr-check -mpriv-spec=1.11 -march-attr #source: priv-reg.s #warning_output: priv-reg-fail-version-1p11.l #readelf: -A diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d b/gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d index 56ade5932c9..d03754cbcc3 100644 --- a/gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d +++ b/gas/testsuite/gas/riscv/priv-reg-fail-version-1p9p1.d @@ -1,4 +1,4 @@ -#as: -march=rv32ifv_zkr -mcsr-check -mpriv-spec=1.9.1 -march-attr +#as: -I$srcdir/$subdir -march=rv32ifv_zkr -mcsr-check -mpriv-spec=1.9.1 -march-attr #source: priv-reg.s #warning_output: priv-reg-fail-version-1p9p1.l #readelf: -A diff --git a/gas/testsuite/gas/riscv/priv-reg-fail-zkr.d b/gas/testsuite/gas/riscv/priv-reg-fail-zkr.d index d65d5104099..e5c9c51713a 100644 --- a/gas/testsuite/gas/riscv/priv-reg-fail-zkr.d +++ b/gas/testsuite/gas/riscv/priv-reg-fail-zkr.d @@ -1,3 +1,3 @@ -#as: -march=rv32if -mcsr-check +#as: -I$srcdir/$subdir -march=rv32if -mcsr-check #source: priv-reg.s #warning_output: priv-reg-fail-zkr.l diff --git a/gas/testsuite/gas/riscv/priv-reg-version-1p10.d b/gas/testsuite/gas/riscv/priv-reg-version-1p10.d index 928c9c089ba..81e338d5747 100644 --- a/gas/testsuite/gas/riscv/priv-reg-version-1p10.d +++ b/gas/testsuite/gas/riscv/priv-reg-version-1p10.d @@ -1,4 +1,4 @@ -#as: -march=rv32if -mpriv-spec=1.10 +#as: -I$srcdir/$subdir -march=rv32if -mpriv-spec=1.10 #source: priv-reg.s #objdump: -dr -Mpriv-spec=1.10 diff --git a/gas/testsuite/gas/riscv/priv-reg-version-1p11.d b/gas/testsuite/gas/riscv/priv-reg-version-1p11.d index a283049d7b3..1925ba09235 100644 --- a/gas/testsuite/gas/riscv/priv-reg-version-1p11.d +++ b/gas/testsuite/gas/riscv/priv-reg-version-1p11.d @@ -1,4 +1,4 @@ -#as: -march=rv32if -mpriv-spec=1.11 +#as: -I$srcdir/$subdir -march=rv32if -mpriv-spec=1.11 #source: priv-reg.s #objdump: -dr -Mpriv-spec=1.11 diff --git a/gas/testsuite/gas/riscv/priv-reg-version-1p9p1.d b/gas/testsuite/gas/riscv/priv-reg-version-1p9p1.d index d9b86ed92ab..d02c0e71893 100644 --- a/gas/testsuite/gas/riscv/priv-reg-version-1p9p1.d +++ b/gas/testsuite/gas/riscv/priv-reg-version-1p9p1.d @@ -1,4 +1,4 @@ -#as: -march=rv32if -mpriv-spec=1.9.1 +#as: -I$srcdir/$subdir -march=rv32if -mpriv-spec=1.9.1 #source: priv-reg.s #objdump: -dr -Mpriv-spec=1.9.1 diff --git a/gas/testsuite/gas/riscv/priv-reg.s b/gas/testsuite/gas/riscv/priv-reg.s index 5cf3ebc1b3e..74ff4a48f83 100644 --- a/gas/testsuite/gas/riscv/priv-reg.s +++ b/gas/testsuite/gas/riscv/priv-reg.s @@ -1,296 +1,4 @@ .macro csr val csrr a0,\val .endm - - # Supported the current priv spec 1.11. - csr ustatus - csr uie - csr utvec - - csr uscratch - csr uepc - csr ucause - csr utval # Added in 1.10 - csr uip - - csr cycle - csr time - csr instret - csr hpmcounter3 - csr hpmcounter4 - csr hpmcounter5 - csr hpmcounter6 - csr hpmcounter7 - csr hpmcounter8 - csr hpmcounter9 - csr hpmcounter10 - csr hpmcounter11 - csr hpmcounter12 - csr hpmcounter13 - csr hpmcounter14 - csr hpmcounter15 - csr hpmcounter16 - csr hpmcounter17 - csr hpmcounter18 - csr hpmcounter19 - csr hpmcounter20 - csr hpmcounter21 - csr hpmcounter22 - csr hpmcounter23 - csr hpmcounter24 - csr hpmcounter25 - csr hpmcounter26 - csr hpmcounter27 - csr hpmcounter28 - csr hpmcounter29 - csr hpmcounter30 - csr hpmcounter31 - csr cycleh - csr timeh - csr instreth - csr hpmcounter3h - csr hpmcounter4h - csr hpmcounter5h - csr hpmcounter6h - csr hpmcounter7h - csr hpmcounter8h - csr hpmcounter9h - csr hpmcounter10h - csr hpmcounter11h - csr hpmcounter12h - csr hpmcounter13h - csr hpmcounter14h - csr hpmcounter15h - csr hpmcounter16h - csr hpmcounter17h - csr hpmcounter18h - csr hpmcounter19h - csr hpmcounter20h - csr hpmcounter21h - csr hpmcounter22h - csr hpmcounter23h - csr hpmcounter24h - csr hpmcounter25h - csr hpmcounter26h - csr hpmcounter27h - csr hpmcounter28h - csr hpmcounter29h - csr hpmcounter30h - csr hpmcounter31h - - csr sstatus - csr sedeleg - csr sideleg - csr sie - csr stvec - csr scounteren # Added in 1.10 - - csr sscratch - csr sepc - csr scause - csr stval # Added in 1.10 - csr sip - - csr satp # Added in 1.10 - - csr mvendorid - csr marchid - csr mimpid - csr mhartid - - csr mstatus - csr misa # 0xf10 in 1.9, but changed to 0x301 since 1.9.1. - csr medeleg - csr mideleg - csr mie - csr mtvec - csr mcounteren # Added in 1.10 - - csr mscratch - csr mepc - csr mcause - csr mtval # Added in 1.10 - csr mip - - csr pmpcfg0 # Added in 1.10 - csr pmpcfg1 # Added in 1.10 - csr pmpcfg2 # Added in 1.10 - csr pmpcfg3 # Added in 1.10 - csr pmpaddr0 # Added in 1.10 - csr pmpaddr1 # Added in 1.10 - csr pmpaddr2 # Added in 1.10 - csr pmpaddr3 # Added in 1.10 - csr pmpaddr4 # Added in 1.10 - csr pmpaddr5 # Added in 1.10 - csr pmpaddr6 # Added in 1.10 - csr pmpaddr7 # Added in 1.10 - csr pmpaddr8 # Added in 1.10 - csr pmpaddr9 # Added in 1.10 - csr pmpaddr10 # Added in 1.10 - csr pmpaddr11 # Added in 1.10 - csr pmpaddr12 # Added in 1.10 - csr pmpaddr13 # Added in 1.10 - csr pmpaddr14 # Added in 1.10 - csr pmpaddr15 # Added in 1.10 - - csr mcycle - csr minstret - csr mhpmcounter3 - csr mhpmcounter4 - csr mhpmcounter5 - csr mhpmcounter6 - csr mhpmcounter7 - csr mhpmcounter8 - csr mhpmcounter9 - csr mhpmcounter10 - csr mhpmcounter11 - csr mhpmcounter12 - csr mhpmcounter13 - csr mhpmcounter14 - csr mhpmcounter15 - csr mhpmcounter16 - csr mhpmcounter17 - csr mhpmcounter18 - csr mhpmcounter19 - csr mhpmcounter20 - csr mhpmcounter21 - csr mhpmcounter22 - csr mhpmcounter23 - csr mhpmcounter24 - csr mhpmcounter25 - csr mhpmcounter26 - csr mhpmcounter27 - csr mhpmcounter28 - csr mhpmcounter29 - csr mhpmcounter30 - csr mhpmcounter31 - csr mcycleh - csr minstreth - csr mhpmcounter3h - csr mhpmcounter4h - csr mhpmcounter5h - csr mhpmcounter6h - csr mhpmcounter7h - csr mhpmcounter8h - csr mhpmcounter9h - csr mhpmcounter10h - csr mhpmcounter11h - csr mhpmcounter12h - csr mhpmcounter13h - csr mhpmcounter14h - csr mhpmcounter15h - csr mhpmcounter16h - csr mhpmcounter17h - csr mhpmcounter18h - csr mhpmcounter19h - csr mhpmcounter20h - csr mhpmcounter21h - csr mhpmcounter22h - csr mhpmcounter23h - csr mhpmcounter24h - csr mhpmcounter25h - csr mhpmcounter26h - csr mhpmcounter27h - csr mhpmcounter28h - csr mhpmcounter29h - csr mhpmcounter30h - csr mhpmcounter31h - - csr mcountinhibit # Added in 1.11 - csr mhpmevent3 - csr mhpmevent4 - csr mhpmevent5 - csr mhpmevent6 - csr mhpmevent7 - csr mhpmevent8 - csr mhpmevent9 - csr mhpmevent10 - csr mhpmevent11 - csr mhpmevent12 - csr mhpmevent13 - csr mhpmevent14 - csr mhpmevent15 - csr mhpmevent16 - csr mhpmevent17 - csr mhpmevent18 - csr mhpmevent19 - csr mhpmevent20 - csr mhpmevent21 - csr mhpmevent22 - csr mhpmevent23 - csr mhpmevent24 - csr mhpmevent25 - csr mhpmevent26 - csr mhpmevent27 - csr mhpmevent28 - csr mhpmevent29 - csr mhpmevent30 - csr mhpmevent31 - - # Supported in previous priv spec, but dropped now. - csr ubadaddr # 0x043 in 1.9.1, but the value is utval since 1.10 - csr sbadaddr # 0x143 in 1.9.1, but the value is stval since 1.10 - csr sptbr # 0x180 in 1.9.1, but the value is satp since 1.10 - csr mbadaddr # 0x343 in 1.9.1, but the value is mtval since 1.10 - csr mucounteren # 0x320 in 1.9.1, dropped in 1.10, but the value is mcountinhibit since 1.11 - - csr hstatus # 0x200, dropped in 1.10 - csr hedeleg # 0x202, dropped in 1.10 - csr hideleg # 0x203, dropped in 1.10 - csr hie # 0x204, dropped in 1.10 - csr htvec # 0x205, dropped in 1.10 - csr hscratch # 0x240, dropped in 1.10 - csr hepc # 0x241, dropped in 1.10 - csr hcause # 0x242, dropped in 1.10 - csr hbadaddr # 0x243, dropped in 1.10 - csr hip # 0x244, dropped in 1.10 - csr mbase # 0x380, dropped in 1.10 - csr mbound # 0x381, dropped in 1.10 - csr mibase # 0x382, dropped in 1.10 - csr mibound # 0x383, dropped in 1.10 - csr mdbase # 0x384, dropped in 1.10 - csr mdbound # 0x385, dropped in 1.10 - csr mscounteren # 0x321, dropped in 1.10 - csr mhcounteren # 0x322, dropped in 1.10 - - # Unprivileged CSR which are not controlled by privilege spec. - - # Float - csr fflags - csr frm - csr fcsr - - # Core debug - csr dcsr - csr dpc - csr dscratch0 - csr dscratch1 - csr dscratch # 0x7b2, alias to dscratch0 - - # Trigger debug - csr tselect - csr tdata1 - csr tdata2 - csr tdata3 - csr tinfo - csr tcontrol - csr mcontext - csr scontext - csr mcontrol # 0x7a1, alias to tdata1 - csr icount # 0x7a1, alias to tdata1 - csr itrigger # 0x7a1, alias to tdata1 - csr etrigger # 0x7a1, alias to tdata1 - csr textra32 # 0x7a3, alias to tdata3 - csr textra64 # 0x7a3, alias to tdata3 - - # Scalar crypto - csr seed # 0x015, Entropy Source - - # Vector - csr vstart - csr vxsat - csr vxrm - csr vcsr - csr vl - csr vtype - csr vlenb + .include "priv-reg-access-all.s" -- 2.32.0