[Mesa-dev] [PATCH 18/18] radeonsi: use R600_RESOURCE_FLAG_UNMAPPABLE where it's desirable

2017-02-16 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeon/r600_texture.c | 11 +-- src/gallium/drivers/radeonsi/si_compute.c | 6 ++-- src/gallium/drivers/radeonsi/si_cp_dma.c| 6 ++-- src/gallium/drivers/radeonsi/si_pipe.c | 12 +--- src/gallium/drivers/radeonsi

[Mesa-dev] [PATCH 17/18] gallium/radeon: add R600_RESOURCE_FLAG_UNMAPPABLE

2017-02-16 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeon/r600_buffer_common.c | 4 ++-- src/gallium/drivers/radeon/r600_pipe_common.h | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/radeon/r600_buffer_common.c b/src/gallium/drivers/radeon

[Mesa-dev] [PATCH 12/18] radeonsi: use a clever alignment for descriptor uploads

2017-02-16 Thread Marek Olšák
From: Marek Olšák Non-VBO descriptors won't be smaller than the cache line, so simply use the cache line size. --- src/gallium/drivers/radeonsi/si_descriptors.c | 11 +++ 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_descriptors.c

[Mesa-dev] [PATCH 2/5] tgsi/lowering: stop using TGSI_OPCODE_CLAMP

2017-02-16 Thread Marek Olšák
From: Marek Olšák --- src/gallium/auxiliary/tgsi/tgsi_lowering.c | 17 + 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/gallium/auxiliary/tgsi/tgsi_lowering.c b/src/gallium/auxiliary/tgsi/tgsi_lowering.c index bf6cbb3..dbe5a71 100644 --- a/src/gallium

[Mesa-dev] [PATCH 4/5] ac/llvm: use min+max instead of AMDGPU.clamp on LLVM 5.0

2017-02-16 Thread Marek Olšák
From: Marek Olšák It selects v_med3_f32, which has the same rate & size. --- src/amd/common/ac_llvm_build.c | 17 + 1 file changed, 17 insertions(+) diff --git a/src/amd/common/ac_llvm_build.c b/src/amd/common/ac_llvm_build.c index 7e8552b..cbc048c 100644 --- a/src/amd/co

[Mesa-dev] [PATCH 1/5] st/mesa: stop using TGSI_OPCODE_CLAMP

2017-02-16 Thread Marek Olšák
From: Marek Olšák --- src/mesa/state_tracker/st_atifs_to_tgsi.c | 14 -- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/src/mesa/state_tracker/st_atifs_to_tgsi.c b/src/mesa/state_tracker/st_atifs_to_tgsi.c index 9c4218e..64879f1 100644 --- a/src/mesa/state_tracker

[Mesa-dev] [PATCH 3/5] radeonsi: stop using TGSI_OPCODE_CLAMP by moving it amd/common

2017-02-16 Thread Marek Olšák
From: Marek Olšák --- src/amd/common/ac_llvm_build.c | 14 ++ src/amd/common/ac_llvm_build.h | 1 + src/gallium/drivers/radeonsi/si_shader.c| 10 +- src/gallium/drivers/radeonsi/si_shader_internal.h | 3 --- src

[Mesa-dev] [PATCH 5/5] gallium: remove TGSI_OPCODE_CLAMP

2017-02-16 Thread Marek Olšák
From: Marek Olšák Not used and not widely supported. Use MIN+MAX instead. --- src/gallium/auxiliary/gallivm/lp_bld_tgsi_action.c | 16 src/gallium/auxiliary/gallivm/lp_bld_tgsi_aos.c | 8 src/gallium/auxiliary/nir/tgsi_to_nir.c | 11

Re: [Mesa-dev] [PATCH 09/18] radeonsi: fix UNSIGNED_BYTE index buffer fallback with non-zero start

2017-02-16 Thread Marek Olšák
On Thu, Feb 16, 2017 at 4:10 PM, Nicolai Hähnle wrote: > On 16.02.2017 13:53, Marek Olšák wrote: >> >> From: Marek Olšák >> >> start can only be non-zero with MultiDrawElements, which is unlikely >> to occur with UNSIGNED_BYTE indices. > > > Do we

Re: [Mesa-dev] [PATCH 12/18] radeonsi: use a clever alignment for descriptor uploads

2017-02-16 Thread Marek Olšák
On Thu, Feb 16, 2017 at 4:17 PM, Nicolai Hähnle wrote: > On 16.02.2017 13:53, Marek Olšák wrote: >> >> From: Marek Olšák >> >> Non-VBO descriptors won't be smaller than the cache line, so simply use >> the cache line size. > > > What about SSBOs? T

Re: [Mesa-dev] [PATCH 15/18] radeonsi: upload constants into VRAM instead of GTT

2017-02-16 Thread Marek Olšák
On Thu, Feb 16, 2017 at 4:21 PM, Nicolai Hähnle wrote: > On 16.02.2017 13:53, Marek Olšák wrote: >> >> From: Marek Olšák >> >> This lowers lgkm wait cycles by 30% on VI and normal conditions. >> The might be a measurable improvement when CE is disabled

[Mesa-dev] [PATCH 2/5] tgsi/lowering: stop using TGSI_OPCODE_CLAMP

2017-02-16 Thread Marek Olšák
From: Marek Olšák v2: do it correctly --- src/gallium/auxiliary/tgsi/tgsi_lowering.c | 17 + 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/gallium/auxiliary/tgsi/tgsi_lowering.c b/src/gallium/auxiliary/tgsi/tgsi_lowering.c index bf6cbb3..c26c13b 100644

[Mesa-dev] [PATCH 1/5] etnaviv: add support for user index buffers

