[X86] Add ISel patterns to select 'f32_to_f16' and 'f16_to_f32' dag nodes.
authorAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>
Thu, 3 Jul 2014 21:51:06 +0000 (21:51 +0000)
committerAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>
Thu, 3 Jul 2014 21:51:06 +0000 (21:51 +0000)
commita37a2fc81f942ef044ea08430e3405bc23ece5c2
treec155fb41917f7de9b168dd2124af0fd4da76f3e9
parentd0afc22c8b10bfb9be911a87f2d5653e9a6c1507
[X86] Add ISel patterns to select 'f32_to_f16' and 'f16_to_f32' dag nodes.

This patch adds tablegen patterns to select F16C float-to-half-float
conversion instructions from 'f32_to_f16' and 'f16_to_f32' dag nodes.

If the target doesn't have F16C, then 'f32_to_f16' and 'f16_to_f32'
are expanded into library calls.

llvm-svn: 212293
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/lib/Target/X86/X86InstrSSE.td
llvm/test/CodeGen/X86/cvt16.ll [new file with mode: 0644]