[Mesa-dev] [PATCH 09/21] r600/sb: disable if conversion for hs

2018-01-09 Thread Dave Airlie
From: Dave Airlie This fixes bad interactions with the LDS special values. --- src/gallium/drivers/r600/sb/sb_core.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/r600/sb/sb_core.cpp b/src/gallium/drivers/r600/sb/sb_core.cpp index cdc2862d36

[Mesa-dev] [PATCH 06/21] r600/sb: update last_cf if alu is the last clause

2018-01-09 Thread Dave Airlie
From: Dave Airlie It's rare to have a final alu clause on normal shaders (exports) but tess shaders write to LDS as their output, so we see some alu clauses, and the CF_END get put in the wrong place. This makes sure to update last_cf correctly. Signed-off-by: Dave Airlie --- src/ga

[Mesa-dev] [PATCH 05/21] r600/sb: start adding GDS support

2018-01-09 Thread Dave Airlie
From: Dave Airlie This adds support for GDS ops to sb backend. This seems to work for atomics and tess factor writes. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/r600_isa.h| 2 +- src/gallium/drivers/r600/sb/sb_bc.h| 7 src/gallium/drivers/r600/sb

[Mesa-dev] [PATCH 04/21] r600/sb: add tess/compute initial state registers.

2018-01-09 Thread Dave Airlie
From: Dave Airlie This stops them being optimised out. --- src/gallium/drivers/r600/sb/sb_bc_parser.cpp | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/r600/sb/sb_bc_parser.cpp b/src/gallium/drivers/r600/sb/sb_bc_parser.cpp index ae92a767b4

[Mesa-dev] [PATCH 07/21] r600/sb: introduce special register values for lds support.

2018-01-09 Thread Dave Airlie
From: Dave Airlie For LDS read/write ordering we use the LDS_RW value, reads will wait on previous writes. For LDS read/read from LDS queue ordering we use the LDS_OQ values, we define two for now, though initially we'll just support OQA. Also add the check for the lds oq values Signed-o

[Mesa-dev] [PATCH 11/21] r600/sb: add finalising for lds output queue special values.

2018-01-09 Thread Dave Airlie
From: Dave Airlie We need to convert these to the hw special registers. --- src/gallium/drivers/r600/sb/sb_bc_finalize.cpp | 12 1 file changed, 12 insertions(+) diff --git a/src/gallium/drivers/r600/sb/sb_bc_finalize.cpp b/src/gallium/drivers/r600/sb/sb_bc_finalize.cpp index

[Mesa-dev] r600 sb tessellation support

2018-01-09 Thread Dave Airlie
This is an attempt to add tessellation support to the SB backend. The main things needed are GDS access which is used for tess factor storage (also used for atomic counters), and LDS access which is needed to pass all the data between stages. The first 19 patches are the stuff I'm happy with, the

[Mesa-dev] [PATCH 02/21] r600/shader: only emit add instruction if param has a value.

2018-01-09 Thread Dave Airlie
From: Dave Airlie Just saves a pointless a = a + 0; Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/r600_shader.c | 14 -- 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index

Re: [Mesa-dev] [PATCH 2/2] radv: Implement VK_EXT_discard_rectangles.

2018-01-09 Thread Dave Airlie
On 10 January 2018 at 12:34, Bas Nieuwenhuizen wrote: > Tested with a modified deferred demo and no regressions in a 1.0.2 > mustpass run. For the series: Reviewed-by: Dave Airlie > --- > src/amd/vulkan/radv_cmd_buffer.c | 51 > +++ &g

Re: [Mesa-dev] [PATCH] r600: Allow egd_tables.py to run with python3 too

2018-01-09 Thread Dave Airlie
On 5 January 2018 at 01:14, Michal Srb wrote: > From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= > > Makes the egd_tables.py compatible with both python 2 and 3. This appears to break the build here, I get a few () lines in the output. I suspect print() needs to be print('') Dave. > --- > sr

[Mesa-dev] [PATCH] r600: add support for ARB_shader_clock.

2018-01-09 Thread Dave Airlie
From: Dave Airlie --- docs/features.txt | 2 +- src/gallium/drivers/r600/r600_pipe.c | 2 +- src/gallium/drivers/r600/r600_shader.c | 29 ++--- src/gallium/drivers/r600/r600_sq.h | 3 ++- 4 files changed, 30 insertions(+), 6 deletions

Re: [Mesa-dev] [RFC PATCH 0/6] r600: speed up tesselation shaders

2018-01-08 Thread Dave Airlie
On 8 January 2018 at 17:12, Dave Airlie wrote: > On 6 January 2018 at 03:41, Gert Wollny wrote: >> Am Freitag, den 05.01.2018, 18:18 +0100 schrieb Gert Wollny: >>> >>> Well, I have tested some piglits now and the behaviour is quite >>> wired: >>> >

Re: [Mesa-dev] [RFC PATCH 0/6] r600: speed up tesselation shaders