2017-02-17 Thread Marek Olšák
From: Marek Olšák --- src/gallium/auxiliary/util/u_helpers.c| 29 +++ src/gallium/auxiliary/util/u_helpers.h| 5 + src/gallium/drivers/etnaviv/etnaviv_context.c | 12 +++ src/gallium/drivers/etnaviv/etnaviv_screen.c | 2 +- 4 files changed

[Mesa-dev] [PATCH 2/5] freedreno: add support for user index buffers

2017-02-17 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/freedreno/freedreno_draw.c | 13 + src/gallium/drivers/freedreno/freedreno_screen.c | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/freedreno/freedreno_draw.c b/src/gallium/drivers/freedreno

[Mesa-dev] [PATCH 5/5] gallium: remove PIPE_CAP_USER_INDEX_BUFFERS

2017-02-17 Thread Marek Olšák
From: Marek Olšák all drivers support it --- src/gallium/docs/source/screen.rst | 4 src/gallium/drivers/etnaviv/etnaviv_screen.c | 1 - src/gallium/drivers/freedreno/freedreno_screen.c | 1 - src/gallium/drivers/i915/i915_screen.c | 1 - src/gallium/drivers

[Mesa-dev] [PATCH 4/5] st/mesa: assume all drivers support user index buffers

2017-02-17 Thread Marek Olšák
From: Marek Olšák --- src/mesa/state_tracker/st_context.c | 2 -- src/mesa/state_tracker/st_context.h | 1 - src/mesa/state_tracker/st_draw.c| 50 ++--- 3 files changed, 13 insertions(+), 40 deletions(-) diff --git a/src/mesa/state_tracker/st_context.c b

[Mesa-dev] [PATCH 3/5] svga: implement user index buffers

2017-02-17 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/svga/svga_pipe_draw.c | 13 - src/gallium/drivers/svga/svga_screen.c| 2 +- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/svga/svga_pipe_draw.c b/src/gallium/drivers/svga/svga_pipe_draw.c index

[Mesa-dev] [PATCH 1/2] radeonsi: fix UNSIGNED_BYTE index buffer fallback with non-zero start (v2)

2017-02-17 Thread Marek Olšák
From: Marek Olšák start can only be non-zero with MultiDrawElements, which is unlikely to occur with UNSIGNED_BYTE indices. v2: Also fix the util_shorten_ubyte_elts_to_userptr call. Tested with the new piglit. Cc: mesa-sta...@lists.freedesktop.org --- src/gallium/drivers/radeonsi

[Mesa-dev] [PATCH 2/2] gallium/u_index_modify: don't add PIPE_TRANSFER_UNSYNCHRONIZED unconditionally

2017-02-17 Thread Marek Olšák
From: Marek Olšák It's OK for r300g (because r300g can't write to buffers via the GPU), but not later hardware. This issue was spotted randomly. Cc: mesa-sta...@lists.freedesktop.org --- src/gallium/auxiliary/util/u_index_modify.c | 9 ++--- src/gallium/auxiliary/util/u_inde

Re: [Mesa-dev] [PATCH 2/5] freedreno: add support for user index buffers

2017-02-17 Thread Marek Olšák
On Fri, Feb 17, 2017 at 11:27 AM, Marek Olšák wrote: > From: Marek Olšák > > --- > src/gallium/drivers/freedreno/freedreno_draw.c | 13 + > src/gallium/drivers/freedreno/freedreno_screen.c | 2 +- > 2 files changed, 14 insertions(+), 1 deletion(-) > >

Re: [Mesa-dev] [PATCH 1/5] etnaviv: add support for user index buffers

2017-02-17 Thread Marek Olšák
On Fri, Feb 17, 2017 at 11:27 AM, Marek Olšák wrote: > From: Marek Olšák > > --- > src/gallium/auxiliary/util/u_helpers.c| 29 > +++ > src/gallium/auxiliary/util/u_helpers.h| 5 + > src/gallium/drivers/etnaviv/e

[Mesa-dev] [PATCH] ac/llvm: fix various findMSB bugs

2017-02-17 Thread Marek Olšák
From: Marek Olšák sffbh needs to be suffixed with ".i32" --- src/amd/common/ac_llvm_build.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/amd/common/ac_llvm_build.c b/src/amd/common/ac_llvm_build.c index 5398f07..2f25b14 100644 --- a/src/amd/common/ac_ll

Re: [Mesa-dev] [PATCH 2/5] freedreno: add support for user index buffers

2017-02-17 Thread Marek Olšák
On Fri, Feb 17, 2017 at 2:14 PM, Rob Clark wrote: > Haven't had a chance to try this yet, but looks reasonable. But how > common would it be that a single indexbuf gets re-used for multiple > draws? I wonder if it would be better to just do the upload in > set_index_buffer() instead? No, we nee

Re: [Mesa-dev] [Mesa-stable] Mesa 13.0.5 release candidate

2017-02-17 Thread Marek Olšák
gt; >>> If you have any questions or suggestions - be that about the current patch >>> queue or otherwise, please go ahead. >>> >> >> Please cherry-pick the following commit for 13.0.5 and 17.0.1: >> >> commit 94262e5f5db1f5c7865ced251c440bc5f3f4

[Mesa-dev] [PATCH 1/6] tgsi/scan: add basic info about tessellation OUT and IN uses

2017-02-19 Thread Marek Olšák
From: Marek Olšák not all of them will be used immediately --- src/gallium/auxiliary/tgsi/tgsi_scan.c | 26 ++ src/gallium/auxiliary/tgsi/tgsi_scan.h | 8 2 files changed, 34 insertions(+) diff --git a/src/gallium/auxiliary/tgsi/tgsi_scan.c b/src/gallium

[Mesa-dev] [PATCH 6/6] radeonsi: fix issues with monolithic shaders

