[all-commits] [llvm/llvm-project] 44cac9: Fix `FindSingleBitChange` to handle NOT(V) where V...

goldsteinn via All-commits all-commits at lists.llvm.org
Mon Jan 23 03:47:00 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 44cac911e51a15fcfac7a9888ad0146191a14730
      https://github.com/llvm/llvm-project/commit/44cac911e51a15fcfac7a9888ad0146191a14730
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2023-01-23 (Mon, 23 Jan 2023)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/atomic-rm-bit-test-64.ll
    M llvm/test/CodeGen/X86/atomic-rm-bit-test.ll

  Log Message:
  -----------
  Fix `FindSingleBitChange` to handle NOT(V) where V is not an Instruction

Was previously buggy to assume that NOT'd Value was always an
instruction. If the NOT'd value is not an Instruction, we should just
return as its either a constant, in which can we will re-run the logic
after constant-folding, or its a type we can't evaluate anyways.

This is a follow up to: `D140939`

Reviewed By: pengfei, RKSimon

Differential Revision: https://reviews.llvm.org/D142339




More information about the All-commits mailing list