diff options
author | Andrea Di Biagio <Andrea_DiBiagio@sn.scee.net> | 2014-01-27 18:45:30 +0000 |
---|---|---|
committer | Andrea Di Biagio <Andrea_DiBiagio@sn.scee.net> | 2014-01-27 18:45:30 +0000 |
commit | e9c0b5aba6eefdac099dfba0a43bd4cac89fb6ff (patch) | |
tree | e24706674bfac37b502028df83680a667d69b6c3 /lib/Target | |
parent | 0583b2c08ef5ddfa8b38370f09116295d4c45505 (diff) | |
download | llvm-e9c0b5aba6eefdac099dfba0a43bd4cac89fb6ff.tar.gz llvm-e9c0b5aba6eefdac099dfba0a43bd4cac89fb6ff.tar.bz2 llvm-e9c0b5aba6eefdac099dfba0a43bd4cac89fb6ff.tar.xz |
[DAGCombiner] Teach how to fold sext/aext/zext of constant build vectors.
This patch teaches the DAGCombiner how to fold a sext/aext/zext dag node when
the operand in input is a build vector of constants (or UNDEFs).
The inability to fold a sext/zext of a constant build_vector was the root
cause of some pcg bugs affecting vselect expansion on x86-64 with AVX support.
Before this change, the DAGCombiner only knew how to fold a sext/zext/aext of a
ConstantSDNode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@200234 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target')
0 files changed, 0 insertions, 0 deletions