[all-commits] [llvm/llvm-project] b52962: [X86] LowerVSELECT - split v16i16/v32i8 pre-AVX2 V...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Fri May 31 06:43:39 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b52962d1b89ca9102a89497743b7576d572b437e
      https://github.com/llvm/llvm-project/commit/b52962d1b89ca9102a89497743b7576d572b437e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-05-31 (Fri, 31 May 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vselect-pcmp.ll

  Log Message:
  -----------
  [X86] LowerVSELECT - split v16i16/v32i8 pre-AVX2 VSELECT ops if enough of the operands are free to split.

Often on AVX1 we're better off consistently using 128-bit instructions, so recognise when the operands are loads that can be freely/cheaply split - ideally this functionality needs to be moved to isFreeToSplitVector but we're using it in a few places where we don't want to split loads yet.

Based off a regression reported after #92794



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