• Marek Olšák's avatar
    st/mesa: completely rewrite state atoms · c8fe3b9d
    Marek Olšák authored
    The goal is to do this in st_validate_state:
       while (dirty)
          atoms[u_bit_scan(&dirty)]->update(st);
    
    That implies that atoms can't specify which flags they consume.
    There is exactly one ST_NEW_* flag for each atom. (58 flags in total)
    
    There are macros that combine multiple flags into one for easier use.
    
    All _NEW_* flags are translated into ST_NEW_* flags in st_invalidate_state.
    st/mesa doesn't keep the _NEW_* flags after that.
    
    torcs is 2% faster between the previous patch and the end of this series.
    
    v2: - add st_atom_list.h to Makefile.sources
    Reviewed-by: default avatarNicolai Hähnle <nicolai.haehnle@amd.com>
    c8fe3b9d
st_atom_list.h 3.09 KB