Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
mesa
mesa
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 2,428
    • Issues 2,428
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 685
    • Merge Requests 685
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Mesa
  • mesamesa
  • Merge Requests
  • !8044

Open
Created Dec 10, 2020 by Eric Anholt@anholtOwner9 of 13 tasks completed9/13 tasks
  • Report abuse
Report abuse

WIP: st/mesa: Replace glsl_to_tgsi() with glsl_to_nir() and nir_to_tgsi().

  • Overview 45
  • Commits 14
  • Pipelines 40
  • Changes 53
    WIP: st/mesa: Replace glsl_to_tgsi() with glsl_to_nir() and nir_to_tgsi().
    
    Now that nir_to_tgsi exists, we can get rid of the much larger
    infrastructure to support converting GLSL to TGSI.
    
    As with the NIR-to-TGSI usage in softpipe, this comes the downside of
    increased TGSI register file usage for the remaining TGSI drivers, but
    with the upside of making sure every driver benefits from shared NIR
    optimizations.

Removing 14.5k lines and unifying major paths through the compiler feels well worth finishing this off. Some remaining issues:

  • Lots of piglit regressions on SOFTPIPE_DEBUG=use_tgsi (such as getuniform-03 -auto -fbo), at least some of which are an issue in gl_nir_link_uniforms.c with buffer overflows in the UniformRemapTable
  • Need to set size of UBOs (virgl)
  • Need to translate HW atomics (virgl)
  • ntt needs to set cont/break labels (svga, nv30, nv50)
  • ntt needs to support PIPE_CAP_LOAD_CONSTBUF (nv, llvmpipe, GL using rasterpos/select/feedback modes)
  • ntt needs to declare SSBO's BUFFERs (r600, nv50 llvmpipe)
  • ntt needs to set ArrayID for GS inputs (r600)
  • ntt needs to set ArrayID for tess outputs (svga)
  • ntt needs to emit sample index in image load/store (r600, nouveau, llvmpipe)
  • ntt should probably support emitting txp (i915g, r300)
  • ntt should probably support generating TXF_LZ (nv, llvmpipe)
  • !7658 (merged) fixes
  • depth clamp lowering (virgl)
Edited Jan 09, 2021 by Eric Anholt
Assignee
Assign to
Reviewer
Request review from
None
Milestone
None
Assign milestone
Time tracking
Source branch: st-glsl-ntt