2018-01-07 Thread Dave Airlie
On 6 January 2018 at 03:41, Gert Wollny wrote: > Am Freitag, den 05.01.2018, 18:18 +0100 schrieb Gert Wollny: >> >> Well, I have tested some piglits now and the behaviour is quite >> wired: >> >> When I run nop as the very first piglit after booting the machine it >> works. After running other pig

Re: [Mesa-dev] [PATCH] ac: rework emit_barrier() to not segfault on radeonsi

2018-01-07 Thread Dave Airlie
On 8 January 2018 at 16:45, Timothy Arceri wrote: > nir_to_llvm_context will always be NULL for radeonsi so we need > work around this. Reviewed-by: Dave Airlie > --- > src/amd/common/ac_nir_to_llvm.c | 17 - > 1 file changed, 8 insertions(+), 9 deletions(-) &

Re: [Mesa-dev] [PATCH 3/3] radv: Implement VK_ANDROID_native_buffer.

2018-01-07 Thread Dave Airlie
. The current WSI already has some magic flags to pass things like the no space for cmask flag. For all 3: Reviewed-by: Dave Airlie Dave. > --- > src/amd/vulkan/Makefile.am | 7 + > src/amd/vulkan/Makefile.sources | 3 + > src/amd

Re: [Mesa-dev] [RFC PATCH 0/6] r600: speed up tesselation shaders

2017-12-28 Thread Dave Airlie
On 29 December 2017 at 16:38, Dave Airlie wrote: > On 11 December 2017 at 22:49, Gert Wollny wrote: >> Am Freitag, den 08.12.2017, 16:30 +1000 schrieb Dave Airlie: >>> [snip] >>> >>> So I haven't commited these yet, because I wanted to see if I could >

Re: [Mesa-dev] [RFC PATCH 0/6] r600: speed up tesselation shaders

2017-12-28 Thread Dave Airlie
On 11 December 2017 at 22:49, Gert Wollny wrote: > Am Freitag, den 08.12.2017, 16:30 +1000 schrieb Dave Airlie: >> [snip] >> >> So I haven't commited these yet, because I wanted to see if I could >> get sb to work. > Well, it was very much work in progress, I di

[Mesa-dev] [PATCH] radv/gfx9: use correct swizzle parameter to work out border swizzle.

2017-12-28 Thread Dave Airlie
From: Dave Airlie This should fix: dEQP-VK.pipeline.sampler.view_type.*.format.b4g4r4a4_unorm_pack16.address_modes.all_mode_clamp_to_border_opaque_black and a few others in that area. Fixes: b11c4a5546 (radv: add texture descriptor/fmask/cmask support for GFX9) Signed-off-by: Dave Airlie

[Mesa-dev] [PATCH] radv/gfx9: use a bigger hammer to flush cb/db caches.

2017-12-28 Thread Dave Airlie
From: Dave Airlie amdvlk is probably more subtle than this but it never uses the inv cb/db variants, we fail some CTS tests without this. Fixes: dEQP-VK.renderpass.dedicated_allocation.formats.d32_sfloat_s8_uint.input*. Fixes: c2fbeb7ca05 (radv: add GFX9 cache flushing support.) Signed-off-by

[Mesa-dev] [PATCH] radv/gfx9: fix block compression texture views.

2017-12-28 Thread Dave Airlie
From: Dave Airlie This ports a fix from amdvlk, to fix the sizing for mip levels when block compressed images are viewed using uncompressed views. Fixes: dEQP-VK.image.texel_view_compatible.graphic.extended*bc* Fixes: e38685cc62e 'Revert "radv: disable support for VEGA for now."

[Mesa-dev] [PATCH 2/3] radv/gfx9: fix 3d image clears on compute queues

2017-12-28 Thread Dave Airlie
From: Dave Airlie This fixes some of the broken: dEQP-VK.synchronization.op.multi_queue.*64x64x8* tests. Fixes: e38685cc62e 'Revert "radv: disable support for VEGA for now."' Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_meta_bufimage.c | 73 ++

[Mesa-dev] [PATCH 1/3] radv/gfx9: fix 3d image to image transfers on compute queues.

2017-12-28 Thread Dave Airlie
From: Dave Airlie This fixes some of the broken: dEQP-VK.synchronization.op.multi_queue.*64x64x8* tests. Fixes: e38685cc62e 'Revert "radv: disable support for VEGA for now."' Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_meta_bufimage.c | 75 ++

[Mesa-dev] [PATCH 3/3] radv/gfx9: fix buffer to image for 3d images on compute queues

2017-12-28 Thread Dave Airlie
From: Dave Airlie This fixes some of the broken: dEQP-VK.synchronization.op.multi_queue.*64x64x8* tests. Fixes: e38685cc62e 'Revert "radv: disable support for VEGA for now."' Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_meta_bufimage.c | 62 ++

[Mesa-dev] [PATCH] radv: fix pipeline statistics end query on compute queue

2017-12-27 Thread Dave Airlie
From: Dave Airlie It's legal to a pipeline stat query on a compute queue, but we'd emit the wrong packet here. This should fix it to emit the correct packet. Noticed while inspecting the mpv hang. Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_query.c | 2 +- 1 file changed, 1

