Skip to content
  • Ilia Mirkin's avatar
    nv50/ir: fix combineLd/St to update existing records as necessary · 065643fe
    Ilia Mirkin authored and Andres Gomez's avatar Andres Gomez committed
    
    
    Previously the logic would decide that the record is kept, which
    translates into keep = false in the caller, which meant that these
    passes did not run.
    
    While it's right that keep = false which means that a new record does
    not need to be added, we do still have to perform the usual list
    maintenance. It's easiest to do this pre-merge rather than post.
    
    The lowering that clip/cull distance passes produce triggers this bug in
    TCS (since reading outputs is done differently in other stages), but it
    should be possible to achieve it with the right sequence of regular
    reads/writes.
    
    Fixes: KHR-GL45.cull_distance.functional
    Fixes: generated_tests/spec/arb_tessellation_shader/execution/tes-input/tes-input-gl_ClipDistance.shader_test
    Signed-off-by: default avatarIlia Mirkin <imirkin@alum.mit.edu>
    Reviewed-by: default avatarSamuel Pitoiset <samuel.pitoiset@gmail.com>
    Cc: mesa-stable@lists.freedesktop.org
    (cherry picked from commit 4a79f2be)
    065643fe