Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
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.
|
|
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>
|
|
Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
|
|
Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
|
|
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>
|
|
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>
|
|
Signed-off-by: Pan Li <pan2.li@intel.com>
|
|
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>
|
|
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>
|
|
Document prerequisites on Testing
|
|
Add misaligned memory access for spike.
|
|
Add OR operator for option '--with-extra-multilib-test'
|
|
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
|
|
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
|
|
pyelftools is required for a helper script.
This commit adds basic installation guide to install pyelftools and
removes "automatic installation" of pyelftools from Makefile.
|
|
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.
|
|
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>
|
|
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>
|
|
Inject CPU options to spike run test from elf file
|
|
Signed-off-by: Pan Li <pan2.li@intel.com>
|
|
Remove ESC char for board extra abi argument
|
|
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>
|
|
Signed-off-by: Pan Li <pan2.li@intel.com>
|
|
Improve make report with extra test arguments
|
|
* 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>
|
|
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
|
|
Extend semantic for option '--with-extra-multilib-test'
|
|
Signed-off-by: Pan Li <pan2.li@intel.com>
|
|
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>
|
|
prevent multilib reports from failing with trailing ; in configure
|
|
|
|
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>
|
|
unnecessary 'exclude' section
|
|
This commit bumps glibc from 2.37 to 2.38.
Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
|
|
This commit bumps LLVM from 16.0.5 to 17.0.2.
Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
|
|
This commit bumps newlib from 4.1.0 to 4.3.0.
Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
|
|
This commit bumps QEMU from 8.1.0 to 8.1.1.
Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
|
|
This commit bumps GDB from 12.1 to 13.2.
Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
|
|
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>
|
|
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>
|
|
|
|
use python3 in testsuite-filter ...
|
|
|
|
... just as in march-to-cpu-opt
Signed-off-by: Vineet Gupta <vineetg@rivosinc.com>
|
|
|
|
|
|
|
|
|
|
Bump QEMU to v8.1.0
|