Skip to content
  • Kenneth Graunke's avatar
    i965: Combine both gl_PatchVerticesIn lowering passes. · 48897222
    Kenneth Graunke authored
    
    
    Until now, we had separate passes for lowering gl_PatchVerticesIn to
    a statically known constant (for TES inputs when linked against a TCS),
    and a uniform in the other cases.  Annoyingly, one had to be run before
    nir_lower_system_values, and the other afterward.  This simplified the
    passes, but made life painful for the callers.
    
    This patch combines both into a single pass.  If you give it a non-zero
    static count, it uses that.  If you give it Mesa state slots, it turns
    it back into a built-in uniform.  Otherwise, it does nothing.
    
    This also moves the i965 uniform lowering out to shared code.
    
    v2: Make token arrays const.
    
    Reviewed-by: default avatarEric Anholt <eric@anholt.net>
    48897222