This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] ARM half-precision floating point, 3/8 (target hooks)
> The function argument and return type restrictions, and conversions from
> double to HFmode going via float (with double rounding), are not things
> that it's clear other targets will want; if some C and C++ interfaces to
> half precision are standardised in future it seems likely they'd avoid
> those restrictions; likewise the lack of _Complex __fp16. (Indeed the ARM
> EABI defines how half-precision arguments and return types should work at
> the language-independent ABI level; it's just the C and C++ bindings that
> don't allow them.) If there is future standardisation it would seem
> reasonable for the ARM implementation to align with it, possibly removing
> some hooks.
Thanks for the explanation. Then my only objections is on
convert_to_type and promoted_type, I'm convinced that the others are
indeed best left as target hooks.
BTW, is the EABI implemented for half-precision arguments and return
types? From the 6/8 patch it does not look like and I think we should
sorry for that in the ARM backend; even if that code is currently
unreachable it may not be so in the future, because after Martin's
IPA-SRA pass goes in the middle-end might decide to have a function with
HFmode parameters or return types.
Paolo