diff options
author | Evan Cheng <evan.cheng@apple.com> | 2011-02-23 02:24:55 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2011-02-23 02:24:55 +0000 |
commit | e573fb32556ba8430ccd723f71233cdf56b76340 (patch) | |
tree | 5a0d83b9a67c56dad00cf86a21ec6ed04e3bbfd5 /lib/MC/MCDisassembler/EDOperand.cpp | |
parent | d2a50734234a80893ad71da90d9f32032c47e000 (diff) |
More fcopysign correctness and performance fix.
The previous codegen for the slow path (when values are in VFP / NEON
registers) was incorrect if the source is NaN.
The new codegen uses NEON vbsl instruction to copy the sign bit. e.g.
vmov.i32 d1, #0x80000000
vbsl d1, d2, d0
If NEON is not available, it uses integer instructions to copy the sign bit.
rdar://9034702
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126295 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/MC/MCDisassembler/EDOperand.cpp')
0 files changed, 0 insertions, 0 deletions