Skip to content
  • Chandler Carruth's avatar
    [x86] Tweak the v16i8 single input special case lowering for shuffles · a34a8e23
    Chandler Carruth authored
    that splat i8s into i16s.
    
    Previously, we would try much too hard to arrange a sequence of i8s in
    one half of the input such that we could unpack them into i16s and
    shuffle those into place. This isn't always going to be a cheaper i8
    shuffle than our other strategies. The case where it is always going to
    be cheaper is when we can arrange all the necessary inputs into one half
    using just i16 shuffles. It happens that viewing the problem this way
    also makes it much easier to produce an efficient set of shuffles to
    move the inputs into one half and then unpack them.
    
    With this, our splat code gets one step closer to being not terrible
    with the new experimental lowering strategy. It also exposes two
    combines missing which I will add next.
    
    llvm-svn: 212692
    a34a8e23
Loading