On 9/24/25 12:31, Michael Tokarev wrote:
On 19.09.2025 15:49, WANG Rui wrote:
It looks like a typo. When the false value (C) is the constant -1, the
correct fold should be: R = B | ~A

Reproducer (LoongArch64 assembly):

      .text
      .globl  _start
  _start:
      vldi    $vr1, 3073
      vldi    $vr2, 1023
      vbitsel.v       $vr0, $vr2, $vr1, $vr2
      vpickve2gr.d    $a1, $vr0, 1
      xori    $a0, $a1, 1
      li.w    $a7, 93
      syscall 0

Fixes: e58b977238e3 ("tcg/optimize: Optimize bitsel_vec")
Link: https://github.com/llvm/llvm-project/issues/159610
Signed-off-by: WANG Rui <wang...@loongson.cn>

It also looks like qemu-stable@ material.

Please let me know if it isn't.

It is, yes.

r~

Reply via email to