Fix multilib flags of AArch64 soft nofp (#600)
This patch fixes the multilib flags required to select the AArch64 soft nofp variants.
The +nofp
and +nosimd
arch extensions are specified in the -march
or -mcpu
command line options. Before this patch, the multilib flags
specified this part as -march=armv8-a+nofp+nosimd
, however this does
not work for any architecture greater than v8, including point releases,
nor does it for any -mcpu
value whose underlying architecture is
greater than v8. In the former case because any point release would lead
to a regular expression mismatch; and in the latter, -mcpu
option
processing introduces extra architecture extensions in the string.
Hence the correct way is to match agains -march=armvX+nofp
and
-march=armvX+nosimd
. These two multilib flags are inserted by our
implementation of multilib.yaml
when +nofp
and +nosimd
are present
anywhere in the -march=
or -mcpu=
values, respectively.