Reviewed-by: Jason Ekstrand
On Apr 16, 2016 12:50 PM, "Laurent Carlier" wrote:
> mcpu=generic doesn't enable sse2, and anvil definitly needs it
> ---
> src/intel/vulkan/Makefile.am | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/intel/vulkan/Makefile.am b/src/intel/
From: Nicolas Dufresne
This code is already duplicated twice and will be useful again. This
will also help when adding formats.
Signed-off-by: Nicolas Dufresne
---
src/gallium/state_trackers/dri/dri2.c | 61 ---
1 file changed, 27 insertions(+), 34 deletions(-)
From: Nicolas Dufresne
When creating egl images we do a bytes to pixel conversion by deviding
by 4 regardless of the pixel format. This does not work for RGB565. In
this patch, we avoid useless conversion and use proper API when the
conversion cannot be avoided.
Signed-off-by: Nicolas Dufresne
From: Nicolas Dufresne
Sorry for the long delay breaking down this patch. I have now rebased
on top recent mesa tree. First patch creates a new function to convert
DRI2 format into PIPE format (to avoid more copy paste). The second fixes
the wrong pitch to stride calculation fixing RGB565 suppor
On 15 April 2016 at 07:19, Alejandro Piñeiro wrote:
> On 14/04/16 19:23, Emil Velikov wrote:
>> On 14 April 2016 at 08:09, Alejandro Piñeiro wrote:
>>> For next time, on the cases were minor changes are suggested, but a RB
>>> is granted in any case, you don't need to send the patch again to the
On 16 April 2016 at 02:00, Grazvydas Ignotas wrote:
> This is mostly for variables that are only used in asserts and cause
> unused-but-set-variable warnings in release builds. Could just use
> UNUSED directly, but MAYBE_UNUSED should be less confusing and is
> similar to what the Linux kernel has
On Sat, Apr 16, 2016 at 4:40 PM, Emil Velikov
wrote:
> On 16 April 2016 at 20:45, Jason Ekstrand wrote:
> > This little series switches our back-end compiler to use libisl for the
> > surface format introspection it needs for doing image_load_store shader
> > work-arounds. Format introspection
Signed-off-by: Bas Nieuwenhuizen
Reviewed-by: Marek Olšák
---
src/gallium/drivers/radeonsi/si_pipe.h | 1 +
src/gallium/drivers/radeonsi/si_state_draw.c | 24
2 files changed, 25 insertions(+)
diff --git a/src/gallium/drivers/radeonsi/si_pipe.h
b/src/gallium/dri
From: Marek Olšák
Reviewed-by: Bas Nieuwenhuizen
---
src/gallium/winsys/amdgpu/drm/amdgpu_bo.c | 5 ---
src/gallium/winsys/amdgpu/drm/amdgpu_bo.h | 6 +++
src/gallium/winsys/amdgpu/drm/amdgpu_cs.c | 68 +++
src/gallium/winsys/amdgpu/drm/amdgpu_cs.h | 16
4
We can then upload only the dirty ones with the constant engine.
Signed-off-by: Bas Nieuwenhuizen
---
src/gallium/drivers/radeonsi/si_descriptors.c | 37 ---
src/gallium/drivers/radeonsi/si_state.h | 9 +--
2 files changed, 29 insertions(+), 17 deletions(-)
di
Necessary to prevent performance regressions due to extra flushing.
Probably should enlarge it even further when also updating
uniforms through the CE, but this seems large enough for now.
v2: Add preamble IB.
Signed-off-by: Bas Nieuwenhuizen
---
src/gallium/winsys/amdgpu/drm/amdgpu_cs.c | 28
v2: Use 32 byte alignment.
Signed-off-by: Bas Nieuwenhuizen
---
src/gallium/drivers/radeonsi/si_descriptors.c | 30 +++
src/gallium/drivers/radeonsi/si_state.h | 3 +++
2 files changed, 24 insertions(+), 9 deletions(-)
diff --git a/src/gallium/drivers/radeonsi/si_
From: Marek Olšák
v2: Use the correct IB to update request (Bas Nieuwenhuizen)
v3: Add preamble IB. (Bas Nieuwenhuizen)
---
src/gallium/drivers/radeon/radeon_winsys.h | 30 ++
src/gallium/winsys/amdgpu/drm/amdgpu_cs.c | 88 --
src/gallium/winsys/amdgpu/drm/am
Signed-off-by: Bas Nieuwenhuizen
Reviewed-by: Marek Olšák
---
src/gallium/drivers/radeonsi/si_descriptors.c | 23 +++
src/gallium/drivers/radeonsi/si_pipe.c| 11 +++
src/gallium/drivers/radeonsi/si_pipe.h| 3 +++
3 files changed, 37 insertions(+)
dif
Signed-off-by: Bas Nieuwenhuizen
Reviewed-by: Marek Olšák
---
src/gallium/drivers/radeonsi/sid.h | 6 ++
1 file changed, 6 insertions(+)
diff --git a/src/gallium/drivers/radeonsi/sid.h
b/src/gallium/drivers/radeonsi/sid.h
index f0aa605..1072e0a 100644
--- a/src/gallium/drivers/radeonsi/sid
From: Marek Olšák
Not used by drivers.
Reviewed-by: Bas Nieuwenhuizen
---
src/gallium/drivers/radeon/radeon_winsys.h| 1 -
src/gallium/winsys/amdgpu/drm/amdgpu_cs.c | 8
src/gallium/winsys/amdgpu/drm/amdgpu_cs.h | 1 +
src/gallium/winsys/radeon/drm/radeon_drm_cs.c | 10
Based on work by Marek Olšák.
v2: Add preamble IB.
Leaves the load packet in the space calculation as the
radeon winsys might not be able to support a premable.
The added space calculation may look expensive, but
is converted to a constant with (at least) -O2 and -O3.
Signed-off-by: Bas Nieuwen
v2: Load previous list for new CS instead of re-emitting
all descriptors.
Signed-off-by: Bas Nieuwenhuizen
---
src/gallium/drivers/radeonsi/si_descriptors.c | 70 +++
1 file changed, 60 insertions(+), 10 deletions(-)
diff --git a/src/gallium/drivers/radeonsi/si_descr
For use by radeonsi.
v2: Make sure that it works for all 64 bits set.
Signed-off-by: Bas Nieuwenhuizen
---
src/gallium/auxiliary/util/u_math.h | 14 ++
1 file changed, 14 insertions(+)
diff --git a/src/gallium/auxiliary/util/u_math.h
b/src/gallium/auxiliary/util/u_math.h
index b4a
For this v2 I did the following changes:
- Use Nicolai's proposed dirty mask structure.
- Use load packets to reinitialize CE ram.
- Use a preamble IB for reinitializing CE ram. I've made the
preamble IB optional in radeonsi, as the radeon kernel
driver does not support it as far as I ca
On 16 April 2016 at 20:45, Jason Ekstrand wrote:
> This little series switches our back-end compiler to use libisl for the
> surface format introspection it needs for doing image_load_store shader
> work-arounds. Format introspection is the one place where thet back-end
> compilers still have a d
On 16 April 2016 at 23:15, Roland Scheidegger wrote:
> Am 16.04.2016 um 14:50 schrieb Marek Olšák:
>> From: Marek Olšák
>>
>> Use PIPE_SWIZZLE_* everywhere.
>> Use X/Y/Z/W/0/1 instead of RED, GREEN, BLUE, ALPHA, ZERO, ONE.
>> The new enum is called pipe_swizzle.
>
> Using PIPE_SWIZZLE insteads so
On 16 April 2016 at 22:04, Marek Olšák wrote:
> On Sat, Apr 16, 2016 at 9:40 PM, Rob Clark wrote:
>> On Sat, Apr 16, 2016 at 8:50 AM, Marek Olšák wrote:
>>> From: Marek Olšák
>>>
>>> and remove number assignments which are consecutive
>>> ---
>>> src/gallium/include/pipe/p_defines.h | 378
>>>
Am 16.04.2016 um 14:50 schrieb Marek Olšák:
> From: Marek Olšák
>
> we should use MESA_SHADER_* everywhere, but we're not ready for that yet
> ---
I think the idea initially was that tgsi is essentially self-contained:
you can parse the token stream without any "external" dependencies.
Feels a b
Am 16.04.2016 um 14:50 schrieb Marek Olšák:
> From: Marek Olšák
>
> Use PIPE_SWIZZLE_* everywhere.
> Use X/Y/Z/W/0/1 instead of RED, GREEN, BLUE, ALPHA, ZERO, ONE.
> The new enum is called pipe_swizzle.
Using PIPE_SWIZZLE insteads sounds reasonable.
Not sure though how I feel about using X/Y/Z/W
Reviewed-by: Roland Scheidegger
Am 16.04.2016 um 14:50 schrieb Marek Olšák:
> From: Marek Olšák
>
> ---
> src/gallium/include/pipe/p_shader_tokens.h | 303
> -
> 1 file changed, 164 insertions(+), 139 deletions(-)
>
> diff --git a/src/gallium/include/pipe/p_shader
Makes me wonder why we didn't use enums in the first place.
But I can't think of any disadvantages.
Reviewed-by: Roland Scheidegger
Am 16.04.2016 um 14:50 schrieb Marek Olšák:
> From: Marek Olšák
>
> and remove number assignments which are consecutive
> ---
> src/gallium/include/pipe/p_define
https://bugs.freedesktop.org/show_bug.cgi?id=92850
higu...@gmx.net changed:
What|Removed |Added
CC||higu...@gmx.net
--
You are receiving t
On Sat, Apr 16, 2016 at 5:49 PM, Rob Clark wrote:
> On Sat, Apr 16, 2016 at 5:04 PM, Marek Olšák wrote:
>> On Sat, Apr 16, 2016 at 9:40 PM, Rob Clark wrote:
>>> On Sat, Apr 16, 2016 at 8:50 AM, Marek Olšák wrote:
From: Marek Olšák
and remove number assignments which are consecut
On Sat, Apr 16, 2016 at 5:04 PM, Marek Olšák wrote:
> On Sat, Apr 16, 2016 at 9:40 PM, Rob Clark wrote:
>> On Sat, Apr 16, 2016 at 8:50 AM, Marek Olšák wrote:
>>> From: Marek Olšák
>>>
>>> and remove number assignments which are consecutive
>>> ---
>>> src/gallium/include/pipe/p_defines.h | 37
From: Roland Scheidegger
llvm 3.7 sometimes simply miscompiles vector selects.
See https://bugs.freedesktop.org/show_bug.cgi?id=94972
---
src/gallium/auxiliary/gallivm/lp_bld_logic.c | 8 +---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_
https://bugs.freedesktop.org/show_bug.cgi?id=94972
Bug ID: 94972
Summary: blend failures on llvmpipe with llvm 3.7 due to vector
selects
Product: Mesa
Version: git
Hardware: All
OS: All
Status: N
On Sat, Apr 16, 2016 at 6:54 PM, Ilia Mirkin wrote:
> On Sat, Apr 16, 2016 at 8:50 AM, Marek Olšák wrote:
>> From: Marek Olšák
>>
>> we should use MESA_SHADER_* everywhere, but we're not ready for that yet
>
> H not sure if this is right. I thought the idea is that TGSI
> should be its o
On Sat, Apr 16, 2016 at 9:40 PM, Rob Clark wrote:
> On Sat, Apr 16, 2016 at 8:50 AM, Marek Olšák wrote:
>> From: Marek Olšák
>>
>> and remove number assignments which are consecutive
>> ---
>> src/gallium/include/pipe/p_defines.h | 378
>> +++
>> 1 file changed,
On Sat, Apr 16, 2016 at 8:17 PM, Nicolai Hähnle wrote:
> On 16.04.2016 05:20, Marek Olšák wrote:
>>
>> On Sat, Apr 16, 2016 at 8:04 AM, Michel Dänzer wrote:
>>>
>>> On 16.04.2016 14:51, Michel Dänzer wrote:
On 16.04.2016 11:39, Tom Stellard wrote:
>
> The ds_bpermute instruction
---
src/intel/vulkan/Makefile.am | 9 +
src/intel/vulkan/anv_private.h | 3 ---
2 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/src/intel/vulkan/Makefile.am b/src/intel/vulkan/Makefile.am
index cba6671..a201bed 100644
--- a/src/intel/vulkan/Makefile.am
+++ b/src/intel/vul
This lets us delete some redundant code and keep all of the
image_load_store format lowering logic in one place: libisl.
---
src/mesa/drivers/dri/i965/brw_context.h | 2 -
src/mesa/drivers/dri/i965/brw_surface_formats.c | 109 ---
src/mesa/drivers/dri/i965/brw_wm_su
mcpu=generic doesn't enable sse2, and anvil definitly needs it
---
src/intel/vulkan/Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/intel/vulkan/Makefile.am b/src/intel/vulkan/Makefile.am
index cba6671..a84be72 100644
--- a/src/intel/vulkan/Makefile.am
+++ b/src
---
src/intel/isl/isl.h| 2 ++
src/intel/isl/isl_format.c | 15 +++
2 files changed, 17 insertions(+)
diff --git a/src/intel/isl/isl.h b/src/intel/isl/isl.h
index c84e685..bef2592 100644
--- a/src/intel/isl/isl.h
+++ b/src/intel/isl/isl.h
@@ -863,6 +863,8 @@ isl_format_has_in
---
src/intel/isl/isl.h | 7 +++
src/intel/isl/isl_storage_image.c | 10 ++
2 files changed, 17 insertions(+)
diff --git a/src/intel/isl/isl.h b/src/intel/isl/isl.h
index 2982bad..c6fe318 100644
--- a/src/intel/isl/isl.h
+++ b/src/intel/isl/isl.h
@@ -912,6 +912,13 @@ en
Previously, we were relying on has_matching_typed_format returning true for
MESA_FORMAT_NONE which, in turn, relied on _mesa_get_format_bytes returning
1 for MESA_FORMAT_NONE. When we switch to ISL, this behaviour will no
longer be something we can rely on.
---
src/mesa/drivers/dri/i965/brw_fs_su
---
src/mesa/drivers/dri/i965/brw_fs_nir.cpp | 8 +++-
src/mesa/drivers/dri/i965/brw_fs_surface_builder.cpp | 7 +--
src/mesa/drivers/dri/i965/brw_fs_surface_builder.h | 4 ++--
3 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_n
C++ doesn't define the "restrict" keyword so g++ barfs when it sees isl.h.
Having our own define lets us define it to be a no-op for C++.
---
src/intel/isl/isl.h | 18 ++
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/src/intel/isl/isl.h b/src/intel/isl/isl.h
index
---
src/intel/vulkan/anv_image.c | 15 +++
1 file changed, 3 insertions(+), 12 deletions(-)
diff --git a/src/intel/vulkan/anv_image.c b/src/intel/vulkan/anv_image.c
index 7236b81..03a8cb8 100644
--- a/src/intel/vulkan/anv_image.c
+++ b/src/intel/vulkan/anv_image.c
@@ -424,16 +424,6 @@
---
src/intel/isl/isl_format.c | 34 --
1 file changed, 16 insertions(+), 18 deletions(-)
diff --git a/src/intel/isl/isl_format.c b/src/intel/isl/isl_format.c
index 32bd701..b0450d9 100644
--- a/src/intel/isl/isl_format.c
+++ b/src/intel/isl/isl_format.c
@@ -25,32
---
.../drivers/dri/i965/brw_fs_surface_builder.cpp| 55 ++
1 file changed, 55 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_surface_builder.cpp
b/src/mesa/drivers/dri/i965/brw_fs_surface_builder.cpp
index 0932336..23ad511 100644
--- a/src/mesa/drivers/dri/i
---
.../drivers/dri/i965/brw_fs_surface_builder.cpp| 118 +
1 file changed, 52 insertions(+), 66 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_surface_builder.cpp
b/src/mesa/drivers/dri/i965/brw_fs_surface_builder.cpp
index 23ad511..fc1fc13 100644
--- a/src/m
---
src/intel/isl/isl.h| 23 +++
src/intel/isl/isl_format.c | 24
2 files changed, 43 insertions(+), 4 deletions(-)
diff --git a/src/intel/isl/isl.h b/src/intel/isl/isl.h
index c6fe318..c84e685 100644
--- a/src/intel/isl/isl.h
+++ b/src/intel/i
We want to call this function from the shader compiler and having a full
isl_device available at that point isn't practical.
---
src/intel/isl/isl.h | 2 +-
src/intel/isl/isl_storage_image.c | 30 +++---
src/intel/isl/isl_surface_state.c | 3 ++-
src/intel/v
---
configure.ac | 3 ++-
src/Makefile.am | 9 +++--
src/intel/Makefile.am | 4
src/mesa/drivers/dri/i965/Makefile.am | 7 ++-
4 files changed, 15 insertions(+), 8 deletions(-)
diff --git a/configure.ac b/configure.ac
ind
C++ doesn't support designated initializers and g++ in particular doesn't
handle them when the struct gets complicated, i.e. has a union.
---
src/intel/isl/isl.h | 32
1 file changed, 20 insertions(+), 12 deletions(-)
diff --git a/src/intel/isl/isl.h b/src/intel/i
This little series switches our back-end compiler to use libisl for the
surface format introspection it needs for doing image_load_store shader
work-arounds. Format introspection is the one place where thet back-end
compilers still have a dependency on libmesa.
Once this dependency is removed, we
On Sat, Apr 16, 2016 at 8:50 AM, Marek Olšák wrote:
> From: Marek Olšák
>
> and remove number assignments which are consecutive
> ---
> src/gallium/include/pipe/p_defines.h | 378
> +++
> 1 file changed, 205 insertions(+), 173 deletions(-)
>
> diff --git a/src/ga
if brw_meta_stencil_blit() errored at wrong place 'target' would
be uninitialized and cause random behaviour on leaving the funtion.
Signed-off-by: Juha-Pekka Heikkila
---
src/mesa/drivers/dri/i965/brw_meta_stencil_blit.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/me
Initialize drawFb to NULL in _mesa_meta_CopyImageSubData_uncompressed()
if getting readFb fails uninitialized drawFb will cause randomness
on cleanup.
Signed-off-by: Juha-Pekka Heikkila
---
src/mesa/drivers/common/meta_copy_image.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --gi
These are just fixes for error paths.
Juha-Pekka Heikkila (2):
meta: Avoid random memory access on error
meta: initialize values to avoid random behaviour on error path
src/mesa/drivers/common/meta_copy_image.c | 2 +-
src/mesa/drivers/dri/i965/brw_meta_stencil_blit.c | 2 +-
2 files
All,
With Topi's gen8/9 blorp patches on the list, I wanted to start a brief
discussion about the future of blorp in the hopes of us all being on the
same page and not stepping on each other's toes. I think everyone is now
agreed that blorp is the future and GL meta should die.
As we continue to
On 16.04.2016 05:20, Marek Olšák wrote:
On Sat, Apr 16, 2016 at 8:04 AM, Michel Dänzer wrote:
On 16.04.2016 14:51, Michel Dänzer wrote:
On 16.04.2016 11:39, Tom Stellard wrote:
The ds_bpermute instruction allows threads to transfer data directly
to or from the vgprs of other threads. These i
From: Nicolai Hähnle
---
We will soon claim GLES 3.1 support, which requires gl_HelperInvocation,
so now is the time to do this.
This depends on LLVM support: http://reviews.llvm.org/D19191
docs/GL3.txt | 2 +-
src/gallium/drivers/radeonsi/si_shader.c | 11
On Sat, Apr 16, 2016 at 8:50 AM, Marek Olšák wrote:
> From: Marek Olšák
>
> we should use MESA_SHADER_* everywhere, but we're not ready for that yet
H not sure if this is right. I thought the idea is that TGSI
should be its own self-contained encoding of things, and the shader
type is on
On Sat, Apr 16, 2016 at 10:36 AM, Marek Olšák wrote:
> On Sat, Apr 16, 2016 at 3:28 PM, Roland Scheidegger
> wrote:
>> Am 16.04.2016 um 15:19 schrieb eocallag...@alterapraxis.com:
>>> On 2016-04-16 20:20, Marek Olšák wrote:
On Sat, Apr 16, 2016 at 8:04 AM, Michel Dänzer
wrote:
> O
On Sat, Apr 16, 2016 at 3:28 PM, Roland Scheidegger wrote:
> Am 16.04.2016 um 15:19 schrieb eocallag...@alterapraxis.com:
>> On 2016-04-16 20:20, Marek Olšák wrote:
>>> On Sat, Apr 16, 2016 at 8:04 AM, Michel Dänzer
>>> wrote:
On 16.04.2016 14:51, Michel Dänzer wrote:
> On 16.04.2016 11:
Am 16.04.2016 um 15:19 schrieb eocallag...@alterapraxis.com:
> On 2016-04-16 20:20, Marek Olšák wrote:
>> On Sat, Apr 16, 2016 at 8:04 AM, Michel Dänzer
>> wrote:
>>> On 16.04.2016 14:51, Michel Dänzer wrote:
On 16.04.2016 11:39, Tom Stellard wrote:
> The ds_bpermute instruction allows th
This patch adds additional MOV instruction for all blorp programs
that use SHADER_OPCODE_TXF. Alternative is to augment blorp program
key to tell if z-coordinate is needed, add condition to the blorp
blit compiler and to produce a variant with and without the MOV.
This seems a little overkill.
Sig
I noticed using one synthetic benchmark a sequence where hiz depth
operations are run first followed by a color buffer clear. In such
case there is a difference between blorp and meta clear where meta
configures L3 but blorp doesn't. I didn't see any problems in
practise without the configure but t
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 2 +-
src/mesa/drivers/dri/i965/intel_mipmap_tree.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
b/src/mesa/drivers/dri/i965/intel_mipmap_tr
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_meta_fast_clear.c | 34 +
src/mesa/drivers/dri/i965/brw_meta_util.h | 2 +-
2 files changed, 19 insertions(+), 17 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_meta_fast_clear.c
b/src/mesa
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_context.h | 1 +
src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 3 ++-
src/mesa/drivers/dri/i965/gen7_wm_surface_state.c | 7 +--
src/mesa/drivers/dri/i965/gen8_surface_state.c| 7 ---
4 files changed, 12
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_blorp.cpp | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_blorp.cpp
b/src/mesa/drivers/dri/i965/brw_blorp.cpp
index 618949c..5f0083c 100644
--- a/src/mesa/drivers/dri/i965/brw_blorp.cpp
+++ b/sr
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_blorp.cpp | 4 +++-
src/mesa/drivers/dri/i965/gen7_blorp.cpp | 2 ++
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/mesa/drivers/dri/i965/brw_blorp.cpp
b/src/mesa/drivers/dri/i965/brw_blorp.cpp
index 5f0083c..c
Otherwise clearing with blorp will regress performance in some
synthetic test cases.
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/gen7_blorp.cpp | 14 ++
1 file changed, 14 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/gen7_blorp.cpp
b/src/mesa/drivers/dri/i
which results into, for example, urb configuration to be re-emitted
even though it is not needed. There are a few emitters that rely
solely on BRW_NEW_CONTEXT in driver state. These can be addressed
using GL-state instead (similarly to gen8_hiz_exec()):
gen6_sf_state: _NEW_PROGRAM
gen7_sf_st
On gen8 color resolving won't work anymore if the target isn't
the first entry in the binding table.
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_blorp.h | 2 +-
src/mesa/drivers/dri/i965/brw_blorp_blit_eu.cpp | 4
2 files changed, 5 insertions(+), 1 deletion(
This partially reverts 2f28a0dc23165123cf1e8b5942acad37878edd8a
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/Makefile.sources| 1 +
src/mesa/drivers/dri/i965/brw_blorp.h | 8 +
src/mesa/drivers/dri/i965/brw_blorp_blit.cpp | 4 +-
src/mesa/drivers/dri/i965/brw_
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_blorp.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/mesa/drivers/dri/i965/brw_blorp.cpp
b/src/mesa/drivers/dri/i965/brw_blorp.cpp
index 1d3b3e2..04a2a74 100644
--- a/src/mesa/drivers/dri/i965/brw_bl
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_blorp_blit.cpp | 10 ++
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 9 +++--
2 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp
b/src/mesa/drivers/dri/i96
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/Makefile.sources | 1 +
src/mesa/drivers/dri/i965/brw_blorp.h | 3 +
src/mesa/drivers/dri/i965/gen8_blorp.cpp | 694 +
3 files changed, 698 insertions(+)
create mode 100644 src/mesa/drivers/dri/i
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_blorp.cpp | 4
src/mesa/drivers/dri/i965/brw_blorp.h| 1 +
src/mesa/drivers/dri/i965/gen6_blorp.cpp | 5 +
src/mesa/drivers/dri/i965/gen8_blorp.cpp | 9 +
4 files changed, 19 insertions(+)
diff --git a/src/me
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_blorp.cpp | 1 +
src/mesa/drivers/dri/i965/brw_blorp.h| 1 +
src/mesa/drivers/dri/i965/gen7_blorp.cpp | 2 ++
src/mesa/drivers/dri/i965/gen8_blorp.cpp | 1 +
4 files changed, 5 insertions(+)
diff --git a/src/mesa/drivers/dri/
Also add the additional render format check to the same utility.
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_meta_fast_clear.c | 40 -
src/mesa/drivers/dri/i965/brw_meta_util.h | 5
2 files changed, 25 insertions(+), 20 deletions(-)
diff
In case there is no source it means the program does a simple
clear or a resolve. In such case there is no need to program
sampling state or enable pixel kill in fragment shader.
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/gen6_blorp.cpp | 13 +
src/mesa/drivers/dri
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_blorp.cpp | 3 ++-
src/mesa/drivers/dri/i965/brw_blorp_blit.cpp | 4 ++--
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_blorp.cpp
b/src/mesa/drivers/dri/i965/brw_blorp.cpp
index
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_meta_fast_clear.c | 26 +++--
src/mesa/drivers/dri/i965/brw_meta_util.h | 5 +
2 files changed, 21 insertions(+), 10 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_meta_fast_clear.c
b/src/m
Generator is only needed for getting the assembly.
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_blorp_blit.cpp| 23 ++-
src/mesa/drivers/dri/i965/brw_blorp_blit_eu.cpp | 22 --
src/mesa/drivers/dri/i965/brw_blorp_blit_eu.h | 6 +
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/gen8_ds_state.c | 22 ++
1 file changed, 18 insertions(+), 4 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/gen8_ds_state.c
b/src/mesa/drivers/dri/i965/gen8_ds_state.c
index d91eb77..976e3cc 100644
--- a/src/
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_meta_fast_clear.c | 16 +---
src/mesa/drivers/dri/i965/brw_meta_util.h | 6 ++
2 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_meta_fast_clear.c
b/src/mesa/drive
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_blorp.cpp | 6 +-
src/mesa/drivers/dri/i965/brw_blorp_blit.cpp | 8 +---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 3 +--
3 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/src/mesa/drivers/dri/i96
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_clear.c | 9 +
1 file changed, 9 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_clear.c
b/src/mesa/drivers/dri/i965/brw_clear.c
index 841ba5d..d57b677 100644
--- a/src/mesa/drivers/dri/i965/brw_clear.c
+++ b/src
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_meta_fast_clear.c | 44 ++---
src/mesa/drivers/dri/i965/brw_meta_util.h | 8 +
2 files changed, 33 insertions(+), 19 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_meta_fast_clear.c
b/src/m
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_blorp.h| 39
src/mesa/drivers/dri/i965/gen7_blorp.cpp | 22 +-
2 files changed, 50 insertions(+), 11 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_blorp.h
b/src/mesa/
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_blorp.cpp | 3 ++-
src/mesa/drivers/dri/i965/gen6_blorp.cpp | 5 +
src/mesa/drivers/dri/i965/gen8_blorp.cpp | 4 +++-
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_blorp.cpp
b/s
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_meta_fast_clear.c | 10 +-
src/mesa/drivers/dri/i965/brw_meta_util.h | 5 +
2 files changed, 10 insertions(+), 5 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_meta_fast_clear.c
b/src/mesa/drivers/dri/
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94181
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
b/src/mesa/drivers/dri/i965/intel_mipm
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/gen7_blorp.cpp | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/gen7_blorp.cpp
b/src/mesa/drivers/dri/i965/gen7_blorp.cpp
index eae1e30..4debeb3 100644
--- a/src/mesa/drivers/dri/i965
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/gen8_misc_state.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/mesa/drivers/dri/i965/gen8_misc_state.c
b/src/mesa/drivers/dri/i965/gen8_misc_state.c
index a46b252..c0014e5 100644
--- a/src/mesa/drivers/dri
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/gen6_blorp.cpp | 30 ++
1 file changed, 22 insertions(+), 8 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/gen6_blorp.cpp
b/src/mesa/drivers/dri/i965/gen6_blorp.cpp
index f3ce42c..d635962 100644
--- a
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/brw_state.h | 15
src/mesa/drivers/dri/i965/gen8_surface_state.c | 51 +-
2 files changed, 41 insertions(+), 25 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_state.h
b/src/mesa/driv
Currently the size is sizeof(float) times too large. One reserves
GEN6_BLORP_VBO_SIZE many floats whereas GEN6_BLORP_VBO_SIZE stands
for the size of vertex buffer in bytes.
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/gen6_blorp.cpp | 31 ++-
1 file c
Otherwise switch from blorp to compute failes. Note that this now
follows the normal i965 upload logic found in gen7_upload_urb().
Effectively vs_size changes from 2 to 1 and vs_start from 2 to 4.
Signed-off-by: Topi Pohjolainen
---
src/mesa/drivers/dri/i965/gen7_blorp.cpp | 19 ++--
This series adds blorp pipeline upload support for gen8 and gen9,
switches over to blorp blits (except for 2X and 16X msaa which don't
have support in blorp yet) and finally re-introduces blorp clears
for gen6-9. This makes it possible to close bug 94181 preventing
single sample compression getting
1 - 100 of 118 matches
Mail list logo