[all-commits] [llvm/llvm-project] 096cd9: AMDGPU: Fix divergence analysis of control flow in...

Matt Arsenault via All-commits all-commits at lists.llvm.org
Wed Feb 5 09:31:39 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 096cd991ee90875603a9cacf3b460ac677258539
      https://github.com/llvm/llvm-project/commit/096cd991ee90875603a9cacf3b460ac677258539
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2020-02-05 (Wed, 05 Feb 2020)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    A llvm/test/Analysis/DivergenceAnalysis/AMDGPU/control-flow-intrinsics.ll

  Log Message:
  -----------
  AMDGPU: Fix divergence analysis of control flow intrinsics

The mask results of these should be uniform. The trickier part is the
dummy booleans used as IR glue need to be treated as divergent. This
should make the divergence analysis results correct for the IR the DAG
is constructed from.

This should allow us to eliminate requiresUniformRegister, which has
an expensive, recursive scan over all users looking for control flow
intrinsics. This should avoid recent compile time regressions.




More information about the All-commits mailing list