[all-commits] [llvm/llvm-project] 984384: SelectionDAG: Do not propagate divergence through ...

Matt Arsenault via All-commits all-commits at lists.llvm.org
Tue Jul 30 13:05:20 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9843843c88f6cd8fa68c301ba751c001c254cb63
      https://github.com/llvm/llvm-project/commit/9843843c88f6cd8fa68c301ba751c001c254cb63
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AMDGPU/dag-divergence.ll
    M llvm/test/CodeGen/AMDGPU/inline-asm.ll
    M llvm/test/CodeGen/AMDGPU/sdag-print-divergence.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_isel.ll.expected

  Log Message:
  -----------
  SelectionDAG: Do not propagate divergence through copy glue (#101210)

This fixes DAG divergence mishandling inline asm.

This was considering the glue nodes for divergence, when the
divergence should only come from the individual CopyFromRegs
that are glued. As a result, having any VGPR CopyFromRegs would
taint any uniform SGPR copies as divergent, resulting in SGPR
copies to VGPR virtual registers later.



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