aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/ASTMerge.cpp
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2019-04-08 13:17:51 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2019-04-08 13:17:51 +0000
commitb4f1bfa65982804d0e34beffea2753783c9878c2 (patch)
treefe13b4ecf802051b0a5ea4688d3cf3fa2f1f3e5f /clang/lib/Frontend/ASTMerge.cpp
parent91f60b44958fbcaf6450e82ef40965e92aedda5f (diff)
downloadllvm-b4f1bfa65982804d0e34beffea2753783c9878c2.zip
llvm-b4f1bfa65982804d0e34beffea2753783c9878c2.tar.gz
llvm-b4f1bfa65982804d0e34beffea2753783c9878c2.tar.bz2
[InstCombine][X86] Expand MOVMSK to generic IR (PR39927)
First step towards removing the MOVMSK intrinsics completely - this patch expands MOVMSK to the pattern: e.g. PMOVMSKB(v16i8 x): %cmp = icmp slt <16 x i8> %x, zeroinitializer %int = bitcast <16 x i8> %cmp to i16 %res = zext i16 %int to i32 Which is correctly handled by ISel and FastIsel (give or take an annoying movzx move....): https://godbolt.org/z/rkrSFW Differential Revision: https://reviews.llvm.org/D60256 llvm-svn: 357909
Diffstat (limited to 'clang/lib/Frontend/ASTMerge.cpp')
0 files changed, 0 insertions, 0 deletions