2017-02-19 Thread Marek Olšák
From: Marek Olšák R600_DEBUG=mono has had no effect since: commit 1fabb297177069e95ec1bb7053acb32f8ec3e092 Author: Marek Olšák Date: Tue Feb 14 22:08:32 2017 +0100 radeonsi: have separate LS and ES main shader parts in the shader selector Also, this assertion was failing

[Mesa-dev] [PATCH 2/6] radeonsi: skip LDS stores in TCS if there are no LDS output reads

2017-02-19 Thread Marek Olšák
From: Marek Olšák This removes a lot of useless LDS stores. A few games read TESSINNER/OUTER, but not any other outputs. Most games don't read any outputs. The only app doing LDS output reads is UE4 Lightsroom Interior. --- src/gallium/drivers/radeonsi/si_shader.c | 17 +++

[Mesa-dev] [PATCH 4/6] gallivm: add no-signed-zeros-fp-math option to lp_create_builder (v2)

2017-02-19 Thread Marek Olšák
From: Marek Olšák v2: define lp_float_mode --- src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 15 --- src/gallium/auxiliary/gallivm/lp_bld_misc.h | 8 +++- src/gallium/drivers/radeonsi/si_shader_tgsi_setup.c | 6 +- 3 files changed, 24 insertions(+), 5

[Mesa-dev] [PATCH 3/6] radeonsi: skip TESSINNER/OUTER offchip stores if TES doesn't read them

2017-02-19 Thread Marek Olšák
From: Marek Olšák We were unconditionally storing these outputs, sometimes even one component at a time, but apps never read them in TES. Move the TESSINNER/OUTER buffer stores into the TCS epilog where we can easily disable them on demand. --- src/gallium/drivers/radeonsi/si_shader.c

[Mesa-dev] [PATCH 5/6] radeonsi: set no-signed-zeros-fp-math

2017-02-19 Thread Marek Olšák
From: Marek Olšák Recommended by Matt Arsenault. 46757 shaders in 28742 tests Totals: SGPRS: 2068851 -> 2066907 (-0.09 %) VGPRS: 1604056 -> 1602676 (-0.09 %) Spilled SGPRs: 1402 -> 1382 (-1.43 %) Spilled VGPRs: 113 -> 113 (0.00 %) Private memory VGPRs: 1332 -> 1332 (0.00 %) Scr

Re: [Mesa-dev] [PATCH] mesa: remove unused variable warning in release builds

2017-02-20 Thread Marek Olšák
Reviewed-by: Marek Olšák Marek On Mon, Feb 20, 2017 at 12:16 AM, Timothy Arceri wrote: > This assert might have made sense before but we no longer use > gl_linked_shader here. Unless the caller has really done something > crazy this assert is fairly useless. > > We also do some

Re: [Mesa-dev] [PATCH] winsys/amdgpu: reduce max_alloc_size based on GTT limits

2017-02-20 Thread Marek Olšák
Reviewed-by: Marek Olšák Marek On Sun, Feb 19, 2017 at 8:25 PM, Nicolai Hähnle wrote: > From: Nicolai Hähnle > > Allocating huge buffers in VRAM is not a problem, but when those buffers > start being migrated, the kernel runs into errors because it cannot split > those buffe

Re: [Mesa-dev] [Mesa-stable] [PATCH 2/2] radeonsi: fix UINT/SINT clamping for 10-bit formats on <= CIK

2017-02-20 Thread Marek Olšák
For the series: Reviewed-by: Marek Olšák Marek On Mon, Feb 20, 2017 at 12:21 PM, Nicolai Hähnle wrote: > From: Nicolai Hähnle > > The same PS epilog workaround as for 8-bit integer formats is required, > since the CB doesn't do clamping. > &g

Re: [Mesa-dev] [PATCH] radeonsi, r600g: Rename 'R600_DEBUG' -> 'RADEON_DEBUG'

2017-02-20 Thread Marek Olšák
I don't think this patch is necessary. I don't mind people getting confused by the name. Marek On Mon, Feb 20, 2017 at 9:42 AM, Edward O'Callaghan wrote: > The name has become a little misleading now that it applies > to both r600g and radeonsi. > > Signed-off-by: Edward O'Callaghan > --- > sr

Re: [Mesa-dev] [PATCH 4/4] r600/radeonsi: enable glsl/tgsi on-disk cache

2017-02-20 Thread Marek Olšák
On Mon, Feb 20, 2017 at 8:45 AM, Timothy Arceri wrote: > On 20/02/17 15:38, Edward O'Callaghan wrote: >> >> >> >> On 02/20/2017 11:15 AM, Timothy Arceri wrote: >>> >>> --- >>> src/gallium/drivers/r600/r600_pipe.c | 19 +++ >>> src/gallium/drivers/radeon/r600_pipe_common.c

Re: [Mesa-dev] [PATCH 4/4] r600/radeonsi: enable glsl/tgsi on-disk cache

2017-02-20 Thread Marek Olšák
You could do all of this in r600_pipe_common.c by using HAVE_LLVM and rscreen->chip_class. Marek On Mon, Feb 20, 2017 at 1:15 AM, Timothy Arceri wrote: > --- > src/gallium/drivers/r600/r600_pipe.c | 19 +++ > src/gallium/drivers/radeon/r600_pipe_common.c | 8 +++- >

[Mesa-dev] [PATCH 1/4] gallium/u_queue: fix random crashes when the app calls exit()

