[Mesa-dev] [PATCH] vc4: Try to pair up instructions when only one of them has PM bit

2015-08-30 Thread Boyan Ding
Instructions with difference in PM field can actually be paired up if the one without PM doesn't do packing/unpacking and non-NOP packing/unpacking operations from PM instruction aren't added to the other without PM. total instructions in shared programs: 48209 -> 47460 (-1.55%) instructions in af

Re: [Mesa-dev] [PATCH] r600: port si_conv_prim_to_gs_out from radeonsi

2015-08-30 Thread Jonathan Gray
On Sun, Aug 30, 2015 at 01:38:49AM -0400, Ilia Mirkin wrote: > On Sun, Aug 30, 2015 at 1:27 AM, Jonathan Gray wrote: > > On Fri, Aug 28, 2015 at 10:47:44AM +1000, Dave Airlie wrote: > >> From: Dave Airlie > >> > >> This code we broken by the tess merge, and I totally missed it > >> until now. I'm

[Mesa-dev] [Bug 91806] configure does not test whether assembler supports sse4.1

2015-08-30 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=91806 Bug ID: 91806 Summary: configure does not test whether assembler supports sse4.1 Product: Mesa Version: git Hardware: Other OS: OpenBSD Status:

Re: [Mesa-dev] [PATCH 4/4] r600g: Use TGSI parse results instead of manually exfiltrating

2015-08-30 Thread Marek Olšák
I've pushed the series, thanks. Marek On Sat, Aug 29, 2015 at 10:31 AM, Edward O'Callaghan wrote: > From: Edward O'Callaghan > > This makes better use of the work that the TGSI API has done for > us. > > Signed-off-by: Edward O'Callaghan > --- > src/gallium/drivers/r600/r600_shader.c | 2 +- >

[Mesa-dev] [PATCH] r600: move prim convert from geom shader to function.

2015-08-30 Thread Dave Airlie
From: Dave Airlie This should avoid C++ fail including this header. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/r600_pipe.h | 26 +- src/gallium/drivers/r600/r600_state_common.c | 25 + 2 files changed, 26 insertions(+), 25 de

[Mesa-dev] [PATCH 2/4] glsl: store uniform slot id in var location field

2015-08-30 Thread Timothy Arceri
This will allow us to access the uniform later on without resorting to building a name string and looking it up in UniformHash. --- src/glsl/ir.h | 2 ++ src/glsl/link_uniforms.cpp | 21 ++--- src/glsl/nir/nir.h | 2 ++ 3 files changed, 22 insertions(+), 3 de

[Mesa-dev] Indirect fixes for Samplers

2015-08-30 Thread Timothy Arceri
The following patch series fixes the indirect sampler indexing piglit tests /tests/spec/arb_gpu_shader5/execution/sampler_array_indexing/* for nir. It also takes steps toward removing the use of the UniformHash table. There are no piglit regressions and I've also sent a couple more meaner indirec

[Mesa-dev] [PATCH 1/4] glsl: order indices for samplers inside a struct array

2015-08-30 Thread Timothy Arceri
This allows the correct offset to be easily calculated for indirect indexing when a struct array contains multiple samplers, or any crazy nesting. The indices for the folling struct will now look like this: Sampler index: 0 Name: s[0].tex Sampler index: 1 Name: s[1].tex Sampler index: 2 Name: s[0]

[Mesa-dev] [PATCH 4/4] mesa: simplify sampler indexing

2015-08-30 Thread Timothy Arceri
Removes another dependency on the UniformHash hash table. --- src/mesa/program/sampler.cpp | 123 +++ 1 file changed, 53 insertions(+), 70 deletions(-) diff --git a/src/mesa/program/sampler.cpp b/src/mesa/program/sampler.cpp index ea3024d..01150fa 100644 --

[Mesa-dev] [RFC 3/4] nir: support indirect indexing samplers in struct arrays

2015-08-30 Thread Timothy Arceri
As a bonus we get indirect support for arrays of arrays for free. --- I've marked this as request for comment as although it works enough for to pass all the piglit tests there are issues as I'm still trying to figure out nir. The issues are around the second call to nir_instr_move_src() this

Re: [Mesa-dev] [PATCH] glsl: remove specical case subroutine type counting

2015-08-30 Thread Timothy Arceri
On Sun, 2015-08-09 at 16:25 +1000, Timothy Arceri wrote: > Unlike samplers we can get the correct value for subroutines from > component_slots() > --- > src/glsl/link_uniforms.cpp | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/src/glsl/link_uniforms.cpp b/src/glsl/l

Re: [Mesa-dev] [PATCH] r600: move prim convert from geom shader to function.

2015-08-30 Thread Marek Olšák
Reviewed-by: Marek Olšák Marek On Sun, Aug 30, 2015 at 12:41 PM, Dave Airlie wrote: > From: Dave Airlie > > This should avoid C++ fail including this header. > > Signed-off-by: Dave Airlie > --- > src/gallium/drivers/r600/r600_pipe.h | 26 +- > src/gallium/dri

Re: [Mesa-dev] [PATCH 00/10] i965: add ARB_shader_texture_image_samples support

2015-08-30 Thread Francisco Jerez
Ilia Mirkin writes: > On Fri, Aug 28, 2015 at 6:58 AM, Francisco Jerez > wrote: >> Ilia Mirkin writes: >> >>> This should include everything. I sent a test for textureSamples to >>> piglit a while ago, not sure how to test imageSamples -- apparently ms >>> images aren't entirely supported on i

Re: [Mesa-dev] [PATCH 07/10] glsl: add support for the imageSamples function

2015-08-30 Thread Francisco Jerez
Matt Turner writes: > On Fri, Aug 28, 2015 at 12:10 AM, Ilia Mirkin wrote: >> On Fri, Aug 28, 2015 at 3:02 AM, Matt Turner wrote: >>> On Thu, Aug 27, 2015 at 8:48 PM, Ilia Mirkin wrote: Signed-off-by: Ilia Mirkin --- src/glsl/builtin_functions.cpp | 48 ++

Re: [Mesa-dev] [RFC 3/4] nir: support indirect indexing samplers in struct arrays

2015-08-30 Thread Jason Ekstrand
On Aug 30, 2015 3:44 AM, "Timothy Arceri" wrote: > > As a bonus we get indirect support for arrays of arrays for free. > --- > I've marked this as request for comment as although it works enough for to > pass all the piglit tests there are issues as I'm still trying to figure out > nir. > > Th

[Mesa-dev] [PATCH 03/42] radeonsi: fix a Unigine Heaven hang when drirc is missing

2015-08-30 Thread Marek Olšák
From: Marek Olšák Cc: 10.6 11.0 --- src/gallium/drivers/radeonsi/si_shader.h| 1 + src/gallium/drivers/radeonsi/si_state.c | 16 +++- src/gallium/drivers/radeonsi/si_state.h | 2 ++ src/gallium/drivers/radeonsi/si_state_shaders.c | 10 ++ 4 files ch

[Mesa-dev] [PATCH 09/42] radeonsi: define the state atom array separately

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_hw_context.c | 2 +- src/gallium/drivers/radeonsi/si_pipe.h | 20 +--- src/gallium/drivers/radeonsi/si_state.h | 20 src/gallium/drivers/radeonsi/si_state_draw.c | 2 +- 4 files changed, 23 in

[Mesa-dev] [PATCH 01/42] gallium/util: add u_bit_scan_consecutive_range

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/auxiliary/util/u_math.h | 20 1 file changed, 20 insertions(+) diff --git a/src/gallium/auxiliary/util/u_math.h b/src/gallium/auxiliary/util/u_math.h index 56bd185..7175d1d 100644 --- a/src/gallium/auxiliary/util/u_math.h +++ b/src/gallium

[Mesa-dev] [PATCH 08/42] radeonsi: optimize viewport states

2015-08-30 Thread Marek Olšák
From: Marek Olšák same as scissors --- src/gallium/drivers/radeonsi/si_blit.c | 4 +- src/gallium/drivers/radeonsi/si_hw_context.c| 2 + src/gallium/drivers/radeonsi/si_pipe.h | 8 src/gallium/drivers/radeonsi/si_state.c | 58 + src/g

[Mesa-dev] [PATCH 02/42] winsys/amdgpu: use small IBs for better performance on VI

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/winsys/amdgpu/drm/amdgpu_cs.c | 16 +--- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/gallium/winsys/amdgpu/drm/amdgpu_cs.c b/src/gallium/winsys/amdgpu/drm/amdgpu_cs.c index 0f42298..3e9fc40 100644 --- a/src/gallium/winsys/amdgp

[Mesa-dev] [PATCH 05/42] radeonsi: fix memory usage checking for big IBs

2015-08-30 Thread Marek Olšák
From: Marek Olšák Cc: 11.0 --- src/gallium/drivers/radeonsi/si_hw_context.c | 17 + 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_hw_context.c b/src/gallium/drivers/radeonsi/si_hw_context.c index 110e316..563251d 100644 --- a/src/

[Mesa-dev] [PATCH 04/42] radeonsi: set all 16 viewport Z bounds for GL 4.1

2015-08-30 Thread Marek Olšák
From: Marek Olšák Cc: 11.0 --- src/gallium/drivers/radeonsi/si_state.c | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c index 1ca5e46..b3a1826 100644 --- a/src/gallium/drivers/radeonsi/

[Mesa-dev] [PATCH 06/42] radeonsi: add SI_MAX_ATTRIBS

2015-08-30 Thread Marek Olšák
From: Marek Olšák PIPE_MAX_ATTRIBS is 32, but we currently only support 16. --- src/gallium/drivers/radeonsi/si_state.c | 2 +- src/gallium/drivers/radeonsi/si_state.h | 9 + 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gal

[Mesa-dev] [PATCH 00/42] RadeonSI cleaning up states

2015-08-30 Thread Marek Olšák
Hi, Nothing special here, just a lot of cosmetic changes and a few micro-optimizations. This series starts with some fixes for 11.0 (patches 3-5). Then it converts a half of pm4 states into atoms. All direct states are converted (set_* functions and derived states). All CSOs (init_config, blen

[Mesa-dev] [PATCH 18/42] radeonsi: avoid redundant CB and DB register updates

2015-08-30 Thread Marek Olšák
From: Marek Olšák The main idea is to avoid setting CB_COLORi_INFO = 0 for i>0 repeatedly when those colorbuffers aren't used. This is mainly for glamor. Same for DB. Z_INFO and STENCIL_INFO need to be cleared only once. --- src/gallium/drivers/r600/r600_blit.c | 2 +- src/gallium/dri

[Mesa-dev] [PATCH 22/42] radeonsi: convert stencil ref state into an atom

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_blit.c | 2 +- src/gallium/drivers/radeonsi/si_hw_context.c | 1 + src/gallium/drivers/radeonsi/si_pipe.h | 2 +- src/gallium/drivers/radeonsi/si_state.c | 66 ++-- src/gallium/drivers/radeonsi/si_s

[Mesa-dev] [PATCH 21/42] radeonsi: convert blend color state into an atom

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_hw_context.c | 1 + src/gallium/drivers/radeonsi/si_pipe.h | 6 ++ src/gallium/drivers/radeonsi/si_state.c | 20 src/gallium/drivers/radeonsi/si_state.h | 2 +- 4 files changed, 20 insertions(+), 9

[Mesa-dev] [PATCH 07/42] radeonsi: optimize scissor states

2015-08-30 Thread Marek Olšák
From: Marek Olšák - convert 16 states to 1 atom - only emit 1 scissor if VIEWPORT_INDEX isn't written - use only one packet when emitting consecutive scissors --- src/gallium/drivers/radeonsi/si_blit.c | 4 +- src/gallium/drivers/radeonsi/si_hw_context.c| 3 ++ src/gallium/drivers

[Mesa-dev] [PATCH 31/42] radeonsi: don't send IB dword usage to si_need_cs_space

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_cp_dma.c | 5 ++--- src/gallium/drivers/radeonsi/si_hw_context.c | 3 +-- src/gallium/drivers/radeonsi/si_pipe.h | 2 +- src/gallium/drivers/radeonsi/si_state.c | 2 +- src/gallium/drivers/radeonsi/si_state_draw.c | 2 +- 5 fil

[Mesa-dev] [PATCH 20/42] radeonsi: convert sample mask state into an atom

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_blit.c | 5 + src/gallium/drivers/radeonsi/si_hw_context.c | 1 + src/gallium/drivers/radeonsi/si_pipe.c | 2 ++ src/gallium/drivers/radeonsi/si_pipe.h | 6 ++ src/gallium/drivers/radeonsi/si_state.c | 23 ++

[Mesa-dev] [PATCH 35/42] radeonsi: use all built-in border colors

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_state.c | 21 ++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c index 7f4e846..52fa8fe 100644 --- a/src/gallium/drivers/rade

[Mesa-dev] [PATCH 28/42] radeonsi: convert SPI state to an atom

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_hw_context.c| 1 + src/gallium/drivers/radeonsi/si_pipe.h | 1 + src/gallium/drivers/radeonsi/si_state.h | 2 +- src/gallium/drivers/radeonsi/si_state_shaders.c | 25 - 4 files changed, 19 inser

[Mesa-dev] [PATCH 11/42] radeonsi: call si_init_atom for remaining radeonsi atoms

2015-08-30 Thread Marek Olšák
From: Marek Olšák I need to initialize more atom IDs. This adds 4 more si_init_atom calls, which simplifies the code. (si_init_atom needs a different context type of the emit functions though) --- src/gallium/drivers/radeonsi/si_compute.c | 4 ++-- src/gallium/drivers/radeonsi/si_cp_dma.c

[Mesa-dev] [PATCH 10/42] radeonsi: initialize atom IDs

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_state.c | 14 -- 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c index 940aaa0..f95684e 100644 --- a/src/gallium/drivers/radeonsi/si_

[Mesa-dev] [PATCH 32/42] radeonsi: reorder si_context variables

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_pipe.h | 85 ++ 1 file changed, 45 insertions(+), 40 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_pipe.h b/src/gallium/drivers/radeonsi/si_pipe.h index 1c4c46d..02d75f0 100644 --- a/src/gallium/d

[Mesa-dev] [PATCH 37/42] radeonsi: remove si_pm4_cleanup

2015-08-30 Thread Marek Olšák
From: Marek Olšák All remaining pm4 state are created and destroyed by state trackers. --- src/gallium/drivers/radeonsi/si_pipe.c | 2 -- src/gallium/drivers/radeonsi/si_pm4.c | 7 --- src/gallium/drivers/radeonsi/si_pm4.h | 1 - 3 files changed, 10 deletions(-) diff --git a/src/gallium/d

[Mesa-dev] [PATCH 34/42] radeonsi: inline si_cmd_context_control

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/Makefile.sources | 1 - src/gallium/drivers/radeonsi/si_commands.c| 36 --- src/gallium/drivers/radeonsi/si_state.c | 5 +++- src/gallium/drivers/radeonsi/si_state.h | 3 --- 4 files changed, 4 insertio

[Mesa-dev] [PATCH 40/42] winsys/radeon: add a flag telling how gfx IBs should be padded

2015-08-30 Thread Marek Olšák
From: Marek Olšák This is always false on amdgpu (set by calloc). --- src/gallium/drivers/radeon/radeon_winsys.h| 1 + src/gallium/winsys/radeon/drm/radeon_drm_cs.c | 4 +--- src/gallium/winsys/radeon/drm/radeon_drm_winsys.c | 4 3 files changed, 6 insertions(+), 3 deletions(-)

[Mesa-dev] [PATCH 12/42] radeonsi: initialize atom IDs for external atoms

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_pipe.c | 4 src/gallium/drivers/radeonsi/si_state.c | 13 + 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_pipe.c b/src/gallium/drivers/radeonsi/si_pipe.c index 03b0ee4..e95

[Mesa-dev] [PATCH 19/42] radeonsi: convert clip state into an atom

2015-08-30 Thread Marek Olšák
From: Marek Olšák Reducing calloc overhead. --- src/gallium/drivers/radeonsi/si_hw_context.c | 1 + src/gallium/drivers/radeonsi/si_pipe.h | 6 ++ src/gallium/drivers/radeonsi/si_state.c | 24 +++- src/gallium/drivers/radeonsi/si_state.h | 2 +- 4 files

[Mesa-dev] [PATCH 27/42] gallium/radeon: rename r600_context_bo_reloc -> radeon_add_to_buffer_list

2015-08-30 Thread Marek Olšák
From: Marek Olšák this name should be easy to understand without other knowledge --- src/gallium/drivers/r600/evergreen_compute.c| 4 +-- src/gallium/drivers/r600/evergreen_hw_context.c | 6 ++--- src/gallium/drivers/r600/evergreen_state.c | 28 ++-- src/gallium/driver

[Mesa-dev] [PATCH 33/42] radeonsi: remove unused si_pm4_state code

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_pm4.c | 25 ++--- src/gallium/drivers/radeonsi/si_pm4.h | 5 - 2 files changed, 2 insertions(+), 28 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_pm4.c b/src/gallium/drivers/radeonsi/si_pm4.c index 9c4d7

[Mesa-dev] [PATCH 36/42] radeonsi: rework uploading border colors

2015-08-30 Thread Marek Olšák
From: Marek Olšák The border colors are uploaded only once when the state is created. This brings truly immutable sampler descriptors, because they don't have to be updated every time a sampler state is re-bound. It also moves the TA_BC_BASE_ADDR registers to init_config, removing one more stat

[Mesa-dev] [PATCH 29/42] radeonsi: don't count IB space for states, just use an upper bound

2015-08-30 Thread Marek Olšák
From: Marek Olšák Since we don't put any resource descriptors in IBs, the space used by draw calls is quite small. --- src/gallium/drivers/radeonsi/si_hw_context.c | 53 +++- src/gallium/drivers/radeonsi/si_pipe.h | 7 2 files changed, 5 insertions(+), 55 dele

[Mesa-dev] [PATCH 41/42] radeonsi: add IB2 indirect buffer support for pm4 states

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_pm4.c | 48 ++- src/gallium/drivers/radeonsi/si_pm4.h | 5 src/gallium/drivers/radeonsi/sid.h| 3 ++- 3 files changed, 54 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_p

[Mesa-dev] [PATCH 30/42] radeonsi: don't set number of IB dwords for states

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_descriptors.c | 7 ++--- src/gallium/drivers/radeonsi/si_state.c | 35 ++--- src/gallium/drivers/radeonsi/si_state.h | 3 +-- src/gallium/drivers/radeonsi/si_state_shaders.c | 2 +- 4 files changed, 18

[Mesa-dev] [PATCH 23/42] radeonsi: don't set VGT_VTX_CNT_EN twice in init_config

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_state.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c index 20e690b..d52b937 100644 --- a/src/gallium/drivers/radeonsi/si_state.c +++ b/src/gallium/driver

[Mesa-dev] [PATCH 38/42] radeonsi: remove unused macro si_pm4_set_state

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_state.h | 10 -- 1 file changed, 10 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_state.h b/src/gallium/drivers/radeonsi/si_state.h index f5726f0..3718e05 100644 --- a/src/gallium/drivers/radeonsi/si_state.h +++ b/src/ga

[Mesa-dev] [PATCH 13/42] radeonsi: use a bitmask for tracking dirty atoms

2015-08-30 Thread Marek Olšák
From: Marek Olšák This mainly removes the cache misses when checking the dirty flags. Not much else though. --- src/gallium/drivers/radeonsi/si_hw_context.c | 10 -- src/gallium/drivers/radeonsi/si_pipe.h | 8 +++- src/gallium/drivers/radeonsi/si_state_draw.c | 13 +++-

[Mesa-dev] [PATCH 25/42] radeonsi: rename and precalculate polygon offset states

2015-08-30 Thread Marek Olšák
From: Marek Olšák one less calloc and state construction while drawing --- src/gallium/drivers/radeonsi/si_state.c | 79 ++--- src/gallium/drivers/radeonsi/si_state.h | 6 +-- 2 files changed, 45 insertions(+), 40 deletions(-) diff --git a/src/gallium/drivers/radeon

[Mesa-dev] [PATCH 14/42] radeonsi: remove the gs_rings state, add the registers to init_config

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_pipe.c | 1 - src/gallium/drivers/radeonsi/si_pipe.h | 1 - src/gallium/drivers/radeonsi/si_state.h | 1 - src/gallium/drivers/radeonsi/si_state_shaders.c | 27 + 4 files changed, 14 insert

[Mesa-dev] [PATCH 42/42] radeonsi: use an indirect buffer for init_config

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_state.c | 1 + src/gallium/drivers/radeonsi/si_state_shaders.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c index e31895d..1e2f32a 100644 ---

[Mesa-dev] [PATCH 15/42] radeonsi: remove the tf_ring state, add the registers to init_config

2015-08-30 Thread Marek Olšák
From: Marek Olšák One less state to worry about. --- src/gallium/drivers/radeonsi/si_pipe.c | 1 - src/gallium/drivers/radeonsi/si_pipe.h | 1 - src/gallium/drivers/radeonsi/si_state.h | 1 - src/gallium/drivers/radeonsi/si_state_shaders.c | 25 +-

[Mesa-dev] [PATCH 24/42] radeonsi: convert CB_TARGET_MASK setup to an atom

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_hw_context.c| 1 + src/gallium/drivers/radeonsi/si_pipe.h | 1 + src/gallium/drivers/radeonsi/si_state.c | 23 +-- src/gallium/drivers/radeonsi/si_state.h | 3 +-- src/gallium/drivers/radeon

[Mesa-dev] [PATCH 16/42] radeonsi: don't clear the tessellation factor ring buffer

2015-08-30 Thread Marek Olšák
From: Marek Olšák Leftover from the bring-up. --- src/gallium/drivers/radeonsi/si_state_shaders.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c index 8ef02c4..a4c33fa 100644 --- a/src/galliu

[Mesa-dev] [PATCH 39/42] winsys/amdgpu: remove IB padding for SI

2015-08-30 Thread Marek Olšák
From: Marek Olšák SI is unsupported by amdgpu --- src/gallium/winsys/amdgpu/drm/amdgpu_cs.c | 22 +- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/src/gallium/winsys/amdgpu/drm/amdgpu_cs.c b/src/gallium/winsys/amdgpu/drm/amdgpu_cs.c index 3e9fc40..84fc40b 10

[Mesa-dev] [PATCH 26/42] gallium/radeon: rename write_*_reg functions

2015-08-30 Thread Marek Olšák
From: Marek Olšák e.g. radeon_set_context_reg is nicer and looks consistent next to radeon_emit(). --- src/gallium/drivers/r600/evergreen_compute.c | 20 ++--- src/gallium/drivers/r600/evergreen_state.c | 94 +++--- src/gallium/drivers/r600/r600_hw_context.c | 4 +- src/g

[Mesa-dev] [PATCH 17/42] radeonsi: don't rebind GSVS ring buffers every draw call using GS

2015-08-30 Thread Marek Olšák
From: Marek Olšák --- src/gallium/drivers/radeonsi/si_pipe.h | 1 + src/gallium/drivers/radeonsi/si_shader.h| 1 + src/gallium/drivers/radeonsi/si_state_shaders.c | 11 --- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_

Re: [Mesa-dev] [PATCH] glsl: remove specical case subroutine type counting

2015-08-30 Thread David Airlie
> On Sun, 2015-08-09 at 16:25 +1000, Timothy Arceri wrote: > > Unlike samplers we can get the correct value for subroutines from > > component_slots() Reviewed-by: Dave Airlie > > --- > > src/glsl/link_uniforms.cpp | 5 ++--- > > 1 file changed, 2 insertions(+), 3 deletions(-) > > > > diff --g

Re: [Mesa-dev] [PATCH 00/42] RadeonSI cleaning up states

2015-08-30 Thread Grazvydas Ignotas
Hi, On Sun, Aug 30, 2015 at 10:11 PM, Marek Olšák wrote: > The viewport and scissor states are optimized. The main thing is that setting > non-zero viewports and scissors is delayed until a shader that writes > VIEWPORT_INDEX appears (which is typically never). ... > > Radeonsi no longer coun

Re: [Mesa-dev] [PATCH 00/42] RadeonSI cleaning up states

2015-08-30 Thread Marek Olšák
On Sun, Aug 30, 2015 at 11:05 PM, Grazvydas Ignotas wrote: > Hi, > > On Sun, Aug 30, 2015 at 10:11 PM, Marek Olšák wrote: >> The viewport and scissor states are optimized. The main thing is that >> setting non-zero viewports and scissors is delayed until a shader that >> writes VIEWPORT_INDEX a

Re: [Mesa-dev] [PATCH 13/42] radeonsi: use a bitmask for tracking dirty atoms

2015-08-30 Thread Grazvydas Ignotas
On Sun, Aug 30, 2015 at 10:11 PM, Marek Olšák wrote: ... > diff --git a/src/gallium/drivers/radeonsi/si_state_draw.c > b/src/gallium/drivers/radeonsi/si_state_draw.c > index 2ff58d1..81575b5 100644 > --- a/src/gallium/drivers/radeonsi/si_state_draw.c > +++ b/src/gallium/drivers/radeonsi/si_state_

Re: [Mesa-dev] [PATCH 40/42] winsys/radeon: add a flag telling how gfx IBs should be padded

2015-08-30 Thread Grazvydas Ignotas
On Sun, Aug 30, 2015 at 10:12 PM, Marek Olšák wrote: > From: Marek Olšák > > This is always false on amdgpu (set by calloc). > --- > src/gallium/drivers/radeon/radeon_winsys.h| 1 + > src/gallium/winsys/radeon/drm/radeon_drm_cs.c | 4 +--- > src/gallium/winsys/radeon/drm/radeon_drm_w

Re: [Mesa-dev] [PATCH 13/42] radeonsi: use a bitmask for tracking dirty atoms

2015-08-30 Thread Marek Olšák
On Sun, Aug 30, 2015 at 11:28 PM, Grazvydas Ignotas wrote: > On Sun, Aug 30, 2015 at 10:11 PM, Marek Olšák wrote: > ... >> diff --git a/src/gallium/drivers/radeonsi/si_state_draw.c >> b/src/gallium/drivers/radeonsi/si_state_draw.c >> index 2ff58d1..81575b5 100644 >> --- a/src/gallium/drivers/rad

Re: [Mesa-dev] [PATCH 1/7] i965/cs: Setup push constant data for uniforms

2015-08-30 Thread Ben Widawsky
On Mon, Aug 03, 2015 at 11:00:05PM -0700, Jordan Justen wrote: > brw_upload_cs_push_constants was based on gen6_upload_push_constants. > > v2: > * Add FINISHME comments about more efficient ways to push uniforms > > Signed-off-by: Jordan Justen > Cc: Ben Widawsky Reviewed-by: Ben Widawsky __

[Mesa-dev] [PATCH] r600/sb: emit vertex clauses properly on all gpu classes.

2015-08-30 Thread Dave Airlie
From: Dave Airlie I've no idea why this is restricted to r600 only, but we should use vertex fetches anywhere the input shader would use them from what I can see. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/sb/sb_shader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) dif

Re: [Mesa-dev] [PATCH 00/42] RadeonSI cleaning up states

2015-08-30 Thread Alex Deucher
On Sun, Aug 30, 2015 at 3:11 PM, Marek Olšák wrote: > Hi, > > Nothing special here, just a lot of cosmetic changes and a few > micro-optimizations. > > This series starts with some fixes for 11.0 (patches 3-5). > > Then it converts a half of pm4 states into atoms. All direct states are > convert

Re: [Mesa-dev] [PATCH] r600/sb: emit vertex clauses properly on all gpu classes.

2015-08-30 Thread Alex Deucher
On Sun, Aug 30, 2015 at 11:43 PM, Dave Airlie wrote: > From: Dave Airlie > > I've no idea why this is restricted to r600 only, but we should > use vertex fetches anywhere the input shader would use them from > what I can see. IIRC, the only difference between a vertex fetch and a texture fetch i

Re: [Mesa-dev] [PATCH 2/4] glsl: store uniform slot id in var location field

2015-08-30 Thread Jason Ekstrand
On Aug 30, 2015 3:44 AM, "Timothy Arceri" wrote: > > This will allow us to access the uniform later on without resorting to > building a name string and looking it up in UniformHash. > --- > src/glsl/ir.h | 2 ++ > src/glsl/link_uniforms.cpp | 21 ++--- > src/glsl/ni

Re: [Mesa-dev] [RFC 3/4] nir: support indirect indexing samplers in struct arrays

2015-08-30 Thread Jason Ekstrand
On Aug 30, 2015 3:44 AM, "Timothy Arceri" wrote: > > As a bonus we get indirect support for arrays of arrays for free. > --- > I've marked this as request for comment as although it works enough for to > pass all the piglit tests there are issues as I'm still trying to figure out > nir. > > Th

[Mesa-dev] [PATCH] r600/sb: update last_cf for finalize if.

2015-08-30 Thread Dave Airlie
From: Dave Airlie As Glenn did for finalize_loop we need to update_cf when we add a POP at the end of a shader. I think this fixes one of the earlier shader going off end of memory problems we've stopped. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/sb/sb_bc_finalize.cpp | 3 +++ 1

[Mesa-dev] [PATCH V2 1/4] glsl: order indices for samplers inside a struct array

2015-08-30 Thread Timothy Arceri
This allows the correct offset to be easily calculated for indirect indexing when a struct array contains multiple samplers, or any crazy nesting. The indices for the folling struct will now look like this: Sampler index: 0 Name: s[0].tex Sampler index: 1 Name: s[1].tex Sampler index: 2 Name: s[0]

[Mesa-dev] [PATCH V2 3/4] nir: support indirect indexing samplers in struct arrays

2015-08-30 Thread Timothy Arceri
As a bonus we get indirect support for arrays of arrays for free. V2: Fixed validation error in debug build --- src/glsl/nir/nir_lower_samplers.cpp | 168 1 file changed, 94 insertions(+), 74 deletions(-) diff --git a/src/glsl/nir/nir_lower_samplers.cpp b/sr

[Mesa-dev] [PATCH V2 2/4] glsl: store uniform slot id in var location field

2015-08-30 Thread Timothy Arceri
This will allow us to access the uniform later on without resorting to building a name string and looking it up in UniformHash. --- src/glsl/ir.h | 2 ++ src/glsl/link_uniforms.cpp | 21 ++--- src/glsl/nir/nir.h | 2 ++ 3 files changed, 22 insertions(+), 3 de

[Mesa-dev] [PATCH V2 4/4] mesa: simplify sampler indexing

2015-08-30 Thread Timothy Arceri
Removes another dependency on the UniformHash hash table. --- src/mesa/program/sampler.cpp | 123 +++ 1 file changed, 53 insertions(+), 70 deletions(-) diff --git a/src/mesa/program/sampler.cpp b/src/mesa/program/sampler.cpp index ea3024d..01150fa 100644 --

Re: [Mesa-dev] [RFC 3/4] nir: support indirect indexing samplers in struct arrays

2015-08-30 Thread Timothy Arceri
On Sun, 2015-08-30 at 08:27 -0700, Jason Ekstrand wrote: > > On Aug 30, 2015 3:44 AM, "Timothy Arceri" wrote: > > > > As a bonus we get indirect support for arrays of arrays for free. > > --- > > I've marked this as request for comment as although it works enough for > to > > pass all the pigl

Re: [Mesa-dev] [PATCH V2 3/4] nir: support indirect indexing samplers in struct arrays

2015-08-30 Thread Jason Ekstrand
On Aug 30, 2015 9:27 PM, "Timothy Arceri" wrote: > > As a bonus we get indirect support for arrays of arrays for free. > > V2: Fixed validation error in debug build > --- > src/glsl/nir/nir_lower_samplers.cpp | 168 > 1 file changed, 94 insertions(+), 74 delet

Re: [Mesa-dev] [PATCH 2/4] glsl: store uniform slot id in var location field

2015-08-30 Thread Timothy Arceri
On Sun, 2015-08-30 at 20:54 -0700, Jason Ekstrand wrote: > > On Aug 30, 2015 3:44 AM, "Timothy Arceri" wrote: > > > > This will allow us to access the uniform later on without resorting to > > building a name string and looking it up in UniformHash. > > --- > > src/glsl/ir.h | 2 ++

Re: [Mesa-dev] [PATCH 2/4] glsl: store uniform slot id in var location field

2015-08-30 Thread Timothy Arceri
On Mon, 2015-08-31 at 15:21 +1000, Timothy Arceri wrote: > On Sun, 2015-08-30 at 20:54 -0700, Jason Ekstrand wrote: > > > > On Aug 30, 2015 3:44 AM, "Timothy Arceri" wrote: > > > > > > This will allow us to access the uniform later on without resorting to > > > building a name string and looking

Re: [Mesa-dev] [PATCH v4 (part2) 17/59] i965/fs/nir: implement unsized array's length calculation

2015-08-30 Thread Samuel Iglesias Gonsálvez
On 29/08/15 00:22, Jordan Justen wrote: > On 2015-08-05 01:30:14, Iago Toral Quiroga wrote: >> From: Samuel Iglesias Gonsalvez >> >> Signed-off-by: Samuel Iglesias Gonsalvez >> --- >> src/mesa/drivers/dri/i965/brw_fs_nir.cpp | 49 >> >> 1 file changed, 49 insert

Re: [Mesa-dev] [PATCH v4 (part2) 20/59] glsl: Add parser/compiler support for std430 interface packing qualifier

2015-08-30 Thread Samuel Iglesias Gonsálvez
On 29/08/15 02:27, Jordan Justen wrote: > On 2015-08-05 01:30:17, Iago Toral Quiroga wrote: >> From: Samuel Iglesias Gonsalvez >> >> This commit also adds functions to calculate std430 base alignment and sizes >> >> Signed-off-by: Samuel Iglesias Gonsalvez >> --- >> src/glsl/ast.h

Re: [Mesa-dev] [PATCH v4 (part2) 20/59] glsl: Add parser/compiler support for std430 interface packing qualifier

2015-08-30 Thread Samuel Iglesias Gonsálvez
On 29/08/15 02:33, Ilia Mirkin wrote: > On Fri, Aug 28, 2015 at 8:27 PM, Jordan Justen > wrote: >> On 2015-08-05 01:30:17, Iago Toral Quiroga wrote: >>> From: Samuel Iglesias Gonsalvez >>> >>> This commit also adds functions to calculate std430 base alignment and sizes >>> >>> Signed-off-by: Sa

Re: [Mesa-dev] [PATCH v4 (part2) 21/59] glsl: propagate interface packing information to arrays of scalars, vectors.

2015-08-30 Thread Samuel Iglesias Gonsálvez
On 29/08/15 09:22, Jordan Justen wrote: > On 2015-08-05 01:30:18, Iago Toral Quiroga wrote: >> From: Samuel Iglesias Gonsalvez >> >> Now std140 is not the only interface packing qualifier that can be used. >> >> Signed-off-by: Samuel Iglesias Gonsalvez >> --- >> src/glsl/ast.h | 10 ++