[all-commits] [llvm/llvm-project] 6287b7: [X86] combineEXTRACT_SUBVECTOR - extract 256-bit c...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Wed Feb 28 04:25:10 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6287b7b9e9b729afde4aef7d41609d9b4efaecda
      https://github.com/llvm/llvm-project/commit/6287b7b9e9b729afde4aef7d41609d9b4efaecda
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/kshift.ll
    M llvm/test/CodeGen/X86/pr46455.ll
    M llvm/test/CodeGen/X86/setcc-lowering.ll

  Log Message:
  -----------
  [X86] combineEXTRACT_SUBVECTOR - extract 256-bit comparisons if only one subvector is required

If only one subvector extraction will be necessary (i.e. because the other is constant etc.) then extract the source operands and perform as a 128-bit comparison

Ideally DAGCombiner's narrowExtractedVectorBinOp would handle this but its tricky to confirm when a target opcode can be safely extracted and performed as a different vector type

Partially improves an outstanding regression in #82290



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