On Tue, Oct 10, 2017 at 1:10 PM, Jason Ekstrand
wrote:
> On Tue, Oct 10, 2017 at 9:16 AM, Connor Abbott
> wrote:
>
>> I'm a little nervous about this, because really, the only solution to
>> this problem is to ignore all non-WE_all definitions of all variables
>> in liveness analysis. For exampl
On Tue, Oct 10, 2017 at 9:16 AM, Connor Abbott wrote:
> I'm a little nervous about this, because really, the only solution to
> this problem is to ignore all non-WE_all definitions of all variables
> in liveness analysis. For example, in something like:
>
> vec4 color2 = ...
> if (...) {
>col
No, this is a different situation. On i965, the hardware keeps track
of that stuff automatically. The problem is that the header, which is
shared across all the threads in a wavefront and specifies stuff like
LOD, LOD bias, texture array offset, etc., uses the same register
space as normal, vector
I hope I'm not butting in too much with irrelevant info, but I think
we had a similar issue in nouveau. On Kepler, texture instructions
take an arbitrary amount of time to complete, and only write into
destination registers on completion, while other instructions are
executing after that tex dispat
I'm a little nervous about this, because really, the only solution to
this problem is to ignore all non-WE_all definitions of all variables
in liveness analysis. For example, in something like:
vec4 color2 = ...
if (...) {
color2 = texture();
}
texture() can also overwrite inactive channels of
With this patch applied I can not reproduce anymore the regression
related to cross-channel variable interference in non-uniformly executed
loops exposed at
dEQP-VK.glsl.return.return_in_dynamic_loop_dynamic_vertex when applying
Curro's liveness patch
Tested-by: Jose Maria Casanova Crespo
On 05/
No Shader-db changes.
Cc: mesa-sta...@lists.freedesktop.org
---
src/intel/compiler/brw_fs_live_variables.cpp | 55
1 file changed, 55 insertions(+)
diff --git a/src/intel/compiler/brw_fs_live_variables.cpp
b/src/intel/compiler/brw_fs_live_variables.cpp
index c449672
Bah! This one's bogus too. I think it messes up register coalesce but I'm
not 100% sure...
On Wed, Oct 4, 2017 at 8:22 PM, Jason Ekstrand wrote:
> Cc: mesa-sta...@lists.freedesktop.org
> ---
> src/intel/compiler/brw_fs_live_variables.cpp | 55
>
> 1 file changed,
Cc: mesa-sta...@lists.freedesktop.org
---
src/intel/compiler/brw_fs_live_variables.cpp | 55
1 file changed, 55 insertions(+)
diff --git a/src/intel/compiler/brw_fs_live_variables.cpp
b/src/intel/compiler/brw_fs_live_variables.cpp
index c449672..23ec280 100644
--- a/