[PATCH] D109236: [AggressiveInstCombine] Add vector instructions to `TruncInstCombine` DAG
    Anton Afanasyev via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Fri Sep  3 10:22:19 PDT 2021
    
    
  
anton-afanasyev marked an inline comment as done.
anton-afanasyev added a comment.
In D109236#2982345 <https://reviews.llvm.org/D109236#2982345>, @lebedev.ri wrote:
> Can you add a test with insert into poison / unary shuffle?
Ok, added
================
Comment at: llvm/lib/Transforms/AggressiveInstCombine/TruncInstCombine.cpp:436
+          V1, V2, cast<ShuffleVectorInst>(I)->getShuffleMask());
+      break;
+    }
----------------
RKSimon wrote:
> Are we allowed to create new shuffles inside aggressiveinstcombine? A different type, even with the same mask, means that this might have a very different performance.
Hmm, if that's the case, the only stuff we could do is to remove shuffles processing back. We can check perfomance difference for specific target, but that can't be done before `NewBitWidth` choosing, when it is too late (the DAG is started reducing already). One could change whole algorithm, but that's not the case to do it specially for `shufflevector` support.
Repository:
  rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D109236/new/
https://reviews.llvm.org/D109236
    
    
More information about the llvm-commits
mailing list