[all-commits] [llvm/llvm-project] dc8ea0: [AMDGPU] Do not use original PHIs in coercion chai...

Jeffrey Byrnes via All-commits all-commits at lists.llvm.org
Wed Jul 10 11:33:06 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: dc8ea046a516c3bdd0ece306f406c9ea833d4dac
      https://github.com/llvm/llvm-project/commit/dc8ea046a516c3bdd0ece306f406c9ea833d4dac
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2024-07-10 (Wed, 10 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
    M llvm/test/CodeGen/AMDGPU/vni8-across-blocks.ll

  Log Message:
  -----------
  [AMDGPU] Do not use original PHIs in coercion chains (#98063)

It's possible that we are unable to coerce all the incoming values of a
PHINode (A). Thus, we are unable to coerce the PHINode. In this
situation, we previously would add the PHINode back to the ValMap. This
would cause a problem is PhiNode (B) was a user of A. In this scenario,
if B has been coerced, we would hit an assert regarding the incompatible
type between the PHINode and its incoming value.

Deleting non-coerced PHINodes from the map, and propagating the removal
to users, resolves the issue.



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