[all-commits] [llvm/llvm-project] d29045: [X86] combineConcatVectorOps - fold concat(EXTEND_...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Mon Feb 17 07:50:49 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d29045622a1db3cd3729c1fe3fba7eebd5536517
      https://github.com/llvm/llvm-project/commit/d29045622a1db3cd3729c1fe3fba7eebd5536517
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-17 (Mon, 17 Feb 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
    M llvm/test/CodeGen/X86/widen_bitcnt.ll

  Log Message:
  -----------
  [X86] combineConcatVectorOps - fold concat(EXTEND_VECTOR_INREG(x),EXTEND_VECTOR_INREG(y)) -> EXTEND_VECTOR_INREG(unpack(x,y)) (#127502)

Concat/unpack the src subvectors together in the bottom 128-bit vector and then extend with a single EXTEND/EXTEND_VECTOR_INREG instruction

Required the getEXTEND_VECTOR_INREG helper to be tweaked to accept EXTEND_VECTOR_INREG opcodes as well to avoid us having to remap the opcode between both types.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list