Skip to content
  • Paul Berry's avatar
    glsl: Handle empty if statement encountered during loop analysis. · a5eecb24
    Paul Berry authored
    The is_loop_terminator() function was asserting that the following
    kind of if statement could never occur:
    
        if (...) { } else { }
    
    (presumably based on the assumption that such an if statement would be
    eliminated by previous optimization stages).  But that isn't the
    case--it's possible that previous optimization stages might simplify
    more complex code down to this empty if statement, in which case it
    won't be eliminated until the next time through the optimization loop.
    
    So is_loop_terminator() needs to handle it.  Fortunately it's easy to
    handle--it's not a loop terminator because it does nothing.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=64330
    
    
    CC: mesa-stable@lists.freedesktop.org
    
    Reviewed-by: default avatarKenneth Graunke <kenneth@whitecape.org>
    a5eecb24