From: Dave Airlie airl...@redhat.com
I previously fixed this partly in 9e8400f4c95bde1f955c7977066583b507159a10,
however I didn't go far enough in testing it, now when I parse a TGSI shader
with arrays in it my iterator can see the ArrayID set to the proper value.
Signed-off-by: Dave Airlie
On Sam, 2013-08-10 at 18:31 +0200, Marek Olšák wrote:
v2: simplify flushing in si_context_flush
Reviewed-by: Michel Dänzer michel.daen...@amd.com
--
Earthling Michel Dänzer | http://www.amd.com
Libre software enthusiast | Debian, X and DRI
On Sam, 2013-08-10 at 18:53 +0200, Marek Olšák wrote:
Resolving to scanout buffers just doesn't work.
Reviewed-by: Michel Dänzer michel.daen...@amd.com
--
Earthling Michel Dänzer | http://www.amd.com
Libre software enthusiast | Debian, X and DRI
From: Ville Syrjälä ville.syrj...@linux.intel.com
IVB/BYT also has the same L3 cacheability control in MOCS as HSW,
so let's make use of it.
pts/xonotic and pts/reaction @ 1920x1080 gain ~4% on my IVB GT2. Most
other things show less gains/no regressions, except furmark which
loses some 10
From: Ville Syrjälä ville.syrj...@linux.intel.com
Juse spotted these unpopulated MOCS fields when comparing the code
against BSpec. No idea if this makes any difference anywhere, or if
it even makes any sense.
Signed-off-by: Ville Syrjälä ville.syrj...@linux.intel.com
---
From: Ville Syrjälä ville.syrj...@linux.intel.com
According to HSW Bspec L3$ evictions may land in LLC regardless of
LLC MOCS/PTE settings. That means we shouldn't set scanout buffers
as L3 cacheable when writing to them.
So far I've been unable to observe this phenomenon on my IVB, but
better
---
src/glsl/ast_to_hir.cpp | 13 +
1 file changed, 13 insertions(+)
diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp
index c06051f..e91e260 100644
--- a/src/glsl/ast_to_hir.cpp
+++ b/src/glsl/ast_to_hir.cpp
@@ -4495,6 +4495,19 @@ ast_interface_block::hir(exec_list
Previously, we were accidentally calling
handle_geometry_shader_input_decl() on non-input interface block
declarations, resulting in bogus error checking.
---
src/glsl/ast_to_hir.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/glsl/ast_to_hir.cpp
Previously, if a geometry shader input was declared as a non-array, we
would flag the proper compiler error, but then before we got a chance
to report it to the client, handle_geometry_shader_input_decl() would
assertion fail.
With this patch, handle_geometry_shader_input_decl() ignores
On 08/12/2013 01:38 AM, Dave Airlie wrote:
From: Dave Airlie airl...@redhat.com
I previously fixed this partly in 9e8400f4c95bde1f955c7977066583b507159a10,
however I didn't go far enough in testing it, now when I parse a TGSI shader
with arrays in it my iterator can see the ArrayID set to the
On 08/09/2013 01:50 PM, Kevin H. Hobbs wrote:
On 08/09/2013 01:59 PM, Brian Paul wrote:
That's probably not it, given the above. Can you try setting a
breakpoint on pstip_destroy() and see if that's getting called before
the segfault? If so, things are getting freed in the wrong order.
On Sam, 2013-08-10 at 00:23 +0200, Marek Olšák wrote:
Any pixmap can potentially end up as a scanout buffer, right?
This fixes a whole-screen corruption with radeonsi, which needs a different
texture layout for scanout textures.
---
src/gallium/state_trackers/xorg/xorg_exa.c | 2 +-
1
On Sam, 2013-08-10 at 00:23 +0200, Marek Olšák wrote:
The surface allocator understands the scanout flag just fine.
This seems to improve performance for Ubuntu Unity on top of st/xorg
and it fixes the cursor.
---
src/gallium/drivers/radeonsi/r600_texture.c | 2 +-
1 file changed, 1
https://bugs.freedesktop.org/show_bug.cgi?id=67962
--- Comment #4 from U. Artie Eoff ullysses.a.e...@intel.com ---
(In reply to comment #3)
(In reply to comment #2)
I've sent a fix today
http://lists.freedesktop.org/archives/mesa-dev/2013-August/043097.html
Discard this, I've sent a v2
From: Roland Scheidegger srol...@vmware.com
Instead of reducing masks to 0/1 simply use the mask directly as -1.
Also use some signed comparison instead of unsigned (as far as I understand
these values have to be (very) small and signed means llvm doesn't have to
apply additional logic to do the
From: Roland Scheidegger srol...@vmware.com
Instead of reducing masks to 0/1 simply use the mask directly as -1.
Also use some signed comparison instead of unsigned (as far as I understand
these values have to be (very) small and signed means llvm doesn't have to
apply additional logic to do the
On Fri, Aug 9, 2013 at 10:44 AM, Mike Lothian m...@fireburn.co.uk wrote:
Hi
I seem to have a missing symbol wayland_drm_buffer_get in libgbm.so.1
I'm pretty sure its related
No, it's a different issue: https://bugs.freedesktop.org/show_bug.cgi?id=67962
Kristian
Regards
Mike
On 18 Jul
On Mon, Aug 5, 2013 at 3:00 PM, Anuj Phogat anuj.pho...@gmail.com wrote:
This patch fixes a case of framebuffer blitting with renderbuffer
as color attachment and GL_LINEAR filter. Meta implementation of
glBlitFrambuffer() converts source color buffer to a texture and
uses it to do the scaled
On 08/12/2013 10:29 AM, Brian Paul wrote:
Can you run with valgrind? That should give us some useful info if
there's a use-after-free.
Sure,
$ valgrind /home/kevin/kitware/VTK_OSMesa_Build/bin/vtkpython
--enable-bt
/home/kevin/kitware/VTK_OSMesa_Build/Utilities/vtkTclTest2Py/rtImageTest.py
---
src/gallium/drivers/r300/r300_state.c | 2 +-
src/gallium/drivers/r300/r300_texture.c | 4 ++--
src/gallium/drivers/r600/r600_texture.c | 13 -
src/gallium/drivers/radeonsi/r600_texture.c | 13 -
src/gallium/winsys/radeon/drm/radeon_drm_bo.c |
On 08/07/2013 03:45 PM, Ian Romanick wrote:
On 08/05/2013 06:28 PM, Kenneth Graunke wrote:
[snip]
+ *(+f0) IF
+ *MOV dst src0
+ *ELSE
+ *MOV dst src1
+ *ENDIF
Do we see many cases of
foo = batman;
if (condition)
foo = robin;
I haven't seen many cases
From: Roland Scheidegger srol...@vmware.com
Instead of reducing masks to 0/1 simply use the mask directly as -1.
Also use some signed comparison instead of unsigned (as far as I understand
these values have to be (very) small and signed means llvm doesn't have to
apply additional logic to
From: Roland Scheidegger srol...@vmware.com
Because we must maintain an exec_mask even if there's currently nothing
on the mask stack, we can still have an exec_mask at the end of the program.
Effectively, this mask should be set back to default when returning from main.
Without relying on
Looks good.
Reviewed-by: Zack Rusin za...@vmware.com
- Original Message -
From: Roland Scheidegger srol...@vmware.com
The code was quite weird, the second comparison was in fact a complete no-op
and we can also do the comparison with the vector directly instead of scalar,
which
Ah, that looks like a great catch.
Reviewed-by: Zack Rusin za...@vmware.com
- Original Message -
From: Roland Scheidegger srol...@vmware.com
Because we must maintain an exec_mask even if there's currently nothing
on the mask stack, we can still have an exec_mask at the end of the
On Mon, Aug 5, 2013 at 6:28 PM, Kenneth Graunke kenn...@whitecape.org wrote:
Usually, the driver creates both 8-wide and 16-wide variants of every
fragment shader. When 16-wide compilation fails, it logs a performance
warning explaining why only an 8-wide program exists.
However, when there
The dataflow analysis used for global copy propagation is severely
broken, and I believe it doesn't actually do anything. Fixing it will
require a lot of changes, each of which might break things.
Once all the fixes land, we can re-enable this.
Signed-off-by: Kenneth Graunke
fs_copy_prop_dataflow::setup_kills() walks through each basic block's
instructions, looking for instructions which overwrite registers used
in ACP entries.
This would be fine, except that it didn't exclude the instructions
which generated the ACP entries in the first place. This meant that
every
The fixed-point algorithm needs to run at least once, so a do-while loop
is more natural.
Signed-off-by: Kenneth Graunke kenn...@whitecape.org
---
src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git
This variable indicates that the fixed-point algorithm made changes to
the data at this step, so it needs to run for another iteration.
progress seems a nicer name for that.
---
src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
To compute the actual liveout/livein data flow values, we start with
some initial values and apply a fixed-point algorithm until they settle.
Previously, we iterated through all blocks, updating both liveout and
livein together in one pass. This is awkward, since computing livein
for a block
Hello,
This surprisingly large series fixes bugs in the data flow algorithm
for copy propagation. As far as I can tell, there were a myriad of
issues. The updated algorithm seems to follow the textbook and
online materials much more closely.
No Piglit regressions on Ivybridge.
shader-db
Although this function currently only initializes the KILL set, it will
soon initialize other data flow sets as well.
Signed-off-by: Kenneth Graunke kenn...@whitecape.org
---
src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp | 11 ++-
1 file changed, 6 insertions(+), 5 deletions(-)
This is the COPY set from Muchnick's textbook, which is necessary
to do the dataflow algorithm correctly.
Signed-off-by: Kenneth Graunke kenn...@whitecape.org
---
.../drivers/dri/i965/brw_fs_copy_propagation.cpp | 27 ++
1 file changed, 23 insertions(+), 4 deletions(-)
Excluding the existing liveout bits is a deviation from the textbook
algorithm. The reason for doing so was to determine if the value
changed, which means the fixed-point algorithm needs to run for another
iteration.
The simpler way to do that is to save the value from step (N-1) and
compare it
According to page 360 of the textbook, the proper formula for liveout
is:
CPout(n) = COPY(i) union (CPin(i) - KILL(i))
Previously, we omitted COPY.
Signed-off-by: Kenneth Graunke kenn...@whitecape.org
---
src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp | 3 ++-
1 file changed, 2
Previously, livein was initialized to 0 for all blocks. According to
the textbook, it should be the universal set (~0) for all blocks except
the one representing the start of the program (which should be 0).
liveout also needs to be initialized to COPY for the initial block.
Signed-off-by:
The previous commit properly initialized liveout. This previous
(and incorrect) initialization is no longer necessary.
Signed-off-by: Kenneth Graunke kenn...@whitecape.org
---
src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp | 1 -
1 file changed, 1 deletion(-)
diff --git
The starting block always has livein = 0 and liveout = copy. Since we
start with real data, not estimates, there's no need to refine it with
the fixed point algorithm.
Signed-off-by: Kenneth Graunke kenn...@whitecape.org
---
src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp | 6 ++
1
Since we start with an overestimation of livein (0x), successive
steps may should actually take away values. This means we can't simply
OR in new liveout values; we need to recompute it from scratch at each
iteration of the fixed-point algorithm.
Signed-off-by: Kenneth Graunke
Since the initial value for livein is an overestimation (0x),
it's extremely likely that it will shrink, which means we can't simply
OR in new bits - we need to fully recompute it based on the current
liveout values.
Signed-off-by: Kenneth Graunke kenn...@whitecape.org
---
I believe the data flow analysis actually works now, and it should be
safe to re-enable global copy propagation. It even does things now.
Signed-off-by: Kenneth Graunke kenn...@whitecape.org
---
src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp | 2 --
1 file changed, 2 deletions(-)
diff
---
src/mesa/drivers/dri/i965/brw_fs.cpp| 13 +
src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp | 3 +++
src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp | 10 ++
3 files changed, 22 insertions(+), 4 deletions(-)
diff --git
---
src/glsl/ir_builder.cpp | 24
src/glsl/ir_builder.h | 4
2 files changed, 28 insertions(+)
diff --git a/src/glsl/ir_builder.cpp b/src/glsl/ir_builder.cpp
index 8fb30a0..5e1da17 100644
--- a/src/glsl/ir_builder.cpp
+++ b/src/glsl/ir_builder.cpp
@@ -304,12
---
src/glsl/ir_builder.cpp | 6 ++
src/glsl/ir_builder.h | 1 +
2 files changed, 7 insertions(+)
diff --git a/src/glsl/ir_builder.cpp b/src/glsl/ir_builder.cpp
index 5e1da17..06b6a8c 100644
--- a/src/glsl/ir_builder.cpp
+++ b/src/glsl/ir_builder.cpp
@@ -219,6 +219,12 @@ saturate(operand
---
src/glsl/ir_builder.cpp | 6 ++
src/glsl/ir_builder.h | 1 +
2 files changed, 7 insertions(+)
diff --git a/src/glsl/ir_builder.cpp b/src/glsl/ir_builder.cpp
index 06b6a8c..b47d131 100644
--- a/src/glsl/ir_builder.cpp
+++ b/src/glsl/ir_builder.cpp
@@ -232,6 +232,12 @@ equal(operand a,
---
src/glsl/ir_builder.cpp | 12
src/glsl/ir_builder.h | 2 ++
2 files changed, 14 insertions(+)
diff --git a/src/glsl/ir_builder.cpp b/src/glsl/ir_builder.cpp
index b47d131..7d9cf5e 100644
--- a/src/glsl/ir_builder.cpp
+++ b/src/glsl/ir_builder.cpp
@@ -369,6 +369,18 @@
Necessary to avoid combining a bitcast and a modifier into a single
operation. Otherwise if safe, the MOV should be removed by
copy-propagation or register coalescing.
---
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 4 ++--
src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp | 4 ++--
2 files
On 08/12/2013 07:14 AM, Paul Berry wrote:
Previously, we were accidentally calling
handle_geometry_shader_input_decl() on non-input interface block
declarations, resulting in bogus error checking.
---
src/glsl/ast_to_hir.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git
On 08/08/2013 01:43 PM, Eric Anholt wrote:
We can't just smash it on globally due to (probably resolvable) issues
with the asm in glapi. And we don't want to penalize developers with
longer build times for their normal debug environment.
Due to libdricore making almost all of our symbols
On 08/12/2013 01:25 PM, Matt Turner wrote:
---
src/glsl/ir_builder.cpp | 6 ++
src/glsl/ir_builder.h | 1 +
2 files changed, 7 insertions(+)
diff --git a/src/glsl/ir_builder.cpp b/src/glsl/ir_builder.cpp
index 5e1da17..06b6a8c 100644
--- a/src/glsl/ir_builder.cpp
+++
On 08/06/2013 09:44 PM, Siarhei Siamashka wrote:
On Tue, 6 Aug 2013 15:54:57 -0700
Matt Turner matts...@gmail.com wrote:
On Tue, Aug 6, 2013 at 2:13 PM, Siarhei Siamashka
siarhei.siamas...@gmail.com wrote:
But if upstream Mesa treats this configuration as unsupported, then I
also don't see
On 08/08/2013 04:23 PM, Ian Romanick wrote:
From: Ian Romanick ian.d.roman...@intel.com
Also add a return value indicating whether any work was done.
This will be used by the next patch.
Signed-off-by: Ian Romanick ian.d.roman...@intel.com
Cc: 9.2 mesa-sta...@lists.freedesktop.org
---
On 08/08/2013 04:23 PM, Ian Romanick wrote:
From: Ian Romanick ian.d.roman...@intel.com
The functional change is that now invalidate_framebuffer is called if
the texture is actually detached from one of the currently bound FBOs.
Previously this was only done for renderbuffers.
The remaining
On 08/11/2013 02:32 AM, davya...@free.fr wrote:
Hello,
To enable using prime on Wayland, we need to have a way to create shareable
textures.
That's the purpose of __DRI_IMAGE_USE_SHARE and PIPE_BIND_SHARED, but these
flags don't
disable tiling. This patch change the behaviour of these flags
On 08/09/2013 03:42 PM, Ian Romanick wrote:
From: Ian Romanick ian.d.roman...@intel.com
Fixes piglit glx-query-drawable-GLXBadDrawable.
Signed-off-by: Ian Romanick ian.d.roman...@intel.com
Cc: 9.2 mesa-sta...@lists.freedesktop.org
---
src/glx/glx_pbuffer.c | 14 --
1 file
https://bugs.freedesktop.org/show_bug.cgi?id=67962
Chad Versace chad.vers...@linux.intel.com changed:
What|Removed |Added
CC|
On 08/11/2013 03:50 AM, davya...@free.fr wrote:
This looks good to me, but commit messages should have a prefix
indicating which component is changed. In your case it's gallium:
and intel:, respectively.
Marek
Ok, I've suppressed some trailing spaces and changed the commit message.
And
https://bugs.freedesktop.org/show_bug.cgi?id=67962
--- Comment #5 from Chad Versace chad.vers...@linux.intel.com ---
Artie, I wrote the guilty commit. Next time I'm the guilty one, please add me
to bugs CC list.
--
You are receiving this mail because:
You are the assignee for the bug.
On Mon, Aug 12, 2013 at 2:29 PM, Ian Romanick i...@freedesktop.org wrote:
On 08/11/2013 03:50 AM, davya...@free.fr wrote:
This looks good to me, but commit messages should have a prefix
indicating which component is changed. In your case it's gallium:
and intel:, respectively.
Marek
Ok,
On 08/11/2013 03:50 AM, davya...@free.fr wrote:
This looks good to me, but commit messages should have a prefix
indicating which component is changed. In your case it's gallium:
and intel:, respectively.
Marek
Ok, I've suppressed some trailing spaces and changed the commit message.
On 08/11/2013 08:27 AM, Armin K wrote:
Link to internal libwayland-drm library if Wayland
EGL platform is enabled. The library needs to be
built before gbm.
Link to libdrm if gbm_dri is enabled, otherwise
library will report undefined references to
libdrm symbols when using libgbm without
On Tue, Aug 13, 2013 at 7:36 AM, Stéphane Marchesin
stephane.marche...@gmail.com wrote:
On Mon, Aug 12, 2013 at 2:29 PM, Ian Romanick i...@freedesktop.org wrote:
On 08/11/2013 03:50 AM, davya...@free.fr wrote:
This looks good to me, but commit messages should have a prefix
indicating which
This series, including the abs overload, is
Reviewed-by: Chad Versace chad.vers...@linux.intel.com
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev
On Mon, Aug 12, 2013 at 3:05 PM, Marek Olšák mar...@gmail.com wrote:
On Mon, Aug 12, 2013 at 11:36 PM, Stéphane Marchesin
stephane.marche...@gmail.com wrote:
Other than hybrid systems (of which
there are none with i915 graphics), is there any case where
__DRI_IMAGE_USE_SHARE can occur?
You
Hi,
The attached patches expand a few more vector operations and also move the
expansion code into AMDGPUISelLowering.cpp so it can be shared between R600 and
SI.
-Tom
From a519e387c262ecc0282eb8cb1e2c8802725591b4 Mon Sep 17 00:00:00 2001
From: Tom Stellard thomas.stell...@amd.com
Date: Fri, 2
On 08/09/2013 04:38 PM, Ian Romanick wrote:
From: Ian Romanick ian.d.roman...@intel.com
Previously we would emit a warning for empty declarations like
float;
We would also emit the same warning for things like
highp float;
However, this second case is most likely the application trying to
On 08/09/2013 04:38 PM, Ian Romanick wrote:
From: Ian Romanick ian.d.roman...@intel.com
This is required by the spec, and it's a bit tricky because the default
precision is scoped. As a result, I'm slightly abusing the symbol
table.
Fixes piglit no-default-float-precision.frag tests and the
It'll take me a while to attempt to parse everything that's going on
in these patches (and your resource descriptor types series that this
depends on), but I have sent it all through a piglit run on Evergreen
(Cedar). Everything was latest Mesa/LLVM/libclc upstream code as of
today.
Baseline:
From: Roland Scheidegger srol...@vmware.com
Newer graphic languages don't want messy float mask results but instead true
boolean mask results for float comparisons. Otherwise just need to convert
the floats back to integers. Need to keep the old opcodes however due to both
legacy (gl and d3d9)
From: Roland Scheidegger srol...@vmware.com
Also while here add a bunch of other forgotten (integer) instructions to
tgsi_util_get_inst_usage_mask() (which isn't used for much except optimizing
away unused input components), though it may still be incomplete.
---
From: Roland Scheidegger srol...@vmware.com
FSEQ/FSGE/FSLT/FSNE work just the same as SEQ/SGE/SLT/SNE except skip the
select.
And just for consistency use the same appropriate ordered/unordered comparisons
for the old opcodes as well.
---
src/gallium/auxiliary/gallivm/lp_bld_tgsi_action.c | 81
Nice. The entire series looks good.
Reviewed-by: Zack Rusin za...@vmware.com
- Original Message -
From: Roland Scheidegger srol...@vmware.com
FSEQ/FSGE/FSLT/FSNE work just the same as SEQ/SGE/SLT/SNE except skip the
select.
And just for consistency use the same appropriate
From: Dave Airlie airl...@redhat.com
This was broken when arrayid was added.
Signed-off-by: Dave Airlie airl...@redhat.com
---
src/gallium/auxiliary/tgsi/tgsi_build.c | 2 +-
src/gallium/renderer/virgl_hw.h | 39 +
2 files changed, 40 insertions(+), 1
Calling the prepare outputs cleans up the slot assignments
for outputs, unfortunately aapoint and aaline didn't have
code to reset their slots after the initial setup, this
was messing up our slot assignments. The unfilled stage
was just missing the initial assignment of the face slot.
This fixes
On Sat, Aug 10, 2013 at 08:50:31PM +0200, Marek Olšák wrote:
Signed-off-by: Marek Olšák marek.ol...@amd.com
You will need to add a test case to this commit, but otherwise the whole
series is:
Reviewed-by: Tom Stellard t...@stellard.net
Do you have commit access yet?
-Tom
---
https://bugs.freedesktop.org/show_bug.cgi?id=67740
--- Comment #2 from Henry henry_rosario_gonza...@hotmail.com ---
from the tarball.
./configure --prefix=/local PYTHON2=/local/bin/python2.7
--
You are receiving this mail because:
You are the assignee for the bug.
Since 8d29b52 wayland 1.2.0 is required.--- configure.ac2013-08-12 13:17:10.0 +0200
+++ configure.ac2013-08-12 13:19:15.0 +0200
@@ -1433,7 +1433,7 @@ egl_platforms=`IFS=', '; echo $with_egl_
for plat in $egl_platforms; do
case $plat in
wayland)
-
78 matches
Mail list logo