Skip to content
  • Rob Clark's avatar
    freedreno/ir3: split out shader compiler from a3xx · db193e5a
    Rob Clark authored
    
    
    Move the bits we want to share between generations from fd3_program to
    ir3_shader.  So overall structure is:
    
      fdN_shader_stateobj -> ir3_shader -> ir3_shader_variant -> ir3
                                        |- ...
                                        \- ir3_shader_variant -> ir3
    
    So the ir3_shader becomes the topmost generation neutral object, which
    manages the set of variants each of which generates, compiles, and
    assembles it's own ir.
    
    There is a bit of additional renaming to s/fd3_compiler/ir3_compiler/,
    etc.
    
    Keep the split between the gallium level stateobj and the shader helper
    object because it might be a good idea to pre-compute some generation
    specific register values (ie. anything that is independent of linking).
    
    Signed-off-by: default avatarRob Clark <robclark@freedesktop.org>
    db193e5a