diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2018-10-06 10:20:04 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2018-10-06 10:20:04 +0000 |
commit | 9c9c97bcf433db56d5451641a05f297f1122e7f0 (patch) | |
tree | c29a81573f6c2f9a5b62be7d41737cfdae2f247b /llvm/lib/DebugInfo/PDB/Native/ModuleDebugStream.cpp | |
parent | 39f7b3967a545ba8380384fc6cf2b01ced834074 (diff) | |
download | llvm-9c9c97bcf433db56d5451641a05f297f1122e7f0.zip llvm-9c9c97bcf433db56d5451641a05f297f1122e7f0.tar.gz llvm-9c9c97bcf433db56d5451641a05f297f1122e7f0.tar.bz2 |
[SelectionDAG] Add SimplifyDemandedBits to SimplifyDemandedVectorElts simplification
This patch enables SimplifyDemandedBits to call SimplifyDemandedVectorElts in cases where the demanded bits mask covers entire elements of a bitcasted source vector.
There are a couple of cases here where simplification at a deeper level (such as through bitcasts) prevents further simplification - CommitTargetLoweringOpt only adds immediate uses/users back to the worklist when we might want to combine the original caller again to see what else it can simplify.
As well as that I had to disable handling of bool vector until SimplifyDemandedVectorElts better supports some of their opcodes (SETCC, shifts etc.).
Fixes PR39178
Differential Revision: https://reviews.llvm.org/D52935
llvm-svn: 343913
Diffstat (limited to 'llvm/lib/DebugInfo/PDB/Native/ModuleDebugStream.cpp')
0 files changed, 0 insertions, 0 deletions