aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2024-02-29Remove --enable-gold and simplify include search2024.03.01wangpc1-8/+5
2024-02-29Add LTO support of Clang/LLVMwangpc1-0/+12
We need to build LLVMgold.so and copy it to installation dir. I think it deserves to be default, so I don't add an option to enable this.
2024-02-29Add support to build a host GCC for building the toolchainChristoph Müllner4-10/+67
A significant amount of users of this project are using it for toolchain development. These users need to ensure that their code is warning free before submitting it upstream. Let's support this use case by adding a configure flag '--enable-host-gcc', which does exactly that: * build a host GCC before building other components * setting PATH such that this new GCC is used to build the cross toolchain * enable -Werror for the GCC build This patch was tested on a Fedora 39 machine (GCC 13), with the following modification in a GCC source file: #if __GNUC__ == 13 #error Host compiler in use! #endif This fails when building without the new flag and does not fail when building with latest upstream/master (GCC 14 prerelease). The '--enable-werror-always' was tested with a warning that showed up recently in upstream GCC. Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2024-02-29glibc: Bump version from 2.38 to 2.39Christoph Müllner1-0/+0
Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2024-02-01gdb: Bump version from 13.2 to 14.12024.02.02Christoph Müllner2-1/+1
Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2024-02-01Bump QEMU to 8.2.1Christoph Müllner1-0/+0
Test results (rv64): ``` ========= Summary of gcc testsuite ========= | # of unexpected case / # of unique unexpected case | gcc | g++ | gfortran | rv64gc/ lp64d/ medlow | 0 / 0 | 0 / 0 | 0 / 0 | ``` Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2024-02-01Bump binutils to v2.42 releaseChristoph Müllner2-1/+1
Testing result (rv64): ``` ========= Summary of gcc testsuite ========= | # of unexpected case / # of unique unexpected case | gcc | g++ | gfortran | rv64gc/ lp64d/ medlow | 0 / 0 | 0 / 0 | 0 / 0 | ``` Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2023-12-19Address the comments.2023.12.20Pan Li1-4/+8
Signed-off-by: Pan Li <pan2.li@intel.com>
2023-12-19Fix one bug of spike varch elenPan Li1-1/+11
According to the ISA, the zve32/zve64 xdf decides the elen of the RVV. Thus we should pick up extension instead of xlen for spike varch generation. Signed-off-by: Pan Li <pan2.li@intel.com>
2023-12-13Fix one bug of generate target board2023.12.14Pan Li1-1/+1
The default value of subarray is the length, thus we should take `idx` instead of `idx - 1` here. Signed-off-by: Pan Li <pan2.li@intel.com>
2023-12-11Merge pull request #1381 from a4lg/document-prerequisite-when-testing2023.12.12Kito Cheng2-5/+29
Document prerequisites on Testing
2023-12-11Merge pull request #1387 from yanzhang-dev/yanzhang/bug-fixKito Cheng1-1/+2
Add misaligned memory access for spike.
2023-12-11Merge pull request #1378 from Incarnation-p-lee/masterKito Cheng2-15/+70
Add OR operator for option '--with-extra-multilib-test'
2023-12-08Add misaligned memory access for spike.Yanzhang Wang1-1/+2
The spec does not forbid the misaligned memory access. And the gcc will generate vector load/store to access misaligned memory by default. Currently the QEMU supports this feature, so to support in spike is also make sense. Reference test case: gcc/gcc/testsuite/gcc.dg/vect/vect-align-1.c
2023-11-30Add stage2 and other dependencies for check-glibc-linuxTatsuyuki Ishi1-1/+2
Some glibc tests like tst-unwind-{main,ctor} depends on stage2 artifacts (in particular, GCC runtime libs) to be properly installed. Add stage2 dependencies to avoid these tests from spuriously failing. The test suite also uses the simulator and Deja GNU, both of which were not declared as dependencies, so add them as well. Closes: https://github.com/riscv-collab/riscv-gnu-toolchain/issues/1379
2023-11-30Document prerequisite on testingTsukasa OI2-5/+29
pyelftools is required for a helper script. This commit adds basic installation guide to install pyelftools and removes "automatic installation" of pyelftools from Makefile.
2023-11-28Bump binutils to the true v2.41 releaseTsukasa OI3-12/+1
Due to multiple accidents while releasing GNU Binutils, version 2.41, there are multiple tags that are broken. The true commit representing the version 2.41 of GNU Binutils is the head of `binutils-2_41-release-point` branch. This commit partially reverts commit c7853bf388ff7ce7b67171302956ce78068d2342.
2023-11-28Add OR operator for option '--with-extra-multilib-test'Pan Li2-15/+70
This patch allows you provide the flags in build flags array acts on arch-abi __respectively__, you can use ',' to separate them. For example: `rv64gcv-lp64d:--param=riscv-autovec-lmul=dynamic,--param=riscv-autovec-preference=fixed-vlmax` will be consider as two target boards same as below: ``` riscv-sim/-march=rv64gcv/-mabi=lp64d/-mcmodel=medlow/--param=riscv-autovec-preference=fixed-vlmax riscv-sim/-march=rv64gcv/-mabi=lp64d/-mcmodel=medlow/--param=riscv-autovec-lmul=dynamic ``` However, you can also leverage AND(`:`), OR(`,`) operator together but the OR(`,`) will always have the higher priority. For example: `rv64gcv-lp64d:--param=riscv-autovec-lmul=dynamic:--param=riscv-autovec-preference=fixed-vlmax,--param=riscv-autovec-lmul=m2` will be consider as tow target boars same as below: ``` riscv-sim/-march=rv64gcv/-mabi=lp64d/-mcmodel=medlow/--param=riscv-autovec-lmul=dynamic/--param=riscv-autovec-preference=fixed-vlmax riscv-sim/-march=rv64gcv/-mabi=lp64d/-mcmodel=medlow/--param=riscv-autovec-lmul=m2 ``` Signed-off-by: Pan Li <pan2.li@intel.com>
2023-11-27Update Linux headers from v5.10.5 to v6.6Christoph Müllner469-9488/+37280
This patch imports the Linux kernel from v5.10.5 to v6.6. Important RISC-V specific changes are: * hwprobe support * V support (ptrace and prctl calls) * KVM support There are patches on the glibc list that introduce code which uses the hwprobe interface. Let's update the kernel headers to be ready for these changes. Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2023-11-27Merge pull request #1370 from Incarnation-p-lee/masterKito Cheng5-42/+112
Inject CPU options to spike run test from elf file
2023-11-22Fix CI run failure on rv64gcPan Li2-3/+7
Signed-off-by: Pan Li <pan2.li@intel.com>
2023-11-21Merge pull request #1371 from Incarnation-p-lee/panli/bugfix-for-esc-char2023.11.22Kito Cheng1-3/+3
Remove ESC char for board extra abi argument
2023-11-21Remove ESC char for board extra abi argumentPan Li1-3/+3
As we have quotes surround the argument already, it is unnecessary to ESC `;` to `\;` due to the `;` has special meanings in shell. Signed-off-by: Pan Li <pan2.li@intel.com>
2023-11-21Add scripts to SIM_PATH.Pan Li1-1/+1
Signed-off-by: Pan Li <pan2.li@intel.com>
2023-11-21Merge pull request #1369 from riscv-collab/improve-reportKito Cheng1-4/+9
Improve make report with extra test arguments
2023-11-21Inject CPU options to spike run test from elf filePan Li3-40/+106
* Refactor CPU options for exacting common part between qemu and spike. * Inject CPU options to spike run command line. The below common CPU options are extracted to common part. * xlen * vlen * extensions The above CPU options will be leveraged to build the run arguments for both the qemu and spike, for example. QEMU: qemu-riscv64 -cpu rv64,v=true,vlen=1024,elen=64,vext_spec=v1.0 SPIKE: spike --isa=rv64imafdcv_zicsr_zifencei_zmmul --varch=vlen:1024,elen:64 Signed-off-by: Pan Li <pan2.li@intel.com>
2023-11-20Improve make report with extra test argumentsimprove-reportKito Cheng1-4/+9
Recently we have add the capability to adding extra compilation options for running GCC testsuite, but it seems not handle well on the `make report` part, it will ignore extra compilation options, and then...combine multiple report together. Now it will put in two different line, and the extra compilation options will listed in follwoing line, here is example output here: ========= Summary of gcc testsuite ========= | # of unexpected case / # of unique unexpected case | gcc | g++ | gfortran | rv64gc_zicfilp_zicfiss/ lp64d/ medlow |20350 / 3967 |10158 / 2583 |18374 / 3098 | rv64gc_zicfilp_zicfiss/ lp64d/ medlow | 86 / 19 | 15 / 9 | 51 / 51 | -static
2023-11-19Merge pull request #1368 from Incarnation-p-lee/master2023.11.20Kito Cheng3-3/+92
Extend semantic for option '--with-extra-multilib-test'
2023-11-17Cleanup debug code and allow empty input.Pan Li1-6/+6
Signed-off-by: Pan Li <pan2.li@intel.com>
2023-11-17Extend semantic for option '--with-extra-multilib-test'Pan Li3-3/+92
The `--with-extra-multilib-test` take the format like below for now. "<arch>-<abi>-[code-model][;<arch>-<abi>-[code-model]*" This patch would like to extend the sematic to support additional buil options for each combination. Aka: "<arch>-<abi>-[code-model][:opts]*[;<arch>-<abi>-[code-model][:opts]*]*" opts can be one or more build options splited by ':'. For example as below: * --param=riscv-autovec-lmul=m1 * --param=riscv-autovec-lmul=dynamic:--param=riscv-autovec-preference=fixed-vlmax Thus the full example of the option `--with-extra-multilib-test` will be: `rv64gcv_zvl128b-lp64d:--param=riscv-autovec-lmul=m1;rv64gcv_zvl256b-lp64d:- -param=riscv-autovec-lmul=dynamic:--param=riscv-autovec-preference=fixed-vlmax` Signed-off-by: Pan Li <pan2.li@intel.com>
2023-11-16Merge pull request #1367 from patrick-rivos/update_multilib_generator_splitting2023.11.17Kito Cheng1-1/+1
prevent multilib reports from failing with trailing ; in configure
2023-11-15prevent multilib reports from failing with trailing ; in configureEdwin Lu1-1/+1
2023-10-17Switch from Ubuntu 20.04 LTS to 22.04 LTS for jobs (#1353)2023.11.082023.10.18Tommy Murphy1-3/+3
Switch from Ubuntu 20.04 LTS to 22.04 LTS for build jobs "build", "test-sim" and "build-multilib". Signed-off-by: Tommy Murphy <tommy_murphy@hotmail.com>
2023-10-16Fix for issue #1351 - remove redundant 'linux' from matrix and remove ↵2023.10.17Tommy Murphy1-4/+1
unnecessary 'exclude' section
2023-10-13Bump glibc to 2.38Christoph Müllner2-0/+6
This commit bumps glibc from 2.37 to 2.38. Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2023-10-12Bump LLVM to 17.0.2Christoph Müllner2-1/+1
This commit bumps LLVM from 16.0.5 to 17.0.2. Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2023-10-12Bump newlib to 4.3.0Christoph Müllner1-0/+0
This commit bumps newlib from 4.1.0 to 4.3.0. Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2023-10-11Bump QEMU to 8.1.12023.10.12Christoph Müllner1-0/+0
This commit bumps QEMU from 8.1.0 to 8.1.1. Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2023-10-11Bump GDB to 13.2Christoph Müllner2-1/+1
This commit bumps GDB from 12.1 to 13.2. Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2023-10-11gitmodules: Drop dejagnu tracking branchChristoph Müllner1-1/+1
We recently moved Dejagnu to the upstream master branch's top commit. Therefore there is no need to set a tracking branch to 'dejagnu-1.6.3'. Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2023-10-10Bump GCC to 13.2.0Christoph Müllner11-64/+34
This commit bumps GCC from 12.2.0 to 13.2.0 and adjusts the allowlist accordingly (for glibc and newlib multilib builds). Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2023-10-09Bump riscv-gnu-toolchain spike submodule to latest master commit d1efcdfTommy Murphy1-0/+0
2023-10-05Merge pull request #1338 from vineetgarc/topic-minor-python-fix2023.10.06Patrick O'Neill1-1/+1
use python3 in testsuite-filter ...
2023-10-05Bump binutils to v2.41 releasePatrick O'Neill2-0/+11
2023-10-03use python3 in testsuite-filter ...Vineet Gupta1-1/+1
... just as in march-to-cpu-opt Signed-off-by: Vineet Gupta <vineetg@rivosinc.com>
2023-09-30Bump binutils to v2.41Patrick O'Neill2-8/+0
2023-09-29Upgrade to upload-artifact@v3Patrick O'Neill2-3/+3
2023-09-29Remove deprecated set-output commandPatrick O'Neill2-5/+5
2023-09-29Upgrade to checkout@v4Patrick O'Neill2-6/+6
2023-09-25Merge pull request #1334 from patrick-rivos/bump-qemu-upstream2023.09.27Patrick O'Neill2-0/+17
Bump QEMU to v8.1.0