[Mesa-dev] [PATCH] radv: fix events on compute queues.

2017-12-27 Thread Dave Airlie
From: Dave Airlie The event emission wasn't sending the correct packet for gfx8 compute queues, which explains why it works on vega fine. This fixes the mpv vulkan hang. Fixes: ad61eac250 (radv: factor out eop event writing code. (v2)) Signed-off-by: Dave Airlie --- src/amd/v

[Mesa-dev] [PATCH] radv: move local bos usage to a perftest flag.

2017-12-27 Thread Dave Airlie
From: Dave Airlie These seem mildly unstable on vega, crashing CTS in various fun ways, and looks like leaking memory. Disable for now, but leave the option to enable them. Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_debug.h | 1 + src/amd/vulkan/radv_device.c

[Mesa-dev] [PATCH] [rfc] radv: choose 32-bit abgr export for f16 formats.

2017-12-27 Thread Dave Airlie
From: Dave Airlie This fixes: dEQP-VK.image.texel_view_compatible.graphic.basic.attachment_read.bc*r16g16b16a16_sfloat dEQP-VK.image.extended_usage_bit.attachment_write.r16_sfloat I've no idea if it's correct though. Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_pipeline.c

Re: [Mesa-dev] [PATCH 2/2] r600: fix textureSize queries with tbos

2017-12-27 Thread Dave Airlie
7;d still need the buffer as it's unfixable since the hw requires > always 0 unfortunately.) For the series: Reviewed-by: Dave Airlie from previous experiments the hw doesn't work at all using vc fetch or otherwise. Dave. ___ mesa-dev mai

[Mesa-dev] [PATCH] vulkan/wsi: free cmd pools

2017-12-27 Thread Dave Airlie
From: Dave Airlie We destroy the pools but don't free the container. This fixes: dEQP-VK.wsi.xlib.swapchain.simulate_oom* Fixes: d50937f137 (vulkan/wsi: Implement prime in a completely generic way) Signed-off-by: Dave Airlie --- src/vulkan/wsi/wsi_common.c | 1 + 1 file changed, 1 inse

Re: [Mesa-dev] [PATCH] radv: Use correct frambuffer size for partial FS resolves.

2017-12-27 Thread Dave Airlie
> Framebuffer is from 0,0, not (dst.x, dst.y). > > Fixes: 69136f4e633 "radv/meta: add resolve pass using fragment/vertex shaders" Reviewed-by: Dave Airlie Dave. ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://li

[Mesa-dev] [PATCH] radv: don't do format replacement on tc compat htile surfaces.

2017-12-26 Thread Dave Airlie
From: Dave Airlie For copies the texture unit needs to know the depth format so it can read the htile data properly. This fixes: dEQP-VK.renderpass.suballocation.formats.d32_sfloat_s8_uint.load.clear Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_meta_copy.c | 3 ++- 1 file changed, 2

[Mesa-dev] [PATCH] radv/gfx9: use correct stencil format for tc compat htile.

2017-12-26 Thread Dave Airlie
From: Dave Airlie This needs to correspond to the bit depth of the Z plane. noticed in passing reading amdvlk. Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_image.c | 9 ++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan

Re: [Mesa-dev] [PATCH 1/5] radv: Invert condition for all samples identical during resolve.

2017-12-26 Thread Dave Airlie
On 27 December 2017 at 10:20, Bas Nieuwenhuizen wrote: > the samples_identical instruction returns 0 if they are differet, so > we have to do the extra work if the result is 0, not if it is != 0. > I think I lost the logic trail on this code a few times. Patches look good. Reviewed

[Mesa-dev] [PATCH 2/2] radeonsi: don't do cmask fast clears on gfx9 single sample

2017-12-26 Thread Dave Airlie
From: Dave Airlie AMDVLK says that these don't work, so disable them. Signed-off-by: Dave Airlie --- src/gallium/drivers/radeonsi/si_clear.c | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeonsi/si_clear.c b/src/gallium/drivers/rad

[Mesa-dev] [PATCH 1/2] radv/gfx9: don't allocate cmask for single sampled surfaces.

2017-12-26 Thread Dave Airlie
From: Dave Airlie From AMDVLK fast clears don't work with cmask on gfx9, only with dcc, so we don't need to allocate cmask for single sampled surfaces. Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_image.c | 10 -- 1 file changed, 8 insertions(+), 2 deletions(-) diff -

[Mesa-dev] [PATCH 2/3] radv/radeonsi: set dcc min uncompressed properly for APUs.

2017-12-26 Thread Dave Airlie
From: Dave Airlie This is ported from amdvlk. Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_device.c| 10 ++ src/gallium/drivers/radeonsi/si_state.c | 9 + 2 files changed, 19 insertions(+) diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan

[Mesa-dev] [PATCH 3/3] radv: set some dcc parameters depending on if texture will be sampled

