[all-commits] [llvm/llvm-project] 556c94: [DAG] visitINSERT_VECTOR_ELT - use mergeEltWithShu...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Sun Jan 22 09:20:13 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 556c94e73ed001f6d1381e28ca44c2b8b5c8e92f
      https://github.com/llvm/llvm-project/commit/556c94e73ed001f6d1381e28ca44c2b8b5c8e92f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2023-01-22 (Sun, 22 Jan 2023)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAG] visitINSERT_VECTOR_ELT - use mergeEltWithShuffle to merge inserted vector element chain into base shuffle node

This allows us to merge insert_elt(insert_elt(shuffle(x,y),extract_elt(x,c1),c2),extract_elt(y,c3),c4) style insertion chains into a new shuffle node.

I had hoped to remove mergeInsertEltWithShuffle entirely, but that case doesn't have the one use limits so we would regress in a few other cases.

Fixes the vector-shuffle-combining.ll regressions in D127115


  Commit: 2e8aa2dcbcd8f825fc0b6e8677ca009d990dbf1e
      https://github.com/llvm/llvm-project/commit/2e8aa2dcbcd8f825fc0b6e8677ca009d990dbf1e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2023-01-22 (Sun, 22 Jan 2023)

  Changed paths:
    M llvm/test/CodeGen/PowerPC/vec_absd.ll

  Log Message:
  -----------
  [PowerPC] Regenerate vec_absd.ll test checks


Compare: https://github.com/llvm/llvm-project/compare/e4c4841e5bba...2e8aa2dcbcd8


More information about the All-commits mailing list