2017-02-20 Thread Marek Olšák
From: Marek Olšák This fixes: vdpauinfo: ../lib/CodeGen/TargetPassConfig.cpp:579: virtual void llvm::TargetPassConfig::addMachinePasses(): Assertion `TPI && IPI && "Pass ID not registered!"' failed. Cc: 13.0 17.0 --- src/galliu

[Mesa-dev] [PATCH 3/4] gallium/hud: prevent an infinite loop

2017-02-20 Thread Marek Olšák
From: Marek Olšák --- src/gallium/auxiliary/hud/hud_context.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/auxiliary/hud/hud_context.c b/src/gallium/auxiliary/hud/hud_context.c index aaa52d5..488fe66 100644 --- a/src/gallium/auxiliary/hud/hud_context.c

[Mesa-dev] [PATCH 2/4] gallium/u_queue: isolate util_queue_fence implementation

2017-02-20 Thread Marek Olšák
From: Marek Olšák it's cleaner this way. --- src/gallium/auxiliary/util/u_queue.c| 42 ++--- src/gallium/auxiliary/util/u_queue.h| 2 +- src/gallium/drivers/freedreno/freedreno_batch.c | 2 +- src/gallium/drivers/radeonsi/si_state_shaders.c

[Mesa-dev] [PATCH 4/4] gallium/hud: handle a thread switch for API-thread-busy monitoring

2017-02-20 Thread Marek Olšák
From: Marek Olšák --- src/gallium/auxiliary/hud/hud_cpu.c | 14 ++ 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/gallium/auxiliary/hud/hud_cpu.c b/src/gallium/auxiliary/hud/hud_cpu.c index 1cba353..302445d 100644 --- a/src/gallium/auxiliary/hud/hud_cpu.c +++ b

[Mesa-dev] [PATCH 1/5] etnaviv: add support for user index buffers

2017-02-20 Thread Marek Olšák
From: Marek Olšák v2: fix a bug in u_helpers --- src/gallium/auxiliary/util/u_helpers.c| 29 +++ src/gallium/auxiliary/util/u_helpers.h| 5 + src/gallium/drivers/etnaviv/etnaviv_context.c | 12 +++ src/gallium/drivers/etnaviv/etnaviv_screen.c

[Mesa-dev] [PATCH] vbo: kill primitive restart lowering in glDrawArrays

2017-02-20 Thread Marek Olšák
From: Marek Olšák --- src/mesa/vbo/vbo_exec_array.c | 56 ++- 1 file changed, 7 insertions(+), 49 deletions(-) diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c index 6a96167..30c52d5 100644 --- a/src/mesa/vbo/vbo_exec_array.c

[Mesa-dev] [PATCH] gallium: reorder fields in pipe_draw_info

2017-02-20 Thread Marek Olšák
From: Marek Olšák sizeof(struct pipe_draw_info) = 104 -> 88 --- src/gallium/include/pipe/p_state.h | 49 -- 1 file changed, 26 insertions(+), 23 deletions(-) diff --git a/src/gallium/include/pipe/p_state.h b/src/gallium/include/pipe/p_state.h index cb72

[Mesa-dev] Gallium: Removal of set_index_buffer (discussion)

2017-02-20 Thread Marek Olšák
Hi, I'd like to remove pipe_context::set_index_buffer. It's not useful to most drivers and the interface is inconvenient for Mesa/OpenGL, because it's a draw state that is set with a separate driver callback, which is an unnecessary driver roundtrip taking some CPU cycles. I'd prefer to pass the i

Re: [Mesa-dev] [PATCH] gallium: reorder fields in pipe_draw_info

2017-02-20 Thread Marek Olšák
On Mon, Feb 20, 2017 at 8:03 PM, Roland Scheidegger wrote: > This doesn't quite just do what the commit log says, since at least one > parameter is changed from unsigned to ubyte (I hope vertices_per_patch > can't exceed that for any driver...) vertices_per_patch must be in [1, 32]. Only 5 bits a

Re: [Mesa-dev] Gallium: Removal of set_index_buffer (discussion)

2017-02-20 Thread Marek Olšák
On Mon, Feb 20, 2017 at 8:29 PM, Axel Davy wrote: > On 20/02/2017 20:11, Ilia Mirkin wrote: >> >> On Mon, Feb 20, 2017 at 2:01 PM, Marek Olšák wrote: >>> >>> Hi, >>> >>> I'd like to remove pipe_context::set_index_buffer. It's not use

Re: [Mesa-dev] [PATCH] gallium: reorder fields in pipe_draw_info

2017-02-20 Thread Marek Olšák
On Mon, Feb 20, 2017 at 8:36 PM, Roland Scheidegger wrote: > Am 20.02.2017 um 20:08 schrieb Marek Olšák: >> On Mon, Feb 20, 2017 at 8:03 PM, Roland Scheidegger >> wrote: >>> This doesn't quite just do what the commit log says, since at least one >>> param

Re: [Mesa-dev] Gallium: Removal of set_index_buffer (discussion)

2017-02-20 Thread Marek Olšák
On Mon, Feb 20, 2017 at 9:28 PM, Roland Scheidegger wrote: > Am 20.02.2017 um 20:56 schrieb Marek Olšák: >> On Mon, Feb 20, 2017 at 8:29 PM, Axel Davy wrote: >>> On 20/02/2017 20:11, Ilia Mirkin wrote: >>>> >>>> On Mon, Feb 20, 2017 at 2:01 PM, Marek Olš

Re: [Mesa-dev] [Mesa-stable] [PATCH 1/2] radeonsi: handle MultiDrawIndirect in si_get_draw_start_count

2017-02-20 Thread Marek Olšák
Reviewed-by: Marek Olšák Marek On Mon, Feb 20, 2017 at 12:21 PM, Nicolai Hähnle wrote: > From: Nicolai Hähnle > > Also handle the GL_ARB_indirect_parameters case where the count itself > is in a buffer. > > Use transfers rather than mapping the buffers directly. This

Re: [Mesa-dev] [PATCH V3] r600/radeonsi: enable glsl/tgsi on-disk cache

2017-02-20 Thread Marek Olšák
v2 looked better, because HAVE_LLVM can be > 0, but r600g doesn't need llvm_timestamp. (note that drivers/radeon is a static lib used by r600g and radeonsi) Marek On Tue, Feb 21, 2017 at 12:31 AM, Timothy Arceri wrote: > For gpu generations that use LLVM we create a timestamp string > containing

Re: [Mesa-dev] [PATCH] r300g: only allow byteswapped formats on big endian

2017-02-20 Thread Marek Olšák
PM, Michel Dänzer wrote: >>> On 14/02/17 08:25 PM, Marek Olšák wrote: >>>> I've changed my mind. The patch can be merged if nobody disagrees. >>> >>> It would be nice to better understand what exactly the problem is. It >>> seems unlikely that it

Re: [Mesa-dev] Gallium: Removal of set_index_buffer (discussion)

2017-02-21 Thread Marek Olšák
On Tue, Feb 21, 2017 at 4:36 AM, Roland Scheidegger wrote: > Am 20.02.2017 um 21:58 schrieb Marek Olšák: >> On Mon, Feb 20, 2017 at 9:28 PM, Roland Scheidegger >> wrote: >>> Am 20.02.2017 um 20:56 schrieb Marek Olšák: >>>> On Mon, Feb 20, 2017 at 8:29 PM, A

Re: [Mesa-dev] [PATCH V4 4/4] r600/radeonsi: enable glsl/tgsi on-disk cache

2017-02-21 Thread Marek Olšák
Reviewed-by: Marek Olšák Marek On Tue, Feb 21, 2017 at 7:10 AM, Timothy Arceri wrote: > For gpu generations that use LLVM we create a timestamp string > containing both the LLVM and Mesa build times, otherwise we just > use the Mesa build time. > > V2: share code in r600

Re: [Mesa-dev] [PATCH V2 3.5/4] st/mesa: get on-disk shader cache

2017-02-21 Thread Marek Olšák
Reviewed-by: Marek Olšák Marek On Tue, Feb 21, 2017 at 4:18 AM, Timothy Arceri wrote: > V2: make sure callback exists before calling it > --- > src/mesa/state_tracker/st_context.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/src/mesa/state_tracker/st_conte

[Mesa-dev] [PATCH 1/4] gallium/u_queue: fix random crashes when the app calls exit()

2017-02-21 Thread Marek Olšák
From: Marek Olšák This fixes: vdpauinfo: ../lib/CodeGen/TargetPassConfig.cpp:579: virtual void llvm::TargetPassConfig::addMachinePasses(): Assertion `TPI && IPI && "Pass ID not registered!"' failed. v2: use list_head, switch the call order in destroy