2017-12-26 Thread Dave Airlie
From: Dave Airlie This is ported from amdvlk which sets the independent 64b blocks only for image which will sample dcc. I'm not sure how to port this to radeonsi. Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_device.c | 11 ++- 1 file changed, 10 insertions(+), 1 del

[Mesa-dev] [PATCH 1/3] amd/common/radv/radeonsi: use register defines for dcc block sizes.

2017-12-26 Thread Dave Airlie
From: Dave Airlie These are just taken from amdvlk, we probably knew these already, but may as well port them now. Signed-off-by: Dave Airlie --- src/amd/common/sid.h| 6 ++ src/amd/vulkan/radv_device.c| 6 +++--- src/gallium/drivers/radeonsi/si_state.c | 6

Re: [Mesa-dev] [PATCH] [rfc] radv: load depth clear regs for tc compatible depth images.

2017-12-21 Thread Dave Airlie
On 22 December 2017 at 12:14, Dave Airlie wrote: > From: Dave Airlie > > If we are using tc compatible depth image as textures, it seems > that we would need to make sure the depth/stencil clear registers > are reloaded with the correct values before accessing the image. Ignore

[Mesa-dev] [PATCH] [rfc] radv: load depth clear regs for tc compatible depth images.

2017-12-21 Thread Dave Airlie
From: Dave Airlie If we are using tc compatible depth image as textures, it seems that we would need to make sure the depth/stencil clear registers are reloaded with the correct values before accessing the image. This was a failed attempt to fix dEQP

Re: [Mesa-dev] radv: gfx9 3d image fixes

2017-12-21 Thread Dave Airlie
On 21 December 2017 at 19:52, Alex Smith wrote: > Nice - this does fix the issue I was seeing, thanks. > > Can at least patches 2 and 3 go to stable? Yes once I get some review I'll tag those two for stable. Dave. ___ mesa-dev mailing list mesa-dev@lis

[Mesa-dev] [PATCH 1/2] radv: handle depth/stencil image copy with layouts better. (v3)

2017-12-20 Thread Dave Airlie
From: Dave Airlie If we are doing a general->general transfer with HIZ enabled, we want to hit the tile surface disable bits in radv_emit_fb_ds_state, however we never get the current layout to know we are in general and meta hardcoded the transfer layout which is always tile enabled. T

[Mesa-dev] [PATCH 2/2] radv/meta: fix blit paths for depth/stencil (v2)

2017-12-20 Thread Dave Airlie
From: Dave Airlie This fixes the layout issue for the blit path as well. This fixes: dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.depth_stencil.d32_sfloat_s8_uint_d32_sfloat_s8_uint* v2: use compatible render passes. Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_meta_blit.c

[Mesa-dev] [PATCH 2/2] radv/meta: fix blit paths for depth/stencil

2017-12-20 Thread Dave Airlie
From: Dave Airlie This fixes the layout issue for the blit path as well. This fixes: dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.depth_stencil.d32_sfloat_s8_uint_d32_sfloat_s8_uint* Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_meta_blit.c | 537

[Mesa-dev] [PATCH 1/2] radv: handle depth/stencil image copy with layouts better. (v2)

2017-12-20 Thread Dave Airlie
From: Dave Airlie If we are doing a general->general transfer with HIZ enabled, we want to hit the tile surface disable bits in radv_emit_fb_ds_state, however we never get the current layout to know we are in general and meta hardcoded the transfer layout which is always tile enabled. T

[Mesa-dev] [PATCH] radv: handle depth/stencil image copy with layouts better.

2017-12-20 Thread Dave Airlie
From: Dave Airlie If we are doing a general->general transfer with HIZ enabled, we want to hit the tile surface disable bits in radv_emit_fb_ds_state, however we never get the current layout to know we are in general and meta hardcoded the transfer layout which is always tile enabled. T

Re: [Mesa-dev] [PATCH] Revert "radv: do not allocate CMASK or DCC for small surfaces"

2017-12-20 Thread Dave Airlie
> wrote: >> This reverts commit ff0f17da1446e7aa965e06c04a6ad5a55d95463d.>> >> See the TODO. I think I've sent the correct fix now. Dave. ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev

[Mesa-dev] [PATCH] radv: fix issue with multisample positions and interp_var_at_sample.

2017-12-20 Thread Dave Airlie
From: Dave Airlie This fixes vmfaults seen on vega with: dEQP-VK.pipeline.multisample_interpolation.sample_interpolate_at_single_sample_.128_128_1.samples_1 These were caused by the don't allocate cmask but it was just accidental. The actual problem was the shader was trying to get the s

[Mesa-dev] [PATCH 2/4] radv/gfx9: add 3d sampler image->buffer copy shader. (v3)

2017-12-20 Thread Dave Airlie
From: Dave Airlie On GFX9 we must access 3D textures with 3D samplers AFAICS. This fixes: dEQP-VK.api.image_clearing.core.clear_color_image.3d.single_layer on GFX9 for me. v1.1: fix tex->sampler_dim to dim v2: send layer in from outside v3: don't regress on pre-gfx9 Fixes: e38

