[AArch64] Implement vcvt_{,high_}f16_f32
authorAlan Lawrence <alan.lawrence@arm.com>
Tue, 8 Sep 2015 19:08:34 +0000 (19:08 +0000)
committerAlan Lawrence <alalaw01@gcc.gnu.org>
Tue, 8 Sep 2015 19:08:34 +0000 (19:08 +0000)
commit922f9c255896c0e24e997292cc7518b4b6545e7c
treeb47582d070f61e22a2a8041aa39d0476f99176b6
parent7c3694857570a7ed472cbacbb027521715a26da6
[AArch64] Implement vcvt_{,high_}f16_f32

* config/aarch64/aarch64-simd.md (aarch64_float_truncate_lo_v2sf):
Reparameterize to...
(aarch64_float_truncate_lo_<mode>): ...this, for both V2SF and V4HF.
(aarch64_float_truncate_hi_v4sf): Reparameterize to...
(aarch64_float_truncate_hi_<Vdbl>): ...this, for both V4SF and V8HF.

* config/aarch64/aarch64-simd-builtins.def (float_truncate_hi_): Add
v8hf variant.
(float_truncate_lo_): Use BUILTIN_VDF iterator.

* config/aarch64/arm_neon.h (vcvt_f16_f32, vcvt_high_f16_f32): New.

* config/aarch64/iterators.md (VDF, Vdtype): New.
(VWIDE, Vmwtype): Add cases for V4HF and V2SF.

From-SVN: r227545
gcc/ChangeLog
gcc/config/aarch64/aarch64-simd-builtins.def
gcc/config/aarch64/aarch64-simd.md
gcc/config/aarch64/arm_neon.h
gcc/config/aarch64/iterators.md