[all-commits] [llvm/llvm-project] 82877a: [LLVM] Fix assertion when dropping type tests with...

Grigory Pastukhov via All-commits all-commits at lists.llvm.org
Thu Mar 12 11:28:05 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 82877a6219b31646935ec6222013c3d78fd1196e
      https://github.com/llvm/llvm-project/commit/82877a6219b31646935ec6222013c3d78fd1196e
  Author: Grigory Pastukhov <99913765+grigorypas at users.noreply.github.com>
  Date:   2026-03-12 (Thu, 12 Mar 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    A llvm/test/Transforms/LowerTypeTests/drop_type_test_select.ll

  Log Message:
  -----------
  [LLVM] Fix assertion when dropping type tests with SelectInst users (#185523)

The `dropTypeTests` function assumes that after removing `llvm.assume`
users of `llvm.type.test` calls, any remaining users must be PHINodes
(from merged assumes). However, SimplifyCFG can also merge two
`assume(type.test(...))` sequences into `assume(select(cond,
type.test_1, type.test_2))`, leaving SelectInst users that trigger the
assertion.

Extend the assertion to also accept SelectInst. The
`replaceAllUsesWith(true)` call already handles all user types
correctly — only the assertion was too narrow.



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