aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Basic/SourceManager.cpp
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2021-11-09 15:11:21 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2021-11-09 15:20:43 +0000
commitd510fd2bed030ff2c42e1a365e1898ac6e822694 (patch)
tree11fb3676a03d4fc5700581c4283cc1d14be3199d /clang/lib/Basic/SourceManager.cpp
parentcba40c4edec83a830145cb50f344d289ee331720 (diff)
downloadllvm-d510fd2bed030ff2c42e1a365e1898ac6e822694.zip
llvm-d510fd2bed030ff2c42e1a365e1898ac6e822694.tar.gz
llvm-d510fd2bed030ff2c42e1a365e1898ac6e822694.tar.bz2
[X86] combineMulToPMADDWD - handle any pow2 vector type and split to legal types
combineMulToPMADDWD is currently limited to legal types, but there's no reason why we can't handle any larger type that the existing SplitOpsAndApply code can use to split to legal X86ISD::VPMADDWD ops. This also exposed a missed opportunity for pre-SSE41 targets to handle SEXT ops from types smaller than vXi16 - without PMOVSX instructions these will always be expanded to unpack+shifts, so we can cheat and convert this into a ZEXT(SEXT()) sequence to make it a valid PMADDWD op. Differential Revision: https://reviews.llvm.org/D110995
Diffstat (limited to 'clang/lib/Basic/SourceManager.cpp')
0 files changed, 0 insertions, 0 deletions