On 14.08.2014 04:33, Ian Romanick wrote:
> On 07/29/2014 02:36 AM, Petri Latvala wrote:
>> Add an optimization pass that drops min/max expression operands that
>> can be proven to not contribute to the final result. The algorithm is
>> similar to alpha-beta pruning on a minmax search, from the fi
in
instruction count are all due to the loop unroll pass triggered by this
optimization
on games that contain looped clamp/saturate operation. The unroll pass also
resulted in a few shaders with looped clamp/sat skipping SIMD16 generation.
** No piglit regressions observed **
Abdiel Janulgue (17):
Signed-off-by: Abdiel Janulgue
---
src/glsl/ir.cpp | 2 ++
src/glsl/ir.h| 1 +
src/glsl/ir_validate.cpp | 1 +
3 files changed, 4 insertions(+)
diff --git a/src/glsl/ir.cpp b/src/glsl/ir.cpp
index 4a4d304..ef04ed0 100644
--- a/src/glsl/ir.cpp
+++ b/src/glsl/ir.cpp
@@ -255,6
Needed when vertex programs doesn't allow saturate
Reviewed-by: Matt Turner
Signed-off-by: Abdiel Janulgue
---
src/mesa/program/ir_to_mesa.cpp| 5 -
src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 6 +-
2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/src
Reviewed-by: Matt Turner
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp | 1 +
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 4
2 files changed, 5 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp
Signed-off-by: Abdiel Janulgue
---
src/glsl/ir_optimization.h | 1 +
src/glsl/lower_instructions.cpp | 29 +
2 files changed, 30 insertions(+)
diff --git a/src/glsl/ir_optimization.h b/src/glsl/ir_optimization.h
index b83c225..1c6f72b 100644
--- a/src/glsl
rom copy_entry (Matt Turner)
v4: - Take channels into consideration when propagating saturated instructions.
Signed-off-by: Abdiel Janulgue
---
.../drivers/dri/i965/brw_vec4_copy_propagation.cpp | 85 +++---
1 file changed, 58 insertions(+), 27 deletions(-)
diff --git a/src/m
Now that saturate is implemented natively as an instruction,
we can cut down on unneeded functionality.
Reviewed-by: Matt Turner
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_vec4.h | 1 -
src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp | 21
When sel conditon is bounded within 0 and 1.0. This allows code as:
mov.sat a b
sel.ge dst a 0.25F
To be propagated as:
sel.ge.sat dst b 0.25F
v3: Syntax clarifications in inst->saturate assignment (Matt Turner)
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_fs_generator.cpp | 6 --
src/mesa/drivers/dri/i965/brw_vec4.h | 1 +
src/mesa/drivers/dri/i965/brw_vec4_generator.cpp | 6 --
3 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/src/mesa/drivers/dri
Now that we have the ir_unop_saturate implemented as a single
instruction, generate the correct simplified expression.
Reviewed-by: Matt Turner
Signed-off-by: Abdiel Janulgue
---
src/glsl/ir_builder.cpp | 6 +-
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/src/glsl
are doing a commutative operation (Matt Turner)
Signed-off-by: Abdiel Janulgue
---
src/glsl/opt_algebraic.cpp | 39 +++
1 file changed, 39 insertions(+)
diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp
index 4b052933..6dfb681 100644
--- a/
Reviewed-by: Matt Turner
Signed-off-by: Abdiel Janulgue
---
src/mesa/program/ir_to_mesa.cpp| 6 ++
src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 6 ++
2 files changed, 12 insertions(+)
diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp
index
: Abdiel Janulgue
---
src/glsl/opt_algebraic.cpp | 36
1 file changed, 36 insertions(+)
diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp
index ac7514a..4b052933 100644
--- a/src/glsl/opt_algebraic.cpp
+++ b/src/glsl/opt_algebraic.cpp
@@ -614,6
v2: Use CLAMP macro (Ian Romanick)
Signed-off-by: Abdiel Janulgue
---
src/glsl/ir_constant_expression.cpp | 6 ++
1 file changed, 6 insertions(+)
diff --git a/src/glsl/ir_constant_expression.cpp
b/src/glsl/ir_constant_expression.cpp
index 9606021..1e8b3a3 100644
--- a/src/glsl
s a commutative operation
(Matt Turner)
Signed-off-by: Abdiel Janulgue
---
src/glsl/opt_algebraic.cpp | 23 +++
1 file changed, 23 insertions(+)
diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp
index 6dfb681..447618f 100644
--- a/src/glsl/opt_algebraic.
an do saturate directly.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 23 ---
1 file changed, 8 insertions(+), 15 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
Reviewed-by: Matt Turner
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp | 4
1 file changed, 4 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp
b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp
index f22d38d..2e7a85d 100644
--- a
Now that saturate is implemented natively as instruction,
we can cut down on unneeded functionality.
Signed-off-by: Abdiel Janulgue
---
src/mesa/program/ir_to_mesa.cpp| 48
src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 51 --
2
On 20.08.2014 05:40, Matt Turner wrote:
>
> Patches 2-4, (5-9 already reviewed), 10, 13-16, (17 already reviewed) are
>
> Reviewed-by: Matt Turner
>
> I've requested a change come before patch 1, and then rebased patch 1
> should be an easy R-b.
>
> I'll need to take a closer look at 11 and
On 23.08.2014 02:57, Ian Romanick wrote:
> Patches 2, 3, 4, 5, 6, 9, 10, 11, 12, 15, and 17 are
>
> Reviewed-by: Ian Romanick
>
> (Additional question below.)
>
> On 08/18/2014 05:17 AM, Abdiel Janulgue wrote:
>> v3 of clamp and saturate optimizations
>>
>&g
On 26.08.2014 15:17, Abdiel Janulgue wrote:
> On 23.08.2014 02:57, Ian Romanick wrote:
>> Patches 2, 3, 4, 5, 6, 9, 10, 11, 12, 15, and 17 are
>>
>> Reviewed-by: Ian Romanick
>>
>> (Additional question below.)
>>
>> On 08/18/2014 05:17 AM, Abdiel
Hi,
Latest rebase of the saturate and clamp optimizations.
Changes since v3:
- Inline generate_vec4_instruction before counting loops
- In patch 17, add the check for can_do_saturate() as suggested by Ken.
Patches 3-18 are already reviewed by Ian and Matt
* no piglit regressions *
___
When sel conditon is bounded within 0 and 1.0. This allows code as:
mov.sat a b
sel.ge dst a 0.25F
To be propagated as:
sel.ge.sat dst b 0.25F
v3: Syntax clarifications in inst->saturate assignment (Matt Turner)
Reviewed-by: Matt Turner
Signed-off-by: Abdiel Janul
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_fs_generator.cpp | 6 --
src/mesa/drivers/dri/i965/brw_vec4_generator.cpp | 6 --
2 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp
b/src/mesa/drivers/dri/i965
Suggested by Matt. This patch combines and moves back the code-generation
functions from generate_vec4_instruction() into generate_code(). Makes
generate_code() a bit larger, but helps us to count loops in a
straightforward manner.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965
Signed-off-by: Abdiel Janulgue
Reviewed-by: Matt Turner
Reviewed-by: Ian Romanick
---
src/glsl/ir.cpp | 2 ++
src/glsl/ir.h| 1 +
src/glsl/ir_validate.cpp | 1 +
3 files changed, 4 insertions(+)
diff --git a/src/glsl/ir.cpp b/src/glsl/ir.cpp
index 4a4d304..ef04ed0 100644
Signed-off-by: Abdiel Janulgue
Reviewed-by: Matt Turner
Reviewed-by: Ian Romanick
---
src/glsl/ir_optimization.h | 1 +
src/glsl/lower_instructions.cpp | 29 +
2 files changed, 30 insertions(+)
diff --git a/src/glsl/ir_optimization.h b/src/glsl
s a commutative operation
(Matt Turner)
Reviewed-by: Ian Romanick
Signed-off-by: Abdiel Janulgue
---
src/glsl/opt_algebraic.cpp | 23 +++
1 file changed, 23 insertions(+)
diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp
index 6dfb681..447618f 100644
--- a/
Reviewed-by: Matt Turner
Reviewed-by: Ian Romanick
Signed-off-by: Abdiel Janulgue
---
src/mesa/program/ir_to_mesa.cpp| 6 ++
src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 6 ++
2 files changed, 12 insertions(+)
diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program
Now that we have the ir_unop_saturate implemented as a single
instruction, generate the correct simplified expression.
Reviewed-by: Matt Turner
Reviewed-by: Ian Romanick
Signed-off-by: Abdiel Janulgue
---
src/glsl/ir_builder.cpp | 6 +-
1 file changed, 1 insertion(+), 5 deletions(-)
diff
v2: Use CLAMP macro (Ian Romanick)
Signed-off-by: Abdiel Janulgue
Reviewed-by: Matt Turner
Reviewed-by: Ian Romanick
---
src/glsl/ir_constant_expression.cpp | 6 ++
1 file changed, 6 insertions(+)
diff --git a/src/glsl/ir_constant_expression.cpp
b/src/glsl/ir_constant_expression.cpp
rom copy_entry (Matt Turner)
v4: - Take channels into consideration when propagating saturated instructions.
Reviewed-by: Matt Turner
Signed-off-by: Abdiel Janulgue
---
.../drivers/dri/i965/brw_vec4_copy_propagation.cpp | 85 +++---
1 file changed, 58 insertions(+), 27 deleti
Reviewed-by: Matt Turner
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp | 1 +
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 4
2 files changed, 5 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp
Now that saturate is implemented natively as an instruction,
we can cut down on unneeded functionality.
Reviewed-by: Matt Turner
Reviewed-by: Ian Romanick
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_vec4.h | 1 -
src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp
an do saturate directly.
v4: Add can_do_saturate() check before enabling saturate modifer (Ken)
Reviewed-by: Matt Turner
Reviewed-by: Ian Romanick
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 23 ---
1 file changed, 8 insertions(+
are doing a commutative operation (Matt Turner)
Reviewed-by: Ian Romanick
Signed-off-by: Abdiel Janulgue
---
src/glsl/opt_algebraic.cpp | 39 +++
1 file changed, 39 insertions(+)
diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp
index 4b052
Now that saturate is implemented natively as instruction,
we can cut down on unneeded functionality.
Reviewed-by: Matt Turner
Reviewed-by: Ian Romanick
Signed-off-by: Abdiel Janulgue
---
src/mesa/program/ir_to_mesa.cpp| 48
src/mesa/state_tracker
Reviewed-by: Matt Turner
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp | 4
1 file changed, 4 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp
b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp
index 6e48be7..61bd6ec 100644
--- a
Needed when vertex programs doesn't allow saturate
Reviewed-by: Matt Turner
Reviewed-by: Ian Romanick
Signed-off-by: Abdiel Janulgue
---
src/mesa/program/ir_to_mesa.cpp| 5 -
src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 6 +-
2 files changed, 9 insertions(+), 2 dele
Turner
Reviewed-by: Ian Romanick
Signed-off-by: Abdiel Janulgue
---
src/glsl/opt_algebraic.cpp | 36
1 file changed, 36 insertions(+)
diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp
index ac7514a..4b052933 100644
--- a/src/glsl
This patch set adds support for KHR_gl_texture_2D_image,
KHR_gl_texture_cubemap_image
and KHR_gl_texture_3D_image for Gen 4 -> Gen7 HW. The extension enables us to
be a bit
more conformant to the spec in Android at least. I've tested it on SandyBridge
and IvyBridge.
The approach is to export a
Add create image from texture extension.
Signed-off-by: Abdiel Janulgue
---
include/GL/internal/dri_interface.h | 12 +
src/egl/drivers/dri2/egl_dri2.c | 83 +++
2 files changed, 95 insertions(+)
diff --git a/include/GL/internal/dri_interface.h
b
Add intel_miptree_create_for_offset which adds support for creating a single-
level miptree based on the existing offsets and dimensions of another
mip-tree level. Use this function as well in intel_miptree_create_for_region,
but for the whole region.
Signed-off-by: Abdiel Janulgue
---
src/mesa
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 31
src/mesa/drivers/dri/intel/intel_mipmap_tree.h | 10
2 files changed, 41 insertions(+)
diff --git a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c
b/src/mesa/drivers
If the offsets are present, this lets us specify a particular level and slice
in a shared region using the base level of an exported mip-map tree.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 12 +++-
src/mesa/drivers/dri/i965
Save miptree level info to DRIImage, taking offsets into consideration.
For <= gen4 hw which doesn't support non-tile aligned offset, re-create
the mipmap tree internally before exporting the updated offsets to
avoid alignment problems.
Signed-off-by: Abdiel Janulgue
---
src/mesa/dri
When binding a region to a texture image, re-create the miptree base-level
considering the offset and dimension information exported by DRIImage.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_tex_image.c | 27 --
1 file changed, 21 insertions
On Friday, December 14, 2012 03:28:12 PM Abdiel Janulgue wrote:
> This patch set adds support for KHR_gl_texture_2D_image,
> KHR_gl_texture_cubemap_image and KHR_gl_texture_3D_image for Gen 4 -> Gen7
> HW. The extension enables us to be a bit more conformant to the spec in
> Android
On Friday, December 14, 2012 11:38:04 AM Eric Anholt wrote:
> Abdiel Janulgue writes:
> > This patch set adds support for KHR_gl_texture_2D_image,
> > KHR_gl_texture_cubemap_image and KHR_gl_texture_3D_image for Gen 4 ->
> > Gen7 HW. The extension enables us to be a bi
corrected offsets back to our exported image. In this version, for
non-tile-aligned
surfaces, we copy the image to a temporary single-level miptree and refer to
the
offsets there instead of re-creating the whole miptree from scratch.
Tested on: Gen4, SandyBridge, IvyBridge
Abdiel Janulgue (6
Add create image from texture extension.
Signed-off-by: Abdiel Janulgue
---
include/GL/internal/dri_interface.h | 12 +
src/egl/drivers/dri2/egl_dri2.c | 83 +++
2 files changed, 95 insertions(+)
diff --git a/include/GL/internal/dri_interface.h
b
Add intel_miptree_create_for_offset which adds support for creating a single-
level miptree based on the existing offsets and dimensions of another
mip-tree level. Use this function as well in intel_miptree_create_for_region,
but for the whole region.
Signed-off-by: Abdiel Janulgue
---
src/mesa
Expose intel_miptree_copy_slice and add function calculating
x and y offsets of a miptree level within a tiled region.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 17 -
src/mesa/drivers/dri/intel/intel_mipmap_tree.h | 13
If the offsets are present, this lets us specify a particular level and slice
in a shared region using the base level of an exported mip-map tree.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 12 +++-
src/mesa/drivers/dri/i965
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_screen.c | 181 +
1 file changed, 161 insertions(+), 20 deletions(-)
diff --git a/src/mesa/drivers/dri/intel/intel_screen.c
b/src/mesa/drivers/dri/intel/intel_screen.c
index 4e2742f..0cd1a2c 100644
--- a
When binding a region to a texture image, re-create the miptree base-level
considering the offset and dimension information exported by DRIImage.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_tex_image.c | 27 --
1 file changed, 21 insertions
On Thursday, January 03, 2013 05:00:39 PM Eric Anholt wrote:
>
> Sorry for the delay, I think we all disappeared over the holidays.
>
> Let's see if I've got this all right. It looks like today we have
> extensions for:
>
> OES_EGL_image:
> * turn an EGLImage into a 0-level texture
> * turn an
v3 here. Hopefully I've addressed the issues.
In this revision, we now report GL_INVALID_OPERATION when we
can't resolve back to specific offsets within a shared region.
For non-tile-aligned HW, this means that only base-levels of
textures can be exported.
I've also found and fixed an error in m
Add create image from texture extension and
bump version.
Signed-off-by: Abdiel Janulgue
---
include/GL/internal/dri_interface.h | 14 +-
src/egl/drivers/dri2/egl_dri2.c | 83 +++
2 files changed, 96 insertions(+), 1 deletion(-)
diff --git a/include
Expose intel_miptree_copy_slice and add function calculating
x and y offsets of a miptree level within a tiled region.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 17 -
src/mesa/drivers/dri/intel/intel_mipmap_tree.h | 13
Add intel_miptree_create_for_offset which adds support for creating a single-
level miptree based on the existing offsets and dimensions of another
mip-tree level. Use this function as well in intel_miptree_create_for_region,
but for the whole region.
Signed-off-by: Abdiel Janulgue
---
src/mesa
Save miptree level info to DRIImage, taking offsets into consideration.
In non-tile-aligned surface cases where resolving back to the original image
proves problematic due to alignment issues, report INVALID_OPERATION as per
spec wording.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri
If the offsets are present, this lets us specify a particular level and slice
in a shared region using the base level of an exported mip-map tree.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 12 +++-
src/mesa/drivers/dri/i965
When binding a region to a texture image, re-create the miptree base-level
considering the offset and dimension information exported by DRIImage.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_tex_image.c | 27 --
1 file changed, 21 insertions
On Friday, January 11, 2013 04:27:23 PM Abdiel Janulgue wrote:
> v3 here. Hopefully I've addressed the issues.
patch series lives on git://gitorious.org/mesa3d/mesa.git KHR_gl_image3
branch
>
> In this revision, we now report GL_INVALID_OPERATION when we
> can't re
Changes from v3:
- Unexport intel_miptree_copy_slice. We don't need fake storage anymore for
non-tile aligned surfaces.
- Fix error in gen6 caught by piglit test for this extension. This is another
case where
I forgot to consider the miptree slices; this time in updating SURFACE_STATE.
-- Ab
Add create image from texture extension and
bump version.
Signed-off-by: Abdiel Janulgue
---
include/GL/internal/dri_interface.h | 14 +-
src/egl/drivers/dri2/egl_dri2.c | 83 +++
2 files changed, 96 insertions(+), 1 deletion(-)
diff --git a/include
Add helper to calculate x and y offsets of a miptree level within a tiled
region.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 15 +++
src/mesa/drivers/dri/intel/intel_mipmap_tree.h |6 ++
2 files changed, 21 insertions(+)
diff
Add intel_miptree_create_for_offset which adds support for creating a single-
level miptree based on the existing offsets and dimensions of another
mip-tree level. Use this function as well in intel_miptree_create_for_region,
but for the whole region.
Signed-off-by: Abdiel Janulgue
---
src/mesa
If the offsets are present, this lets us specify a particular level and slice
in a shared region using the base level of an exported mip-map tree.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 12 +++-
src/mesa/drivers/dri/i965
.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_screen.c | 178 +
1 file changed, 158 insertions(+), 20 deletions(-)
diff --git a/src/mesa/drivers/dri/intel/intel_screen.c
b/src/mesa/drivers/dri/intel/intel_screen.c
index e0fe8c1..ea62933 100644
When binding a region to a texture image, re-create the miptree base-level
considering the offset and dimension information exported by DRIImage.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_tex_image.c | 27 --
1 file changed, 21 insertions
On Tuesday, January 15, 2013 02:05:00 PM Eric Anholt wrote:
> > +static void
> > +intel_image_set_level_info(__DRIimage *image, struct intel_mipmap_tree
> > *mt, + int level, int slice,
> > + uint32_t mask_x, uint32_t mask_y)
> > +{
> > + image
Changes since v4:
* Drop texture 3D support for now (until we test it with piglit).
I plan to add it incrementally as soon as piglit tests for it are done.
* Drop useless errors warnings and report proper EGL errors.
* Expose intel_miptree_create_internal as intel_miptree_create_layout
* Simplif
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_regions.h |7 +++
1 file changed, 7 insertions(+)
diff --git a/src/mesa/drivers/dri/intel/intel_regions.h
b/src/mesa/drivers/dri/intel/intel_regions.h
index 8737a6d..95b65de 100644
--- a/src/mesa/drivers/dri/intel
Add create image from texture extension and bump version.
Signed-off-by: Abdiel Janulgue
---
include/GL/internal/dri_interface.h | 14 +-
src/egl/drivers/dri2/egl_dri2.c | 85 +++
2 files changed, 98 insertions(+), 1 deletion(-)
diff --git a/include
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 37
src/mesa/drivers/dri/intel/intel_mipmap_tree.h | 14 -
2 files changed, 31 insertions(+), 20 deletions(-)
diff --git a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c
b
Add helper to calculate fine-grained x and y adjustment pixels
to an image within a miptree level for tiled regions.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 15 +++
src/mesa/drivers/dri/intel/intel_mipmap_tree.h |6 ++
2 files
ffset alignment issues, report INVALID_OPERATION as per spec wording.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_screen.c | 186 +
1 file changed, 166 insertions(+), 20 deletions(-)
diff --git a/src/mesa/drivers/dri/intel/intel_screen.c
b/src
If the offsets are present, this lets us specify a particular level and slice
in a shared region using the base level of an exported mip-map tree.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 12 +++-
src/mesa/drivers/dri/i965
When binding a region to a texture image, re-create the miptree base-level
considering the offset and dimension information exported by DRIImage.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_tex_image.c | 31 --
1 file changed, 24 insertions
On Tuesday, January 22, 2013 11:02:34 AM Eric Anholt wrote:
> 128 pixels of 32bpp is a tile width, and 128 pixels high of that is 16
> tiles. The values I see this function having are:
>
> mask_x = 127
> mask_y = 15
> draw_x = 0
> draw_y = 128
> image->offset = (16 * 4096)
>
> So when we go to
- Rename draw_x/y to tile_x/y in dri image struct. These are now used as
adjustment pixels from our stored aligned offset to the exported image
instead of the entire x/y offset from the base address.
- Take into consideration the offset from our bo so that sub-image functions
resolves prope
Add create image from texture extension and bump version.
Signed-off-by: Abdiel Janulgue
---
include/GL/internal/dri_interface.h | 14 +-
src/egl/drivers/dri2/egl_dri2.c | 85 +++
2 files changed, 98 insertions(+), 1 deletion(-)
diff --git a/include
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_regions.h |6 ++
1 file changed, 6 insertions(+)
diff --git a/src/mesa/drivers/dri/intel/intel_regions.h
b/src/mesa/drivers/dri/intel/intel_regions.h
index 8737a6d..1eef3b5 100644
--- a/src/mesa/drivers/dri/intel
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 37
src/mesa/drivers/dri/intel/intel_mipmap_tree.h | 14 -
2 files changed, 31 insertions(+), 20 deletions(-)
diff --git a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c
b
Add helper to calculate fine-grained x and y adjustment pixels
to an image within a miptree level for tiled regions.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 15 +++
src/mesa/drivers/dri/intel/intel_mipmap_tree.h |6 ++
2 files
If the offsets are present, this lets us specify a particular level and slice
in a shared region using the base level of an exported mip-map tree.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 12 +++-
src/mesa/drivers/dri/i965
We need to take account the offset from original bo when using glTexSubImage()
and other functions that manipulate the subregion of an exported texture.
Offsets are appended to mapped region address and when blitting from a source
region.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri
offset alignment issues, report INVALID_OPERATION as per spec wording.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_screen.c | 179 +
1 file changed, 159 insertions(+), 20 deletions(-)
diff --git a/src/mesa/drivers/dri/intel/intel_screen.c
b/src
When binding a region to a texture image, re-create the miptree base-level
considering the offset and dimension information exported by DRIImage.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_tex_image.c | 31 --
1 file changed, 24 insertions
Hi,
On Tuesday, January 29, 2013 04:00:28 PM Eric Anholt wrote:
> Part of my motivation here was the number of cache misses we have in the
> first reference of a region after referencing the miptree wrapping it, for
> things that should all live in the first cacheline of one struct.
>
> I think I
On Tuesday, January 29, 2013 07:54:59 AM Eric Anholt wrote:
> Abdiel Janulgue writes:
> > - Rename draw_x/y to tile_x/y in dri image struct. These are now used as
> >
> > adjustment pixels from our stored aligned offset to the exported image
> > instead of the enti
KHR_gl_image7 branch
CC: Eric Anholt
Reviewed-by: Eric Anholt (v6)
Signed-off-by: Abdiel Janulgue
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Add create image from texture extension and bump version.
Signed-off-by: Abdiel Janulgue
---
include/GL/internal/dri_interface.h | 14 +-
src/egl/drivers/dri2/egl_dri2.c | 85 +++
2 files changed, 98 insertions(+), 1 deletion(-)
diff --git a/include
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_regions.h |6 ++
1 file changed, 6 insertions(+)
diff --git a/src/mesa/drivers/dri/intel/intel_regions.h
b/src/mesa/drivers/dri/intel/intel_regions.h
index 1aff5d9..84cf08b 100644
--- a/src/mesa/drivers/dri/intel
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 27
src/mesa/drivers/dri/intel/intel_mipmap_tree.h | 12 +++
2 files changed, 25 insertions(+), 14 deletions(-)
diff --git a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c
b
Add helper to calculate fine-grained x and y adjustment pixels
to an image within a miptree level for tiled regions.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 15 +++
src/mesa/drivers/dri/intel/intel_mipmap_tree.h |6 ++
2 files
If the offsets are present, this lets us specify a particular level and slice
in a shared region using the base level of an exported mip-map tree.
Signed-off-by: Abdiel Janulgue
---
src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 12 +++-
src/mesa/drivers/dri/i965
301 - 400 of 413 matches
Mail list logo