Skip to content
  • Caio Oliveira's avatar
    spirv: Remove more dead variables · c4c9c780
    Caio Oliveira authored
    SPIR-V modules can have multiple shaders (including of the same
    stage), but the global variables are all declared for the whole
    module.  This can result in variables with same Binding but
    incompatible types, so those need to be removed before we use.
    
    Previously, a similar issue but with a narrower scope was fixed by
    6775665e ("spirv: Eliminate dead input/output variables after
    translation.").
    
    This patch depends on the previous patch that prevents variables used
    only in pointer initializers to be considered dead.
    
    Closes: mesa/mesa#3686
    Fixes: 3a266a18
    
     ("nir/spirv: Add support for declaring variables")
    Reviewed-by: default avatarJason Ekstrand <jason@jlekstrand.net>
    Part-of: <mesa/mesa!8133>
    c4c9c780