[Mesa-dev] [PATCH 3/4] gallium/hud: prevent an infinite loop

2017-02-21 Thread Marek Olšák
From: Marek Olšák v2: use UINT64_MAX / 11 --- src/gallium/auxiliary/hud/hud_context.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/gallium/auxiliary/hud/hud_context.c b/src/gallium/auxiliary/hud/hud_context.c index aaa52d5..c44f8c0 100644 --- a/src/gallium

[Mesa-dev] [PATCH 0/6] Removal of PIPE_CAP_USER_INDEX_BUFFERS (take 3)

2017-02-22 Thread Marek Olšák
Hi, This version is hopefully final. I moved the helper code into a separate commit and fixed a pipe_resource leak there. (thanks Brian for the clue) The rest didn't really change. Please review, Marek ___ mesa-dev mailing list mesa-dev@lists.freedes

[Mesa-dev] [PATCH 6/6] gallium: remove PIPE_CAP_USER_INDEX_BUFFERS

2017-02-22 Thread Marek Olšák
From: Marek Olšák all drivers support it Reviewed-by: Nicolai Hähnle --- src/gallium/docs/source/screen.rst | 4 src/gallium/drivers/etnaviv/etnaviv_screen.c | 1 - src/gallium/drivers/freedreno/freedreno_screen.c | 1 - src/gallium/drivers/i915/i915_screen.c

[Mesa-dev] [PATCH 2/6] etnaviv: add support for user index buffers

2017-02-22 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/etnaviv/etnaviv_context.c | 12 src/gallium/drivers/etnaviv/etnaviv_screen.c | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/etnaviv/etnaviv_context.c b/src/gallium/drivers/etnaviv

[Mesa-dev] [PATCH 5/6] st/mesa: assume all drivers support user index buffers

2017-02-22 Thread Marek Olšák
From: Marek Olšák Reviewed-by: Nicolai Hähnle --- src/mesa/state_tracker/st_context.c | 2 -- src/mesa/state_tracker/st_context.h | 1 - src/mesa/state_tracker/st_draw.c| 50 ++--- 3 files changed, 13 insertions(+), 40 deletions(-) diff --git a/src/mesa

[Mesa-dev] [PATCH 4/6] svga: implement user index buffers

2017-02-22 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/svga/svga_pipe_draw.c | 13 - src/gallium/drivers/svga/svga_screen.c| 2 +- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/svga/svga_pipe_draw.c b/src/gallium/drivers/svga/svga_pipe_draw.c index

[Mesa-dev] [PATCH 1/6] gallium/util: add new helpers for user index buffer uploading

2017-02-22 Thread Marek Olšák
From: Marek Olšák v3: split from the etnaviv patch; fix new_ib.buffer leak --- src/gallium/auxiliary/util/u_helpers.c | 30 ++ src/gallium/auxiliary/util/u_helpers.h | 5 + 2 files changed, 35 insertions(+) diff --git a/src/gallium/auxiliary/util/u_helpers.c b

[Mesa-dev] [PATCH 3/6] freedreno: add support for user index buffers

