[all-commits] [llvm/llvm-project] 557bf3: [RISCV][ISel] Allow opaque constants in `hasAndNot...

Yingwei Zheng via All-commits all-commits at lists.llvm.org
Tue May 21 09:48:48 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 557bf3835b96ef5839013b1e821a1cb869660aa3
      https://github.com/llvm/llvm-project/commit/557bf3835b96ef5839013b1e821a1cb869660aa3
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-05-22 (Wed, 22 May 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/pr90730.ll

  Log Message:
  -----------
  [RISCV][ISel] Allow opaque constants in `hasAndNotCompare` (#92926)

See the following code:

https://github.com/llvm/llvm-project/blob/4ae896fe979b7db501cabde4b6b3504478958682/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp#L9334-L9357

> Combining: t47: i64 = xor t43, OpaqueConstant:i64<31808>
X: i64 = Constant<0>
Y: i64 = OpaqueConstant<31808>

The assertion failed because both `X` and `Y` are constants.
This patch allows opaque constants in `hasAndNotCompare` to fix the
issue.

Fixes https://github.com/llvm/llvm-project/issues/90730.



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