[Mesa-dev] [PATCH 3/4] radv/gfx9: add support for 3d images to blit 2d paths

2017-12-20 Thread Dave Airlie
From: Dave Airlie This add support for a 3D image reading path to the blit 2d paths, like I did for the clear paths. Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_meta_blit2d.c | 110 +++--- src/amd/vulkan/radv_private.h | 10 ++-- 2 files changed, 97

[Mesa-dev] [PATCH 1/4] radv: fix surface max layer count

2017-12-20 Thread Dave Airlie
From: Dave Airlie looking at traces I noticed we'd set slice_max too large sometimes. This should fix it. Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_device.c | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/amd/vulkan/radv_device.c b/sr

[Mesa-dev] [PATCH 4/4] radv: refactor blit2d pipeline creation

2017-12-20 Thread Dave Airlie
From: Dave Airlie This just refactors the gfx9 blit2d pipeline creation to be less lines of code. Signed-off-by: Dave Airlie --- src/amd/vulkan/radv_meta_blit2d.c | 111 -- 1 file changed, 33 insertions(+), 78 deletions(-) diff --git a/src/amd/vulkan

[Mesa-dev] radv: gfx9 3d image fixes

2017-12-20 Thread Dave Airlie
This series fixes about 340 CTS tests on Vega that involve 3D images. The two main things are to use 3D samplers for copy paths sources that are 3D images. I've also found another bug, and refactors a bit of code at the end. I've also test this on a tonga and tests don't seem to break. Dave. _

Re: [Mesa-dev] [PATCH] radv/gfx9: add 3d sampler image->buffer copy shader. (v2)

2017-12-20 Thread Dave Airlie
On 21 December 2017 at 03:46, Alex Smith wrote: > Looks like blit2d needs this fix as well - been debugging an issue that's > turned out to be due to a corrupted copy of a 3D texture with CmdCopyImage. > I can do that tomorrow. I already wrote that as well, https://github.com/airlied/mesa/tree/r

[Mesa-dev] [PATCH] radv/gfx9: add 3d sampler image->buffer copy shader. (v2)

2017-12-18 Thread Dave Airlie
From: Dave Airlie On GFX9 we must access 3D textures with 3D samplers AFAICS. This fixes: dEQP-VK.api.image_clearing.core.clear_color_image.3d.single_layer on GFX9 for me. v2: fixes a bunch of other tests as well. v1.1: fix tex->sampler_dim to dim v2: send layer in from outside Fi

[Mesa-dev] [PATCH] radv/gfx9: add 3d sampler image->buffer copy shader.

2017-12-18 Thread Dave Airlie
From: Dave Airlie On GFX9 we must access 3D textures with 3D samplers AFAICS. This fixes: dEQP-VK.api.image_clearing.core.clear_color_image.3d.single_layer on GFX9 for me. Fixes: e38685cc62e 'Revert "radv: disable support for VEGA for now."' Signed-off-by: Dave Airlie

[Mesa-dev] [PATCH 2/2] ac/nir: fix lds store for patch outputs.

2017-12-17 Thread Dave Airlie
From: Dave Airlie This wasn't calculating the correct value, this along with a nir patch fixes a regression in: dEQP-VK.tessellation.shader_input_output.barrier Fixes: 043d14db30a (ac/nir: don't write tcs outputs to LDS that aren't read back.) Signed-off-by: Dave Airlie ---

[Mesa-dev] [PATCH 1/2] nir/linking: always set the used_across_stages/outputs_read bits

2017-12-17 Thread Dave Airlie
From: Dave Airlie If we don't remap and output this code would trample the outputs read bits. This fixes a regression in dEQP-VK.tessellation.shader_input_output.barrier Fixes: 1c9c42d16b4c (nir: add varying component packing helpers) Signed-off-by: Dave Airlie --- src/compile

[Mesa-dev] [PATCH] radv: port merge tess info from anv

2017-12-17 Thread Dave Airlie
From: Dave Airlie anv merges the tess info correctly, but radv wasn't doing this. This fixes hangs in dEQP-VK.tessellation.winding.default_domain.hlsl_triangles_ccw Fixes: 60fc0544e0 (radv/pipeline: handle tessellation shader compilation) Signed-off-by: Dave Airlie --- src/amd/v

Re: [Mesa-dev] [PATCH 1/6] configure/meson: Bump libdrm_amdgpu version requirement.

2017-12-17 Thread Dave Airlie
On 17 December 2017 at 10:11, Bas Nieuwenhuizen wrote: > For the radv dependencies on syncobj signal/reset. I've released 2.4.89 with those patches, So, for the series, Reviewed-by: Dave Airlie Dave. ___ mesa-dev mailing list

Re: [Mesa-dev] [PATCH] radv: Fix multi-layer blits.

2017-12-17 Thread Dave Airlie
On 18 December 2017 at 09:11, Bas Nieuwenhuizen wrote: > We did not set the layer correctly for the dst, as we would keep > using the base layer. Same for the source image. > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102710 > CC: Reviewed-by: Dave Airlie &

