diff options
author | Roger Ferrer Ibanez <roger.ferreribanez@arm.com> | 2016-11-08 13:34:41 +0000 |
---|---|---|
committer | Roger Ferrer Ibanez <roger.ferreribanez@arm.com> | 2016-11-08 13:34:41 +0000 |
commit | 80c0f33c2994356dd0c1156a68c27df36896ce26 (patch) | |
tree | 3bcd52d4e8df6e2e047e54b4807eedd02c4e887b /llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp | |
parent | e7cc54058dc182cab44cc0c77452f20b03bc4ce5 (diff) | |
download | llvm-80c0f33c2994356dd0c1156a68c27df36896ce26.zip llvm-80c0f33c2994356dd0c1156a68c27df36896ce26.tar.gz llvm-80c0f33c2994356dd0c1156a68c27df36896ce26.tar.bz2 |
[AArch64] Fix incorrect CSEL node created
Under -enable-unsafe-fp-math, SELECT_CC lowering in AArch64
transforms floating point comparisons of the form "a == 0.0 ? 0.0 : x" to
"a == 0.0 ? a : x". But it incorrectly assumes that 'x' and 'a' have
the same type which can lead to a wrong CSEL node that crashes later
due to nonsensical copies.
Differential Revision: https://reviews.llvm.org/D26394
llvm-svn: 286231
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp')
0 files changed, 0 insertions, 0 deletions