fhahn wrote: > > Thanks, this is indeed more compact. I tried to massage the SelectionDAG > > nodes to generate it > > ([7cc78c5](https://github.com/llvm/llvm-project/commit/7cc78c52f481161d7195ac4c7f9ec05b1cd1f442)) > > but it appears there are some cases where this results in slightly more > > code. I can check where those differences are coming from. > > It looks like the INSERT_VECTOR_ELT is getting "optimized" into a > BUILD_VECTOR, or something like that, instead of doing a shuffle like it does > with your original sequence.
@efriedma-quic ok I managed to track down where the issue is. The only workaround I could come up with is extending `ReconstructShuffle` to support the case where one element is a load via `shuffleWithSingleLoad`. WDYT? https://github.com/llvm/llvm-project/pull/78632 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits