[X86][FastIsel] Teach how to select float-half conversion intrinsics.
authorAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>
Fri, 20 Feb 2015 19:37:14 +0000 (19:37 +0000)
committerAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>
Fri, 20 Feb 2015 19:37:14 +0000 (19:37 +0000)
commit3583d2301879d50e3ed018f4dc48a03b7bbbb205
treeb169d77fa55274d211f91f890fdddb04737b8012
parent936cf6a3ae529d6ebfed0579548cdc1ac3e71009
[X86][FastIsel] Teach how to select float-half conversion intrinsics.

This patch teaches X86FastISel how to select intrinsic 'convert_from_fp16' and
intrinsic 'convert_to_fp16'.
If the target has F16C, we can select VCVTPS2PHrr for a float-half conversion,
and VCVTPH2PSrr for a half-float conversion.

Differential Revision: http://reviews.llvm.org/D7673

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@230043 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86FastISel.cpp
test/CodeGen/X86/fast-isel-double-half-convertion.ll [new file with mode: 0644]
test/CodeGen/X86/fast-isel-float-half-convertion.ll [new file with mode: 0644]