Re: [Mesa-dev] [RFC PATCH 0/6] r600: speed up tesselation shaders

2017-12-07 Thread Dave Airlie
On 15 November 2017 at 19:29, Gert Wollny wrote: > Dear all, > > since on r600 the tesselation shaders don't go through the sb-optimizer I > though it might help to improve performance by applying some optimizations > to the created assembly. The patches are experimental but to a point where > I t

[Mesa-dev] [PATCH 1/2] r600/sb: add compute initial state registers.

2017-12-06 Thread Dave Airlie
From: Dave Airlie This stops them being optimised out. --- src/gallium/drivers/r600/sb/sb_bc_parser.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/gallium/drivers/r600/sb/sb_bc_parser.cpp b/src/gallium/drivers/r600/sb/sb_bc_parser.cpp index ae92a767b4c..8a4abd48306 100644 --- a

[Mesa-dev] [PATCH 2/2] r600/sb: start adding GDS support

2017-12-06 Thread Dave Airlie
From: Dave Airlie This adds support for GDS ops to sb backend. It seems to work for atomic counters on cayman, probably needs a lot more testing. --- src/gallium/drivers/r600/r600_isa.h| 2 +- src/gallium/drivers/r600/sb/sb_bc.h| 7 + src/gallium/drivers/r600/sb

[Mesa-dev] [rfc] r600 sb improvements (compute/gds)

2017-12-06 Thread Dave Airlie
This is a first pass at adding GDS support to the r600/sb backend, along with a small compute shader fix. For compute shaders, LDS needs supporting as well. Dave. ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mai

Re: [Mesa-dev] [RFC] r600/evergreen compute shader + glsl 4.30 support

2017-12-06 Thread Dave Airlie
On 30 November 2017 at 22:06, Gert Wollny wrote: > Am Donnerstag, den 30.11.2017, 17:56 +1000 schrieb Dave Airlie: >> On 30 November 2017 at 17:20, Gert Wollny >> wrote: >> > Am Donnerstag, den 30.11.2017, 09:30 +1000 schrieb Dave Airlie: >> > > On 29

Re: [Mesa-dev] [PATCH 1/1] radv: use a faster version for nir_op_pack_half_2x16

2017-12-05 Thread Dave Airlie
and because I guess the rounding mode behaviour is similar between > GL and VK, we can use it. About performance, it improves Talos > by +3/4% but I don't see any other impacts. > > No CTS regressions on Polaris (Vega in progress). Seems like a good plan. Reviewed-by: Dave Airlie

[Mesa-dev] [PATCH 2/6] r600/shader: fix ssbo atomic operations formats.

2017-12-05 Thread Dave Airlie
From: Dave Airlie Don't try and use the image format for ssbo, just 32-bit uint. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/r600_shader.c | 16 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/ga

[Mesa-dev] [PATCH 5/6] r600/ssbo: fix multi-dword buffer loads.

2017-12-05 Thread Dave Airlie
From: Dave Airlie This fixes loading from different channels. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/r600_shader.c | 12 +++- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c

[Mesa-dev] [PATCH 4/6] r600/ssbo: use r32ui format for ssbo resources.

2017-12-05 Thread Dave Airlie
From: Dave Airlie This works best for returning the correct values and sizes in tests. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/evergreen_state.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium

[Mesa-dev] [PATCH 6/6] r600/ssbo: refactor out buffer coord calcs and use for atomic path.

2017-12-05 Thread Dave Airlie
From: Dave Airlie The atomic rat path has a bug in the ssbo path, refactor out the address calcs from the load/store paths and reuse to fix the bug in the buffer rat atomic path. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/r600_shader.c | 71 ++ 1

[Mesa-dev] [PATCH 3/6] r600: refactor out the immediate setup code.

2017-12-05 Thread Dave Airlie
From: Dave Airlie This just refactors the same code out of the images/buffers paths. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/evergreen_state.c | 66 +- 1 file changed, 28 insertions(+), 38 deletions(-) diff --git a/src/gallium/drivers/r600

[Mesa-dev] [PATCH 1/6] r600/shader: fix thread id loading.

2017-12-05 Thread Dave Airlie
From: Dave Airlie This just changes how thread id loading is done, it makes smaller shaders if we don't use thread id gprs. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/r600_shader.c | 27 ++- 1 file changed, 18 insertions(+), 9 deletions(-) diff --

[Mesa-dev] r600 ssbo/image fixes

2017-12-05 Thread Dave Airlie
I've been running deqp-gles31 over the r600 ssbo/image code it uses compute shaders, but I've found a few bugs in the in-tree code, so just sending some fixes out for those first. ssbo seems to pass all the tests, images have some heisenbug where they pass sometimes and not others. Dave. ___

[Mesa-dev] [PATCH] r600/atomic: add cayman version of atomic save/restore from GDS (v2)

2017-12-05 Thread Dave Airlie
From: Dave Airlie On Cayman we don't use the append/consume counters (fglrx doesn't) and they don't seem to work well with compute shaders. This just uses GDS instead to do the atomic operations. v1.1: remove unused line. v2: use EOS on cayman, it appears to work. Signed-off-

