[AArch64] Implement vector float->double widening and double->float narrowing.
commit9f224c46c477f0ef11f7945a60bb089ed56b01f7
authorjgreenhalgh <jgreenhalgh@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 29 Apr 2013 10:57:59 +0000 (29 10:57 +0000)
committerjgreenhalgh <jgreenhalgh@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 29 Apr 2013 10:57:59 +0000 (29 10:57 +0000)
tree7a4aba12d9808ac260a5ab25b993455a50d9e366
parent865dd64d2614f971fe6ca9426c3656f9b4383da8
[AArch64] Implement vector float->double widening and double->float  narrowing.

gcc/
* config/aarch64/aarch64-simd-builtins.def (vec_unpacks_hi_): New.
(float_truncate_hi_): Likewise.
(float_extend_lo_): Likewise.
(float_truncate_lo_): Likewise.
* config/aarch64/aarch64-simd.md (vec_unpacks_lo_v4sf): New.
(aarch64_float_extend_lo_v2df): Likewise.
(vec_unpacks_hi_v4sf): Likewise.
(aarch64_float_truncate_lo_v2sf): Likewise.
(aarch64_float_truncate_hi_v4sf): Likewise.
(vec_pack_trunc_v2df): Likewise.
(vec_pack_trunc_df): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198400 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/aarch64/aarch64-simd-builtins.def
gcc/config/aarch64/aarch64-simd.md