OSDN Git Service

[x86] fix remaining miscompile bug in horizontal binop matching (PR40243)
authorSanjay Patel <spatel@rotateright.com>
Thu, 10 Jan 2019 15:27:23 +0000 (15:27 +0000)
committerSanjay Patel <spatel@rotateright.com>
Thu, 10 Jan 2019 15:27:23 +0000 (15:27 +0000)
commit07f211e13f8ff5916c7e4e3dafd758d0be38fc14
tree7b1dabab5a0522e0c84b2d5e1602a0361409e5e7
parent539028487866a4c0ae0b49efc05c71ff415f372d
[x86] fix remaining miscompile bug in horizontal binop matching (PR40243)

When we use the partial-matching function on a 128-bit chunk, we must
account for the possibility that we've matched undef halves of the
original source vectors, so the outputs may need to be reset.

This should allow closing PR40243:
https://bugs.llvm.org/show_bug.cgi?id=40243

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@350830 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/phaddsub-undef.ll