Re: [Mesa-dev] [PATCH 2/2] r600/atomic: add cayman version of atomic save/restore from GDS

2017-12-03 Thread Dave Airlie
On 1 December 2017 at 20:49, Nicolai Hähnle wrote: > On 01.12.2017 06:06, Dave Airlie wrote: >> >> From: Dave Airlie >> >> On Cayman we don't use the append/consume counters (fglrx doesn't) >> and they don't seem to work well with compute sha

[Mesa-dev] [PATCH 2/2] r600/atomic: add cayman version of atomic save/restore from GDS

2017-11-30 Thread Dave Airlie
From: Dave Airlie On Cayman we don't use the append/consume counters (fglrx doesn't) and they don't seem to work well with compute shaders. This just uses GDS instead to do the atomic operations. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/evergre

[Mesa-dev] [PATCH 1/2] r600/atomic: refactor out evergreen atomic setup/save code.

2017-11-30 Thread Dave Airlie
From: Dave Airlie For cayman we want to use different code paths. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/evergreen_state.c | 80 +++--- 1 file changed, 50 insertions(+), 30 deletions(-) diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src

[Mesa-dev] r600: cayman atomic gds support

2017-11-30 Thread Dave Airlie
There appears to be some bad interaction with the append/consume counters on cayman (and compute shaders at least). I traced fglrx and it appears it directly uses GDS memory. This adds cayman specific paths to directly use GDS memory for these atomics. Dave. _

Re: [Mesa-dev] [RFC] r600/evergreen compute shader + glsl 4.30 support

2017-11-29 Thread Dave Airlie
On 30 November 2017 at 17:20, Gert Wollny wrote: > Am Donnerstag, den 30.11.2017, 09:30 +1000 schrieb Dave Airlie: >> On 29 November 2017 at 22:46, Gert Wollny >> wrote: >> > >> > >> > I run the arb_compute_shader piglits on BARTS, the piglits >>

Re: [Mesa-dev] [RFC] r600/evergreen compute shader + glsl 4.30 support

2017-11-29 Thread Dave Airlie
On 29 November 2017 at 14:36, Dave Airlie wrote: > This set of patches enables compute shaders on r600 and exposes GLSL 4.30 > support. They are pretty alpha level, but I'd like to land some of them > (maybe disabled) so I can avoid the rebasing fun with the more intrusive > ones

Re: [Mesa-dev] [PATCH] radv: do not allocate CMASK or DCC for small surfaces

2017-11-29 Thread Dave Airlie
like the best place to start. Reviewed-by: Dave Airlie > > Signed-off-by: Samuel Pitoiset > --- > src/amd/vulkan/radv_image.c | 10 ++ > 1 file changed, 10 insertions(+) > > diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c > index c241e369b9..

Re: [Mesa-dev] [RFC] r600/evergreen compute shader + glsl 4.30 support

2017-11-29 Thread Dave Airlie
On 29 November 2017 at 22:46, Gert Wollny wrote: > Am Mittwoch, den 29.11.2017, 14:36 +1000 schrieb Dave Airlie: >> This set of patches enables compute shaders on r600 and exposes GLSL >> 4.30 support. They are pretty alpha level, but I'd like to land some >> of them

[Mesa-dev] [PATCH 14/21] r600/compute: add support for TGSI compute shaders.

2017-11-28 Thread Dave Airlie
From: Dave Airlie This add paths to handle TGSI compute shaders and shader selection. It also avoids emitting certain things on tgsi paths, CBs, vertex buffers, config reg init (not required). --- src/gallium/drivers/r600/evergreen_compute.c | 125 - .../drivers/r600

[Mesa-dev] [PATCH 16/21] r600/compute: handle atomic counters in compute state.

2017-11-28 Thread Dave Airlie
From: Dave Airlie --- src/gallium/drivers/r600/evergreen_compute.c | 9 + 1 file changed, 9 insertions(+) diff --git a/src/gallium/drivers/r600/evergreen_compute.c b/src/gallium/drivers/r600/evergreen_compute.c index 7df1c55..b8e1c20 100644 --- a/src/gallium/drivers/r600

[Mesa-dev] [PATCH 17/21] r600/compute: add support for emitting compute image/buffer atoms

2017-11-28 Thread Dave Airlie
From: Dave Airlie --- src/gallium/drivers/r600/evergreen_compute.c | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/r600/evergreen_compute.c b/src/gallium/drivers/r600/evergreen_compute.c index b8e1c20..c9e649e 100644 --- a/src/gallium/drivers

[Mesa-dev] [PATCH 13/21] r600/texture: drop lowering 1d/2d images to linear.

2017-11-28 Thread Dave Airlie
From: Dave Airlie This appears to cause hangs with compute images. Unless we can find more specifics, just don't do this for now. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/r600_texture.c | 8 1 file changed, 8 deletions(-) diff --git a/src/gallium/drivers

[Mesa-dev] [PATCH 20/21] r600/cs: add compute support to caps

