Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • mesa mesa
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,032
    • Issues 3,032
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 994
    • Merge requests 994
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • MesaMesa
  • mesamesa
  • Merge requests
  • !4171

amd/llvm: Fix divergent descriptor indexing. (v3) (backport)

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Bas Nieuwenhuizen requested to merge bnieuwenhuizen/mesa:descriptor-indexing-backport into staging/20.0 Mar 12, 2020
  • Overview 4
  • Commits 1
  • Pipelines 4
  • Changes 2

There are multiple LLVM passes that very much move the intrinsic using the descriptor outside of the loop, defeating the entire point of creating the loop.

Defeat the optimizer by splitting the break into a separate if-statement and putting an optimization barrier on the bool in between.

v2: Move from a callback based system to begin/end loop. This does not make it significantly less intrusive but is a bit nicer with all the extra struct and callback stubs. v3: Deal with non-divergent values in divergent path.

Closes: #2160 (closed) Fixes: 028ce527 "radv: Add non-uniform indexing lowering." Reviewed-by: Samuel Pitoiset samuel.pitoiset@gmail.com Tested-by: Marge Bot !4109 (merged) Part-of: !4109 (merged) (cherry picked from commit b83c9aca)

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: descriptor-indexing-backport