CodeGen: generate single libcall for fptrunc -> f16 operations.
authorTim Northover <tnorthover@apple.com>
Thu, 17 Jul 2014 11:12:12 +0000 (11:12 +0000)
committerTim Northover <tnorthover@apple.com>
Thu, 17 Jul 2014 11:12:12 +0000 (11:12 +0000)
commit84ce0a642eb9b759c3d1a80f715223330eadaaed
tree1fb361ceb7f0e46c39bba89f4f0b0b11e2662d68
parent21310448143b3174931530ddf9f993dd93187957
CodeGen: generate single libcall for fptrunc -> f16 operations.

Previously we asserted on this code. Currently compiler-rt doesn't
actually implement any of these new libcalls, but external help is
pretty much the only viable option for LLVM.

I've followed the much more generic "__truncST2" naming, as opposed to
the odd name for f32 -> f16 truncation. This can obviously be changed
later, or overridden by any targets that need to.

llvm-svn: 213252
llvm/include/llvm/CodeGen/RuntimeLibcalls.h
llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
llvm/lib/CodeGen/TargetLoweringBase.cpp
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/cvt16.ll