2017-02-22 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/freedreno/freedreno_draw.c | 12 src/gallium/drivers/freedreno/freedreno_screen.c | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/freedreno/freedreno_draw.c b/src/gallium/drivers/freedreno

Re: [Mesa-dev] [PATCH] glsl: enable early_fragment_tests implicitly with post_depth_coverage

2017-02-22 Thread Marek Olšák
Reviewed-by: Marek Olšák Marek On Wed, Feb 22, 2017 at 9:06 AM, Iago Toral Quiroga wrote: > From: Iago Toral Quiroga > > From ARB_post_depth_coverage: > >"This extension allows the fragment shader to control whether values in > gl_SampleMaskIn[] reflect the cov

Re: [Mesa-dev] [PATCH] vl: u_upload_alloc might fail to allocate buffer in bicubic filter

2017-02-22 Thread Marek Olšák
It would be better to return from the function in that case. Marek On Wed, Feb 22, 2017 at 9:25 AM, Nayan Deshmukh wrote: > Signed-off-by: Nayan Deshmukh > --- > src/gallium/auxiliary/vl/vl_bicubic_filter.c | 8 +--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/src/ga

Re: [Mesa-dev] [PATCH] glsl: enable early_fragment_tests implicitly with post_depth_coverage

2017-02-22 Thread Marek Olšák
On Wed, Feb 22, 2017 at 9:11 PM, Matt Turner wrote: > On Wed, Feb 22, 2017 at 12:06 AM, Iago Toral Quiroga > wrote: >> From: Iago Toral Quiroga > > Oops :) Sneaky product placement. :) Marek ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org h

Re: [Mesa-dev] [PATCH] vl: u_upload_alloc might fail to allocate buffer in bicubic filter

2017-02-22 Thread Marek Olšák
OK sounds good. Reviewed-by: Marek Olšák Marek On Wed, Feb 22, 2017 at 9:16 PM, Nayan Deshmukh wrote: > On Thu, Feb 23, 2017 at 1:34 AM, Marek Olšák wrote: >> It would be better to return from the function in that case. >> > We can still execute it as it will display

Re: [Mesa-dev] [Mesa-stable] [PATCH] st/mesa: inform the driver of framebuffer changes before compute dispatches

2017-02-22 Thread Marek Olšák
Makes sense. Reviewed-by: Marek Olšák Marek On Wed, Feb 22, 2017 at 7:59 PM, Nicolai Hähnle wrote: > From: Nicolai Hähnle > > Even though compute shaders cannot access the framebuffer, there is a > synchronization issue when a compute dispatch accesses a texture that > was p

Re: [Mesa-dev] [PATCH 4/4] mesa: Avoid out-of-bounds stack read via _mesa_Materiali

2017-02-22 Thread Marek Olšák
For 1, 3, 4: Reviewed-by: Marek Olšák I need some time to review patch 2 unless someone else beats me to it. Marek On Wed, Feb 22, 2017 at 8:04 PM, Nicolai Hähnle wrote: > From: Nicolai Hähnle > > MATERIALFV may end up reading up to 4 floats from the passed parameter. > > Thi

Re: [Mesa-dev] [PATCH] vl: u_upload_alloc might fail to allocate buffer in bicubic filter

2017-02-22 Thread Marek Olšák
Pushed, thanks. Marek On Wed, Feb 22, 2017 at 9:20 PM, Nayan Deshmukh wrote: > Can you please push the patch. > > On Thu, Feb 23, 2017 at 1:46 AM, Marek Olšák wrote: >> OK sounds good. >> >> Reviewed-by: Marek Olšák >> >> Marek >> >> On Wed

[Mesa-dev] [PATCH 1/2] gallivm, ac: remove unused FUNC_ATTR_LAST enums

2017-02-22 Thread Marek Olšák
From: Marek Olšák --- src/amd/common/ac_llvm_util.h | 1 - src/gallium/auxiliary/gallivm/lp_bld_intr.h | 1 - 2 files changed, 2 deletions(-) diff --git a/src/amd/common/ac_llvm_util.h b/src/amd/common/ac_llvm_util.h index 1f37a12..93d3d27 100644 --- a/src/amd/common

[Mesa-dev] [PATCH 2/2] gallivm, ac: add function attributes at call sites instead of declarations

2017-02-22 Thread Marek Olšák
From: Marek Olšák They can vary at call sites if the intrinsic is NOT a legacy SI intrinsic. We need this to force readnone or inaccessiblememonly on some amdgcn intrinsics. This is only used with LLVM 4.0 and later. Intrinsics only used with LLVM <= 3.9 don't need the LEGACY flag. gal

[Mesa-dev] [PATCH 1/5] trace: remove pipe_resource wrapping

2017-02-22 Thread Marek Olšák
From: Marek Olšák Not needed. ddebug does the same thing. The limitation is that drivers can only use pipe_resource::screen through pipe_resource_reference. This unbreaks trace, because pipe_context uploaders aren't wrapped, so trace doesn't understand buffers returned by them. --- s

[Mesa-dev] [PATCH 3/5] st/mesa: reset sample_mask, min_sample, and render_condition for PBO ops

2017-02-22 Thread Marek Olšák
From: Marek Olšák Cc: 13.0 17.0 --- src/mesa/state_tracker/st_cb_readpixels.c | 7 +++ src/mesa/state_tracker/st_cb_texture.c| 6 ++ 2 files changed, 13 insertions(+) diff --git a/src/mesa/state_tracker/st_cb_readpixels.c b/src/mesa/state_tracker/st_cb_readpixels.c index ea91bb9

[Mesa-dev] [PATCH 4/5] st/mesa: set blend state for PBO readbacks