2017-11-28 Thread Dave Airlie
From: Dave Airlie --- src/gallium/drivers/r600/r600_pipe.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c index 01f9bf6..b013d69 100644 --- a/src/gallium/drivers/r600/r600_pipe.c +++ b/src

[Mesa-dev] [PATCH 11/21] r600: add compute support to compressed resource handling.

2017-11-28 Thread Dave Airlie
From: Dave Airlie This just adds support for decompressing compute resources. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/r600_pipe.h | 1 + src/gallium/drivers/r600/r600_state_common.c | 31 ++-- 2 files changed, 26 insertions(+), 6 deletions

[Mesa-dev] [PATCH 08/21] r600/shader: add local memory support to shader assembler.

2017-11-28 Thread Dave Airlie
From: Dave Airlie This is needed for compute shaders. v1.1: make work for vectors, fix missing lds ops. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/r600_shader.c | 165 + 1 file changed, 165 insertions(+) diff --git a/src/gallium/drivers/r600

[Mesa-dev] [PATCH 19/21] r600: add support for compute grid/block sizes.

2017-11-28 Thread Dave Airlie
From: Dave Airlie We just pass these in from outside in a constant buffer. The shader side stores them once they are accessed once. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/evergreen_compute.c | 9 +++- src/gallium/drivers/r600/r600_pipe.h | 3 ++ src/gallium/drivers

[Mesa-dev] [PATCH 21/21] r600: export GLSL 430

2017-11-28 Thread Dave Airlie
From: Dave Airlie --- src/gallium/drivers/r600/r600_pipe.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c index b013d69..e285608 100644 --- a/src/gallium/drivers/r600/r600_pipe.c +++ b/src/gallium

[Mesa-dev] [PATCH 05/21] r600: no need to reinit compute regs

2017-11-28 Thread Dave Airlie
From: Dave Airlie --- src/gallium/drivers/r600/evergreen_compute.c | 13 - 1 file changed, 13 deletions(-) diff --git a/src/gallium/drivers/r600/evergreen_compute.c b/src/gallium/drivers/r600/evergreen_compute.c index 7831b43..ff51ea3 100644 --- a/src/gallium/drivers/r600

[Mesa-dev] [PATCH 06/21] r600/cs: add support for compute to image/buffers/atomics state

2017-11-28 Thread Dave Airlie
From: Dave Airlie This just adds the compute paths to state handling for the main objects --- src/gallium/drivers/r600/evergreen_state.c | 79 ++-- src/gallium/drivers/r600/r600_hw_context.c | 2 + src/gallium/drivers/r600/r600_pipe.h | 6 ++- src/gallium

[Mesa-dev] [PATCH 10/21] r600: update max threads per block for evergreen compute

2017-11-28 Thread Dave Airlie
From: Dave Airlie --- src/gallium/drivers/r600/r600_pipe_common.c | 4 1 file changed, 4 insertions(+) diff --git a/src/gallium/drivers/r600/r600_pipe_common.c b/src/gallium/drivers/r600/r600_pipe_common.c index 23f7d74..b611783 100644 --- a/src/gallium/drivers/r600/r600_pipe_common.c

[Mesa-dev] [PATCH 09/21] r600/shader: add compute support to shader assembler

2017-11-28 Thread Dave Airlie
From: Dave Airlie --- src/gallium/drivers/r600/r600_shader.c | 14 ++ 1 file changed, 14 insertions(+) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index 83b70b0..b3c29b9 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src

[Mesa-dev] [PATCH 03/21] r600: split cb setup code out from evergreen compute path.

2017-11-28 Thread Dave Airlie
From: Dave Airlie This just makes it easier to bypass for TGSI later. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/evergreen_compute.c | 50 1 file changed, 28 insertions(+), 22 deletions(-) diff --git a/src/gallium/drivers/r600/evergreen_compute.c b

[Mesa-dev] [PATCH 12/21] r600: refactor and export some shader selector code for compute

2017-11-28 Thread Dave Airlie
From: Dave Airlie This just moves some code around to make it easier to add compute. --- src/gallium/drivers/r600/r600_pipe.h | 10 ++ src/gallium/drivers/r600/r600_state_common.c | 24 +--- 2 files changed, 27 insertions(+), 7 deletions(-) diff --git a/src

[Mesa-dev] [PATCH 15/21] r600/compute: add support for indirect dispatch

2017-11-28 Thread Dave Airlie
From: Dave Airlie --- src/gallium/drivers/r600/evergreen_compute.c | 28 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/src/gallium/drivers/r600/evergreen_compute.c b/src/gallium/drivers/r600/evergreen_compute.c index b976b61..7df1c55 100644 --- a

[Mesa-dev] [PATCH 04/21] r600: don't set EOP on pop or loop end

2017-11-28 Thread Dave Airlie
From: Dave Airlie This appears to bad, compute shaders hang without it. --- src/gallium/drivers/r600/r600_shader.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index 41af0f5..e72215f 100644

<    3   4   5   6   7   8   9   10   11   12   >