Teach InstCombine to hoist FABS and FNEG through FPTRUNC instructions. The applicati...
authorOwen Anderson <resistor@mac.com>
Thu, 10 Jan 2013 22:06:52 +0000 (22:06 +0000)
committerOwen Anderson <resistor@mac.com>
Thu, 10 Jan 2013 22:06:52 +0000 (22:06 +0000)
commite9d4eba45122892670fe24458bf161e559a799e7
tree1a3f789977dfba5a222c0383fbecd8c1cfdcf7a6
parent244b7a4ba66a8c23b6d0463eafc53b9a3970fc02
Teach InstCombine to hoist FABS and FNEG through FPTRUNC instructions.  The application of these operations commutes with the truncation, so we should prefer to do them in the smallest size we can, to save register space, use smaller constant pool entries, etc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172117 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/InstCombine/InstCombineCasts.cpp
test/Transforms/InstCombine/fpcast.ll