2017-02-22 Thread Marek Olšák
From: Marek Olšák Cc: 13.0 17.0 --- src/mesa/state_tracker/st_cb_readpixels.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mesa/state_tracker/st_cb_readpixels.c b/src/mesa/state_tracker/st_cb_readpixels.c index 5ce2421..2bcc6be 100644 --- a/src/mesa/state_tracker/st_cb_readpixels.c

[Mesa-dev] [PATCH 2/5] st/mesa: don't check st->vp in update_clip

2017-02-22 Thread Marek Olšák
From: Marek Olšák The clip state is updated before VS, so it can be NULL for the first draw call. Just remove the unnecessary dependency on st->vp. --- src/mesa/state_tracker/st_atom_clip.c | 6 ++ 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/mesa/state_trac

[Mesa-dev] [PATCH 5/5] st/mesa: don't update unrelated states in non-draw calls such as Clear

2017-02-22 Thread Marek Olšák
From: Marek Olšák If a VAO isn't bound and u_vbuf isn't enabled because of the Core profile, we'll get user vertex buffers in drivers if we update vertex buffers in glClear. So don't do that. This fixes a regression since disabling u_vbuf for Core profiles. --- src/mesa/sta

Re: [Mesa-dev] [PATCH 4/5] st/mesa: set blend state for PBO readbacks

2017-02-22 Thread Marek Olšák
BTW, the blend state here doesn't matter, because the framebuffer has no attachments. The idea is to have any non-NULL blend state set, so that drivers don't have to check for NULL everywhere. Marek On Thu, Feb 23, 2017 at 1:07 AM, Marek Olšák wrote: > From: Marek Olšák >

[Mesa-dev] [PATCH 4/5] st/mesa: set blend state for PBO readbacks

2017-02-22 Thread Marek Olšák
From: Marek Olšák v2: restore the state Cc: 13.0 17.0 --- src/mesa/state_tracker/st_cb_readpixels.c | 6 ++ 1 file changed, 6 insertions(+) diff --git a/src/mesa/state_tracker/st_cb_readpixels.c b/src/mesa/state_tracker/st_cb_readpixels.c index 5ce2421..78ea0c7 100644 --- a/src/mesa

Re: [Mesa-dev] [PATCH 8/8] r600/radeonsi: enableglsl/tgsion-diskcache

2017-02-23 Thread Marek Olšák
Fr On Feb 23, 2017 11:20 AM, "Marc Dietrich" wrote: Am Donnerstag, 23. Februar 2017, 10:54:39 CET schrieb Michel Dänzer: > On 23/02/17 06:39 PM, Marc Dietrich wrote: > > Am Donnerstag, 23. Februar 2017, 04:10:23 CET schrieb Timothy Arceri: > >> I've pushed a fix for building with an old versio

Re: [Mesa-dev] [PATCH 2/2] Revert "glsl: Switch to disable-by-default for the GLSL shader cache"

2017-02-23 Thread Marek Olšák
On Thu, Feb 23, 2017 at 3:09 AM, Timothy Arceri wrote: > This reverts commit 0f60c6616e93cba72bff4fbfedb72a753ef78e05. > > Piglit and all games tested so far seem to be working without > issue. This change will allow wide user testing and we can decided > before the next release if we need to turn

Re: [Mesa-dev] [PATCH 1/2] radeonsi: add support for an on-disk shader cache

2017-02-23 Thread Marek Olšák
On Thu, Feb 23, 2017 at 3:09 AM, Timothy Arceri wrote: > From: kdj0c > > V2 (Timothy Arceri): > - when loading from disk cache also binary insert into memory cache. > - check that the binary loaded from disk is the correct size. If not > delete the cache item and skip loading from cache. > ---

Re: [Mesa-dev] [PATCH 2/2] Revert "glsl: Switch to disable-by-default for the GLSL shader cache"

2017-02-23 Thread Marek Olšák
On Thu, Feb 23, 2017 at 5:55 PM, Timothy Arceri wrote: > On 24/02/17 02:09, Marek Olšák wrote: >> >> On Thu, Feb 23, 2017 at 3:09 AM, Timothy Arceri >> wrote: >>> >>> This reverts commit 0f60c6616e93cba72bff4fbfedb72a753ef78e05. >>> >>&

[Mesa-dev] [PATCH] radeonsi: fix broken tessellation on Carrizo and Stoney

2017-02-23 Thread Marek Olšák
From: Marek Olšák Cc: 13.0 17.0 --- src/gallium/drivers/radeonsi/si_state_shaders.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c index f615aa8..750cdd6 100644 --- a/src

Re: [Mesa-dev] [PATCH] radv/ac: enable loop unrolling.

