From: Patrick O'Neill <patrick@rivosinc.com>
To: Tsukasa OI <research_trasio@irq.a4lg.com>,
Jeff Law <jeffreyalaw@gmail.com>
Cc: gcc-patches@gcc.gnu.org, Kito Cheng <kito.cheng@gmail.com>,
Palmer Dabbelt <palmer@dabbelt.com>,
Andrew Waterman <andrew@sifive.com>,
Jim Wilson <jim.wilson.gcc@gmail.com>
Subject: Re: [PATCH v1 1/1] RISC-V: Initial RV64E and LP64E support
Date: Wed, 29 Nov 2023 13:15:27 -0800 [thread overview]
Message-ID: <51968bc0-36a3-4a99-b7da-a788cfc4764e@rivosinc.com> (raw)
In-Reply-To: <e7836aa028e374b3d127fcd4ab01655697db94be.1700821042.git.research_trasio@irq.a4lg.com>
[-- Attachment #1: Type: text/plain, Size: 4593 bytes --]
Hi Tsukasa,
I'm seeing a new regression across all tested riscv targets:
https://github.com/patrick-rivos/gcc-postcommit-ci/issues/224
Regression:
|FAIL: gcc.target/riscv/predef-13.c -O0 (test for excess errors) FAIL:
gcc.target/riscv/predef-13.c -O1 (test for excess errors) FAIL:
gcc.target/riscv/predef-13.c -O2 (test for excess errors) FAIL:
gcc.target/riscv/predef-13.c -O2 -flto -fno-use-linker-plugin
-flto-partition=none (test for excess errors) FAIL:
gcc.target/riscv/predef-13.c -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects (test for excess errors) FAIL:
gcc.target/riscv/predef-13.c -O3 -g (test for excess errors) FAIL:
gcc.target/riscv/predef-13.c -Os (test for excess errors)|
Debug log:
Executing on host: /home/runner/work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/gcc/xgcc -B/home/runner/work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/gcc/ /home/runner/work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/gcc/gcc/testsuite/gcc.target/riscv/predef-13.c -march=rv32gc -mabi=ilp32d -mcmodel=medlow -fdiagnostics-plain-output -O0 -march=rv32e -mabi=ilp32e -mcmodel=medlow -misa-spec=2.2 -S -o predef-13.s (timeout = 600)
spawn -ignore SIGHUP /home/runner/work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/gcc/xgcc -B/home/runner/work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/gcc/ /home/runner/work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/gcc/gcc/testsuite/gcc.target/riscv/predef-13.c -march=rv32gc -mabi=ilp32d -mcmodel=medlow -fdiagnostics-plain-output -O0 -march=rv32e -mabi=ilp32e -mcmodel=medlow -misa-spec=2.2 -S -o predef-13.s
/home/runner/work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/gcc/gcc/testsuite/gcc.target/riscv/predef-13.c: In function 'main':
/home/runner/work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/gcc/gcc/testsuite/gcc.target/riscv/predef-13.c:23:2: error: #error "__riscv_e"
compiler exited with status 1
FAIL: gcc.target/riscv/predef-13.c -O0 (test for excess errors)
Excess errors:
/home/runner/work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/gcc/gcc/testsuite/gcc.target/riscv/predef-13.c:23:2: error: #error "__riscv_e"
I bisected it locally to commit 006e90e13441c3716b40616282b200a0ef689376
(this patch):
> ./bin/riscv64-unknown-linux-gnu-gcc -march=rv32e -mabi=ilp32e -S ../gcc/gcc/testsuite/gcc.target/riscv/predef-13.c
../gcc/gcc/testsuite/gcc.target/riscv/predef-13.c: In function 'main':
../gcc/gcc/testsuite/gcc.target/riscv/predef-13.c:23:2: error: #error "__riscv_e"
23 | #error "__riscv_e"
| ^~~~~
Let me know if you need any additional info/investigation from me.
Thanks,
Patrick
On 11/24/23 02:18, Tsukasa OI wrote:
> From: Tsukasa OI<research_trasio@irq.a4lg.com>
>
> Along with RV32E, RV64E is ratified. Though ILP32E and LP64E ABIs are
> still draft, it's worth supporting it.
>
> gcc/ChangeLog:
>
> * common/config/riscv/riscv-common.cc
> (riscv_ext_version_table): Set version to ratified 2.0.
> (riscv_subset_list::parse_std_ext): Allow RV64E.
> * config.gcc: Parse base ISA 'rv64e' and ABI 'lp64e'.
> * config/riscv/arch-canonicalize: Parse base ISA 'rv64e'.
> * config/riscv/riscv-c.cc (riscv_cpu_cpp_builtins):
> Define different macro per XLEN. Add handling for ABI_LP64E.
> * config/riscv/riscv-d.cc (riscv_d_handle_target_float_abi):
> Add handling for ABI_LP64E.
> * config/riscv/riscv-opts.h (enum riscv_abi_type): Add ABI_LP64E.
> * config/riscv/riscv.cc (riscv_option_override): Enhance error
> handling to support RV64E and LP64E.
> (riscv_conditional_register_usage): Change "RV32E" in a comment
> to "RV32E/RV64E".
> * config/riscv/riscv.h
> (UNITS_PER_FP_ARG): Add handling for ABI_LP64E.
> (STACK_BOUNDARY): Ditto.
> (ABI_STACK_BOUNDARY): Ditto.
> (MAX_ARGS_IN_REGISTERS): Ditto.
> (ABI_SPEC): Add support for "lp64e".
> * config/riscv/riscv.opt: Parse -mabi=lp64e as ABI_LP64E.
> * doc/invoke.texi: Add documentation of the LP64E ABI.
>
> gcc/testsuite/ChangeLog:
>
> * gcc.target/riscv/predef-1.c: Test for __riscv_64e.
> * gcc.target/riscv/predef-2.c: Ditto.
> * gcc.target/riscv/predef-3.c: Ditto.
> * gcc.target/riscv/predef-4.c: Ditto.
> * gcc.target/riscv/predef-5.c: Ditto.
> * gcc.target/riscv/predef-6.c: Ditto.
> * gcc.target/riscv/predef-7.c: Ditto.
> * gcc.target/riscv/predef-8.c: Ditto.
> * gcc.target/riscv/predef-9.c: New test for RV64E and LP64E,
> based on predef-7.c.
> ---
next prev parent reply other threads:[~2023-11-29 21:15 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-22 3:49 [RFC PATCH] " Tsukasa OI
2023-11-24 10:18 ` [PATCH v1 0/1] " Tsukasa OI
2023-11-24 10:18 ` [PATCH v1 1/1] " Tsukasa OI
2023-11-27 6:08 ` Jeff Law
2023-11-29 21:15 ` Patrick O'Neill [this message]
2023-11-29 22:07 ` Tsukasa OI
2023-11-30 1:24 ` Kito Cheng
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=51968bc0-36a3-4a99-b7da-a788cfc4764e@rivosinc.com \
--to=patrick@rivosinc.com \
--cc=andrew@sifive.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=jeffreyalaw@gmail.com \
--cc=jim.wilson.gcc@gmail.com \
--cc=kito.cheng@gmail.com \
--cc=palmer@dabbelt.com \
--cc=research_trasio@irq.a4lg.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).