On Sat, May 2, 2015 at 9:47 PM, Ilia Mirkin wrote:
> Hello,
>
> I've started working on implementing ARB_query_buffer_object, and am
> trying to work out the driver interface. I'm thinking something along
> these lines:
>
> void (*CheckQuery)(struct gl_context *ctx, struct gl_query_object *q);
Hello,
I've started working on implementing ARB_query_buffer_object, and am
trying to work out the driver interface. I'm thinking something along
these lines:
void (*CheckQuery)(struct gl_context *ctx, struct gl_query_object *q);
void (*WaitQuery)(struct gl_context *ctx, struct gl_query_o
This series adds tokens and updates some helper gallium functions to
know about tessellation. This provides no actual support for
tessellation in either core or drivers, however this will make it
possible to work on the core and driver pieces without crazy
interdependencies, as well as be landed se
Signed-off-by: Ilia Mirkin
---
src/gallium/include/pipe/p_state.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/gallium/include/pipe/p_state.h
b/src/gallium/include/pipe/p_state.h
index e713a44..449c7f1 100644
--- a/src/gallium/include/pipe/p_state.h
+++ b/src/gallium/include/pipe/p_
Signed-off-by: Ilia Mirkin
---
src/gallium/auxiliary/tgsi/tgsi_ureg.c | 24 --
src/gallium/auxiliary/tgsi/tgsi_ureg.h | 59 ++
2 files changed, 75 insertions(+), 8 deletions(-)
diff --git a/src/gallium/auxiliary/tgsi/tgsi_ureg.c
b/src/gallium/auxiliar
Signed-off-by: Ilia Mirkin
---
src/gallium/auxiliary/tgsi/tgsi_sanity.c | 36
1 file changed, 32 insertions(+), 4 deletions(-)
diff --git a/src/gallium/auxiliary/tgsi/tgsi_sanity.c
b/src/gallium/auxiliary/tgsi/tgsi_sanity.c
index fbfe652..2ac74fb 100644
--- a/sr
From: Marek Olšák
---
src/gallium/auxiliary/tgsi/tgsi_ureg.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/gallium/auxiliary/tgsi/tgsi_ureg.c
b/src/gallium/auxiliary/tgsi/tgsi_ureg.c
index a4c0fc5..55d8cf1 100644
--- a/src/gallium/auxiliary/tgsi/tgsi_ureg.c
+++ b/src/g
Signed-off-by: Ilia Mirkin
---
src/gallium/auxiliary/tgsi/tgsi_strings.c | 5
src/gallium/docs/source/tgsi.rst | 37 ++
src/gallium/include/pipe/p_shader_tokens.h | 7 +-
3 files changed, 48 insertions(+), 1 deletion(-)
diff --git a/src/gallium/a
Signed-off-by: Ilia Mirkin
---
src/gallium/auxiliary/tgsi/tgsi_strings.c | 7 ++-
src/gallium/docs/source/tgsi.rst | 33 ++
src/gallium/include/pipe/p_defines.h | 7 +++
src/gallium/include/pipe/p_shader_tokens.h | 7 ++-
4 files changed
From: Marek Olšák
---
src/gallium/auxiliary/cso_cache/cso_context.c | 93 +++
src/gallium/auxiliary/cso_cache/cso_context.h | 12
2 files changed, 105 insertions(+)
diff --git a/src/gallium/auxiliary/cso_cache/cso_context.c
b/src/gallium/auxiliary/cso_cache/cso_con
Signed-off-by: Ilia Mirkin
---
src/gallium/auxiliary/tgsi/tgsi_scan.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/gallium/auxiliary/tgsi/tgsi_scan.c
b/src/gallium/auxiliary/tgsi/tgsi_scan.c
index e6011d2..3f94bab 100644
--- a/src/gallium/auxiliary/tgsi/tgsi_scan.
From: Marek Olšák
---
src/gallium/auxiliary/util/u_blitter.c | 27 +++
src/gallium/auxiliary/util/u_blitter.h | 16 +++-
2 files changed, 42 insertions(+), 1 deletion(-)
diff --git a/src/gallium/auxiliary/util/u_blitter.c
b/src/gallium/auxiliary/util/u_blitt
Signed-off-by: Ilia Mirkin
mareko: only output second dimension for non-patch semantics
---
src/gallium/auxiliary/tgsi/tgsi_dump.c | 20 ++--
1 file changed, 18 insertions(+), 2 deletions(-)
diff --git a/src/gallium/auxiliary/tgsi/tgsi_dump.c
b/src/gallium/auxiliary/tgsi/tgsi_du
From: Marek Olšák
---
src/gallium/auxiliary/cso_cache/cso_context.c | 7 +++
1 file changed, 7 insertions(+)
diff --git a/src/gallium/auxiliary/cso_cache/cso_context.c
b/src/gallium/auxiliary/cso_cache/cso_context.c
index 021ea42..51aadfb 100644
--- a/src/gallium/auxiliary/cso_cache/cso_co
From: Marek Olšák
---
src/gallium/include/pipe/p_state.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/gallium/include/pipe/p_state.h
b/src/gallium/include/pipe/p_state.h
index e15860c..e713a44 100644
--- a/src/gallium/include/pipe/p_state.h
+++ b/src/gallium/inclu
From: Marek Olšák
---
src/gallium/auxiliary/util/u_dump_state.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/gallium/auxiliary/util/u_dump_state.c
b/src/gallium/auxiliary/util/u_dump_state.c
index e6614d5..4fa4e23 100644
--- a/src/gallium/auxiliary/util/u_dump_state.c
+++ b/src/gal
From: Marek Olšák
---
src/gallium/auxiliary/hud/hud_context.c| 6 ++
src/gallium/auxiliary/postprocess/pp_run.c | 6 ++
src/gallium/auxiliary/util/u_blit.c| 6 ++
src/mesa/state_tracker/st_cb_bitmap.c | 8 +++-
src/mesa/state_tracker/st_cb_clear.c | 6 +
From: Marek Olšák
---
src/gallium/drivers/trace/tr_context.c| 26 ++
src/gallium/drivers/trace/tr_dump_state.c | 2 ++
2 files changed, 28 insertions(+)
diff --git a/src/gallium/drivers/trace/tr_context.c
b/src/gallium/drivers/trace/tr_context.c
index e713aba..02a7
Signed-off-by: Ilia Mirkin
---
src/gallium/docs/source/context.rst | 5 +
src/gallium/include/pipe/p_context.h | 4
2 files changed, 9 insertions(+)
diff --git a/src/gallium/docs/source/context.rst
b/src/gallium/docs/source/context.rst
index 5861f46..0908ee7 100644
--- a/src/gallium/d
Signed-off-by: Ilia Mirkin
---
src/gallium/auxiliary/tgsi/tgsi_strings.c | 3 ++-
src/gallium/include/pipe/p_defines.h | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/gallium/auxiliary/tgsi/tgsi_strings.c
b/src/gallium/auxiliary/tgsi/tgsi_strings.c
index e712f30.
Signed-off-by: Ilia Mirkin
---
src/gallium/include/pipe/p_context.h | 10 ++
1 file changed, 10 insertions(+)
diff --git a/src/gallium/include/pipe/p_context.h
b/src/gallium/include/pipe/p_context.h
index a4cae8e..74c2f2f 100644
--- a/src/gallium/include/pipe/p_context.h
+++ b/src/galli
Signed-off-by: Ilia Mirkin
---
src/gallium/auxiliary/tgsi/tgsi_info.c | 4
src/gallium/auxiliary/tgsi/tgsi_strings.c | 4 +++-
src/gallium/auxiliary/tgsi/tgsi_strings.h | 2 +-
src/gallium/include/pipe/p_defines.h | 6 --
src/gallium/include/pipe/p_shader_tokens.h | 4 +++-
5
On Sat, May 2, 2015 at 1:19 PM, EdB wrote:
> The standard ICD file path is /etc/OpenCL/vendor/.
> However it doesn't fit well with custom build.
> This option allow ICD vendor file installation path override
> ---
> configure.ac | 6 ++
> src/gallium/targets/opencl/M
The standard ICD file path is /etc/OpenCL/vendor/.
However it doesn't fit well with custom build.
This option allow ICD vendor file installation path override
---
configure.ac | 6 ++
src/gallium/targets/opencl/Makefile.am | 2 +-
2 files changed, 7 insertions(+), 1 d
Define some utility functions to query the bitfield layout of a given
image format and whether it satisfies a number of more or less
hardware-specific properties.
v2: Drop VEC4 suport.
---
src/mesa/drivers/dri/i965/brw_fs_surface_builder.h | 147 +
1 file changed, 147 insertio
Define bitfield packing, unpacking and type conversion operations in
terms of which the image format conversion code will be implemented.
These don't directly know about image formats: The packing and
unpacking functions take a 4-tuple of bit shifts and a 4-tuple of bit
widths as arguments, determi
v2: Drop VEC4 suport.
---
src/mesa/drivers/dri/i965/brw_fs.h | 1 +
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 11 +++
2 files changed, 12 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_fs.h
b/src/mesa/drivers/dri/i965/brw_fs.h
index e4f3c25..3b9907e 100644
--- a
Define a few transformations on register arrays which will be used
frequently during the construction of typed and untyped surface
message payloads. Their purpose is simple but the implementation is
rather messy, so it makes a lot of sense to factor them out as
separate functions.
v2: Drop VEC4 s
These functions implement the memory layout of a vecN value in a
message or return payload. The conversion is not always trivial
because the shared unit may not support the SIMD16 or SIMD4x2 vector
layouts, requiring splitting the payload in half and merging the reply
in the former case, or spread
This is a rewrite of the GLSL IR atomic counter intrinsics translation
code based on the recently introduced surface builder.
v2: Drop VEC4 suport.
---
src/mesa/drivers/dri/i965/brw_fs.h | 3 +-
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 79
2 files cha
Reviewed-by: Paul Berry
v2: Disable the extension for the time being if NIR is in use until it
grows the necessary intrinsics.
---
src/mesa/drivers/dri/i965/intel_extensions.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/intel_extensions.c
b/src/mesa/drive
v2: Drop VEC4 suport.
---
src/mesa/drivers/dri/i965/brw_fs.h | 1 +
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 142 +++
2 files changed, 143 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_fs.h
b/src/mesa/drivers/dri/i965/brw_fs.h
index 6d3701c..e
Reviewed-by: Paul Berry
v2: Drop VS support pre-Gen8, drop GS support.
---
src/mesa/drivers/dri/i965/brw_context.c | 12
1 file changed, 12 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_context.c
b/src/mesa/drivers/dri/i965/brw_context.c
index 30263d0..bd8aa32 100644
--
Define a function to calculate the memory address of the image
location given by a vector of coordinates. This is required in cases
where we need to fall back to untyped surface access, which take a raw
memory offset and know nothing about surface coordinates, type
conversion or memory tiling and
v2: Drop VEC4 suport.
---
src/mesa/drivers/dri/i965/brw_fs_nir.cpp | 58 +++-
1 file changed, 42 insertions(+), 16 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_nir.cpp
b/src/mesa/drivers/dri/i965/brw_fs_nir.cpp
index 555987d..1443ef0 100644
--- a/src/mes
---
src/mesa/drivers/dri/i965/brw_fs_generator.cpp | 8 ++--
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 4
src/mesa/drivers/dri/i965/brw_vec4_generator.cpp | 8 ++--
src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp | 4
4 files changed, 12 insertions(+), 12 deletions(-)
v2: Drop VEC4 suport.
---
.../drivers/dri/i965/brw_fs_surface_builder.cpp| 216 +
src/mesa/drivers/dri/i965/brw_fs_surface_builder.h | 17 ++
2 files changed, 233 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_surface_builder.cpp
b/src/mesa/drivers/dri/i965/
These utility functions check whether an image access is valid.
According to the spec an invalid image access should have no effect on
the image and yield well-defined results. Typically the hardware
implements correct bounds and surface checking by itself, but in some
cases (typed atomics on IVB
---
src/mesa/drivers/dri/i965/brw_fs.h | 7 --
src/mesa/drivers/dri/i965/brw_fs_nir.cpp | 12 ++-
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 125 ++-
3 files changed, 10 insertions(+), 134 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_fs.h
b
Implement helper functions that can be used to construct and send
untyped and typed surface read, write and atomic messages to the
shared dataport unit.
v2: Drop VEC4 suport.
---
.../drivers/dri/i965/brw_fs_surface_builder.cpp| 232 +
src/mesa/drivers/dri/i965/brw_fs_surfa
Until now atomic counter built-ins were handled in a way that
prevented the visitor from encountering atomic counter IR variables
and dereferences directly. With the new intrinsic lowering code it's
going to be more convenient to be able to call back into the visitor
to let it handle the ugly deta
---
src/mesa/drivers/dri/i965/brw_ir_fs.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/mesa/drivers/dri/i965/brw_ir_fs.h
b/src/mesa/drivers/dri/i965/brw_ir_fs.h
index e2d2617..32fab65 100644
--- a/src/mesa/drivers/dri/i965/brw_ir_fs.h
+++ b/src/mesa/drivers/dri/i965/brw_ir_fs.h
@@ -164
---
src/mesa/drivers/dri/i965/brw_ir_fs.h | 11 +++
src/mesa/drivers/dri/i965/brw_ir_vec4.h | 11 +++
2 files changed, 22 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_ir_fs.h
b/src/mesa/drivers/dri/i965/brw_ir_fs.h
index db021a5..0874a2c 100644
--- a/src/mesa/driver
---
src/mesa/drivers/dri/i965/brw_ir_fs.h | 22 ++
src/mesa/drivers/dri/i965/brw_ir_vec4.h | 22 ++
2 files changed, 44 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_ir_fs.h
b/src/mesa/drivers/dri/i965/brw_ir_fs.h
index 6c65632..9453b5d 100644
These are going to be used to convert an array_reg (chunk of the
register space without fancy regioning parameters) back to a normal
FS/VEC4 register.
---
src/mesa/drivers/dri/i965/brw_fs.cpp| 6 ++
src/mesa/drivers/dri/i965/brw_ir_fs.h | 1 +
src/mesa/drivers/dri/i965/brw_ir_vec4.h |
This method will be used by the implementation of the image and atomic
counter built-ins to extract the result of evaluating its arguments.
---
src/mesa/drivers/dri/i965/brw_fs.h | 3 +++
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 7 +++
src/mesa/drivers/dri/i965/brw_vec4.h
Until now atomic counter built-ins were handled in a way that
prevented the visitor from encountering atomic counter IR variables
and dereferences directly. With the new intrinsic lowering code it's
going to be more convenient to be able to call back into the visitor
to let it handle the ugly deta
This v2 is motivated by the less than enthusiastic reception of my
last two series implementing the image load, store and atomic
intrinsics in the i965 back-end. It substitutes both.
The built-ins are now implemented in the scalar back-end only, what
means that IVB and HSW are no longer able to e
---
src/mesa/drivers/dri/i965/brw_fs.cpp | 25
src/mesa/drivers/dri/i965/brw_shader.cpp | 32 ++
src/mesa/drivers/dri/i965/brw_shader.h | 2 ++
src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp | 23 +-
4 files chan
---
src/mesa/drivers/dri/i965/brw_ir_fs.h | 10 ++
src/mesa/drivers/dri/i965/brw_ir_vec4.h | 9 +
2 files changed, 19 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_ir_fs.h
b/src/mesa/drivers/dri/i965/brw_ir_fs.h
index ce23fc5..6c65632 100644
--- a/src/mesa/drivers/d
The purpose of this change is threefold: First, it improves the
modularity of the compiler back-end by separating the functionality
required to construct an i965 IR program from the rest of the visitor
god-object, what in turn will reduce the coupling between other
components and the visitor allowi
This cleans up the VEC4 implementation of setup_uniform_values()
somewhat and will avoid duplication of the image uniform upload code
by having a common interface to upload a vector of uniforms on either
back-end.
---
src/mesa/drivers/dri/i965/brw_fs.cpp | 12
src/mesa/drivers/d
---
src/mesa/drivers/dri/i965/brw_ir_fs.h | 11 +++
src/mesa/drivers/dri/i965/brw_ir_vec4.h | 11 +++
2 files changed, 22 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_ir_fs.h
b/src/mesa/drivers/dri/i965/brw_ir_fs.h
index 9453b5d..db021a5 100644
--- a/src/mesa/driver
See "i965/fs: Introduce FS IR builder." for the rationale.
v2: Drop scalarizing VEC4 builder.
---
src/mesa/drivers/dri/i965/Makefile.sources | 1 +
src/mesa/drivers/dri/i965/brw_vec4_builder.h | 579 +++
2 files changed, 580 insertions(+)
create mode 100644 src/mesa/d
Enables to use dri config for swrast, like vblank_mode.
Signed-off-by: Axel Davy
---
src/egl/drivers/dri2/egl_dri2.c| 21 ++---
src/gallium/state_trackers/dri/drisw.c | 1 +
src/mesa/drivers/dri/swrast/swrast.c | 1 +
3 files changed, 12 insertions(+), 11 deletions(-)
the wl_registry and the wl_queue allocated weren't destroyed.
Signed-off-by: Axel Davy
---
src/egl/drivers/dri2/egl_dri2.c | 2 ++
src/egl/drivers/dri2/platform_wayland.c | 5 -
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/dr
Since gallium egl state tracker was dropped,
there was no way to use swrast with wayland,
since it was not implemented for egl_dri2.
https://bugs.freedesktop.org/show_bug.cgi?id=86701
This patch serie aimed at implementing swrast support
for the wayland egl_dri2 backend.
But I also went at fixing
Only EGL_WINDOW_BIT is supported. Remove tests related.
Signed-off-by: Axel Davy
---
src/egl/drivers/dri2/platform_wayland.c | 38 +++--
1 file changed, 13 insertions(+), 25 deletions(-)
diff --git a/src/egl/drivers/dri2/platform_wayland.c
b/src/egl/drivers/dri2/pla
Signed-off-by: Axel Davy
---
src/egl/drivers/dri2/egl_dri2.c | 5 +-
src/egl/drivers/dri2/egl_dri2.h | 4 +
src/egl/drivers/dri2/platform_wayland.c | 704 +++-
3 files changed, 696 insertions(+), 17 deletions(-)
diff --git a/src/egl/drivers/dri2/eg
Signed-off-by: Axel Davy
---
src/egl/drivers/dri2/egl_dri2_fallbacks.h | 9 +
src/egl/drivers/dri2/platform_x11.c | 11 +--
2 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/src/egl/drivers/dri2/egl_dri2_fallbacks.h
b/src/egl/drivers/dri2/egl_dri2_fallbacks.
It is possible the server advertises a render-node.
In that case no authentication is needed,
and Gem names are forbidden.
Signed-off-by: Axel Davy
---
src/egl/drivers/dri2/egl_dri2.h | 1 +
src/egl/drivers/dri2/platform_wayland.c | 58 +++--
2 files changed,
When the server gpu and requested gpu are different:
. They likely don't support the same tiling modes
. They likely do not have fast access to the same locations
Thus we do:
. render to a tiled buffer we do not share with the server
. Copy the content at every swap to a buffer with no tiling
that
Checks blitImage is implemented.
Initially having the __DRIimageExtension extension
at version 9 at least meant blitImage was supported.
However some implementations do advertise version >= 9
without implementing it.
Signed-off-by: Axel Davy
---
src/glx/dri3_glx.c | 5 +
1 file changed, 5 in
EGL_SOFTWARE is not supported anywhere in the code,
whereas LIBGL_ALWAYS_SOFTWARE is.
Signed-off-by: Axel Davy
---
docs/egl.html | 8
1 file changed, 8 deletions(-)
diff --git a/docs/egl.html b/docs/egl.html
index d946bb0..3ab1a60 100644
--- a/docs/egl.html
+++ b/docs/egl.html
@@ -184,
64 matches
Mail list logo