2017-02-24 Thread Marek Olšák
On Fri, Feb 24, 2017 at 5:36 AM, Matt Arsenault wrote: > > On Feb 23, 2017, at 19:44, Dave Airlie wrote: > > On 24 February 2017 at 13:36, Matt Arsenault wrote: > > > On Feb 23, 2017, at 19:27, Dave Airlie wrote: > > +static void set_unroll_metadata(struct nir_to_llvm_context *ctx, > +L

Re: [Mesa-dev] [PATCH 1/2] radeonsi: add support for an on-disk shader cache

2017-02-24 Thread Marek Olšák
On Fri, Feb 24, 2017 at 3:18 AM, Timothy Arceri wrote: > > > On 24/02/17 08:49, Timothy Arceri wrote: >> >> >> >> On 24/02/17 05:12, Marek Olšák wrote: >>> >>> On Thu, Feb 23, 2017 at 3:09 AM, Timothy Arceri >>> wrote: >>>&

Re: [Mesa-dev] [PATCH] radv/ac: enable loop unrolling.

2017-02-24 Thread Marek Olšák
On Fri, Feb 24, 2017 at 7:20 PM, Matt Arsenault wrote: > > On Feb 24, 2017, at 01:45, Marek Olšák wrote: > > The main requirement is that if there is indirect indexing inside a > loop, we always want to unroll the whole loop to get rid of the > indexing, which can decr

Re: [Mesa-dev] [PATCH 1/2] radeonsi: add support for an on-disk shader cache

2017-02-25 Thread Marek Olšák
On Sat, Feb 25, 2017 at 5:06 PM, Dieter Nützel wrote: > Am 25.02.2017 05:56, schrieb Timothy Arceri: >> >> On 24/02/17 21:02, Marek Olšák wrote: >>> >>> On Fri, Feb 24, 2017 at 3:18 AM, Timothy Arceri >>> wrote: >>>>

[Mesa-dev] [PATCH 03/24] radeonsi: set unorm=1 for TGSI_TEXTURE_SHADOWRECT as well

2017-02-25 Thread Marek Olšák
From: Marek Olšák It was harmless, because we also set unorm in the sampler state. --- src/gallium/drivers/radeonsi/si_shader.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c index

[Mesa-dev] [PATCH 01/24] tgsi/scan: record load/store/atomic image usage

2017-02-25 Thread Marek Olšák
From: Marek Olšák --- src/gallium/auxiliary/tgsi/tgsi_scan.c | 15 ++- src/gallium/auxiliary/tgsi/tgsi_scan.h | 8 +++- src/gallium/drivers/radeonsi/si_shader.c | 4 +++- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/gallium/auxiliary/tgsi

[Mesa-dev] [PATCH 13/24] radeonsi: move kill intrinsic building into amd/common

2017-02-25 Thread Marek Olšák
From: Marek Olšák just a cleanup --- src/amd/common/ac_llvm_build.c| 16 src/amd/common/ac_llvm_build.h| 1 + src/gallium/drivers/radeonsi/si_shader.c | 12 src/gallium/drivers/radeonsi/si_shader_tgsi_alu.c | 14

[Mesa-dev] [PATCH 00/24] RadeonSI moving away from legacy intrinsics & more

2017-02-25 Thread Marek Olšák
Hi, This series depends on the patch adding attributes at call sites: https://patchwork.freedesktop.org/series/20100/ The only legacy intrinsics still in use are: - llvm.SI.load.const - llvm.SI.tbuffer.store (when ADD_TID = 1) - llvm.AMDGPU.kill - llvm.AMDGPU.kilp A lot of the code that builds L

[Mesa-dev] [PATCH 15/24] radeonsi: set noalias on input shader pointers

2017-02-25 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_shader.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c index caff95b..699fefd 100644 --- a/src/gallium/drivers/radeonsi/si_shader.c +++ b/src

[Mesa-dev] [PATCH 02/24] gallivm, ac: add writeonly and inaccessiblememonly attributes

2017-02-25 Thread Marek Olšák
From: Marek Olšák --- src/amd/common/ac_llvm_util.c | 2 ++ src/amd/common/ac_llvm_util.h | 2 ++ src/gallium/auxiliary/gallivm/lp_bld_intr.c | 2 ++ src/gallium/auxiliary/gallivm/lp_bld_intr.h | 2 ++ 4 files changed, 8 insertions(+) diff --git a/src/amd/common

[Mesa-dev] [PATCH 05/24] radeonsi: move llvm.SI.export building to amd/common

2017-02-25 Thread Marek Olšák
From: Marek Olšák --- src/amd/common/ac_llvm_build.c | 15 ++ src/amd/common/ac_llvm_build.h | 11 ++ src/gallium/drivers/radeonsi/si_shader.c | 306 +++ 3 files changed, 170 insertions(+), 162 deletions(-) diff --git a/src/amd/common

[Mesa-dev] [PATCH 12/24] radeonsi: set readnone on reads from read-only memory

2017-02-25 Thread Marek Olšák
From: Marek Olšák --- src/amd/common/ac_llvm_build.c | 11 +-- src/amd/common/ac_llvm_build.h | 3 ++- src/gallium/drivers/radeonsi/si_shader.c | 20 ++-- 3 files changed, 21 insertions(+), 13 deletions(-) diff --git a/src/amd/common/ac_llvm_build.c

[Mesa-dev] [PATCH 14/24] radeonsi: replace AMDGPU.bfe.* with amdgcn.*bfe

2017-02-25 Thread Marek Olšák
From: Marek Olšák --- src/amd/common/ac_llvm_build.c| 26 +++ src/amd/common/ac_llvm_build.h| 3 +++ src/gallium/drivers/radeonsi/si_shader_tgsi_alu.c | 11 -- 3 files changed, 33 insertions(+), 7 deletions(-) diff --git a

[Mesa-dev] [PATCH 08/24] radeonsi: remove last use of llvm.SI.resinfo

2017-02-25 Thread Marek Olšák
From: Marek Olšák and move one function up to reuse the code. --- src/gallium/drivers/radeonsi/si_shader.c | 97 1 file changed, 49 insertions(+), 48 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c

[Mesa-dev] [PATCH 11/24] radeonsi: replace SI.buffer.load.dword with amdgcn.buffer.load

2017-02-25 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_shader.c | 64 ++-- 1 file changed, 19 insertions(+), 45 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c index af031c7..887e6a4 100644 --- a/src

[Mesa-dev] [PATCH 06/24] ac: replace SI.export with amdgcn.exp.*

2017-02-25 Thread Marek Olšák
From: Marek Olšák --- src/amd/common/ac_llvm_build.c | 31 +++ src/gallium/drivers/radeonsi/si_shader.c | 8 +--- 2 files changed, 36 insertions(+), 3 deletions(-) diff --git a/src/amd/common/ac_llvm_build.c b/src/amd/common/ac_llvm_build.c index

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