Skip to content

Fix multilib flags of AArch64 soft nofp (#600)

Victor Campos requested to merge fix-multilib-flags-aarch64-soft-nofp into arm-software

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.

Merge request reports