Steve Ellcey writes:
> Here is an update of this patch. I believe I addressed all of the
> issues you raised. Thanks for the new target.def description, it
> seems much clearer than mine. I did a full build and test on x86 as
> well as aarch64 to make sure that architectures that do not define
Here is an update of this patch. I believe I addressed all of the
issues you raised. Thanks for the new target.def description, it
seems much clearer than mine. I did a full build and test on x86 as
well as aarch64 to make sure that architectures that do not define
TARGET_REMOVE_EXTRA_CALL_PRES
LGTM, just minor stuff.
Steve Ellcey writes:
> +/* Return true if the instruction is a call to a SIMD function, false
> + if it is not a SIMD function or if we do not know anything about
> + the function. */
> +
> +static bool
> +aarch64_simd_call_p (rtx_insn *insn)
> +{
> + rtx symbol;
> +
This is a patch 3 to support the Aarch64 SIMD ABI [1] in GCC.
It defines a new target hook targetm.remove_extra_call_preserved_regs
that takes a rtx_insn and will remove registers from the register
set passed in if we know that this call preserves those registers.
Aarch64 SIMD functions preserve s