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>
Some testcases in GCC's testsuite check stdout.
Qemu will print a warning if the vector spec is not specified which will cause those testcases to fail.
The warning:
vector version is not specified, use the default value v1.0
Signed-off-by: Patrick O'Neill <patrick@rivosinc.com>
This could help multi-lib testing, but the price is slightly increase
the testing time since it will need to extract ELF attribute from binary
before running qemu.
But I think the cost is acceptable compare to make build system more
complicate, and actually we already use this approach in our internal stuffs
for years.
https://github.com/riscv-collab/riscv-gnu-toolchain/pull/1167 has found
some bug, and I realized the testing of march-to-cpu-opt is...not well,
so spend some time to improve that a little bit, it's not complete testing,
but at least it's a start :P
- We don't set correct qemu option for zdinx/zfinx/zhinx, this patch is
fixing the march-to-cpu-opt, which is a script translate -march string
to qemu options.
I have no idea why, but the installed "sed" wrapper never terminates
on RHEL. If I don't use the wrappen the the tools build fine, so this
just uses the already set autoconf variables to attempt to determine
if the system sed/awk are gsed/gawk and if they are then this avoids
using the wrappers.
There's a few oddities here:
* I have no idea why the sed wrapper fails, as it seems super safe.
* I haven't run into any awk problems, but I figured I'd treat it the
same as it isn't any harder.
* We shouldn't have to support 10 year old distributions.
Hopefully this doesn't break anyone's builds...
Tests for program presence, such as those formerly embedded in the
top-level Makefile for gawk and gsed, are better suited for autoconf.
Note that it is not sufficient to merely export AWK and SED environment
variables, as packages may still directly invoke awk(1) and sed(1) with
non-standard features independent of the autotools framework.
Wrapper scripts therefore remain necessary, although these are now
generated by the configure script to avoid hard-coded paths.
Do not assume the existence of /bin/bash on all systems.