[Mesa-dev] [Bug 106174] vulkan dota2 broken (segfaulting), found bug commit

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Tue Apr 24 00:45:48 UTC 2018


https://bugs.freedesktop.org/show_bug.cgi?id=106174

Timothy Arceri <t_arceri at yahoo.com.au> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #3 from Timothy Arceri <t_arceri at yahoo.com.au> ---
Fixed by:

author  Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
commit  0e945fdf23bac5a62c15edfcbfd9d6ac4eee592f

nir: Do not use progress for unreachable code in return lowering.

We seem to use progress for two cases:
1) When we lowered some returns.
2) When we remove unreachable code.

If just case 2 happens we assert as state->return_flag has not
been allocated yet, but we are still trying to do insert all
predicates based on it.

This splits the concerns. We only use progress internally for case 1
and then keep track of 2 in a separate variable to indicate progress
in the return value of the pass.

This is slightly better than transforming the assert into
if (!state->return_flag) return, as the solution in this patch avoids
inserting predicates even if some other part of the might need them.

Fixes: 6e22ad6edc "nir: return early when lowering a return at the end of a
function"
CC: 18.1 <mesa-stable at lists.freedesktop.org>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106174
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180424/b390dbb2/attachment.html>


More information about the mesa-dev mailing list