[Mesa-dev] [PATCH 0/2] android: add ilo

2013-05-03 Thread Chia-I Wu
Hi, This patch series allows ilo to be selected as the GPU driver on Android-IA. The second patch fixes a linking error, which should be common to other Gallium-based drivers. ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org

[Mesa-dev] [PATCH 1/2] android: add ilo to the build system

2013-05-03 Thread Chia-I Wu
It can be selected with BOARD_GPU_DRIVERS := ilo Signed-off-by: Chia-I Wu olva...@gmail.com --- Android.mk|4 +-- src/egl/main/Android.mk |6 + src/gallium/Android.mk|5

[Mesa-dev] [PATCH 2/2] android: libsync is needed on Android 4.2+ for any driver

2013-05-03 Thread Chia-I Wu
Add libsync not only for MESA_BUILD_CLASSIC, but also for MESA_BUILD_GALLIUM. Signed-off-by: Chia-I Wu olva...@gmail.com --- src/egl/main/Android.mk |8 +++- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/egl/main/Android.mk b/src/egl/main/Android.mk index

Re: [Mesa-dev] [PATCH 1/2] gallivm: allow negation of all integer types

2013-05-03 Thread Michel Dänzer
On Fre, 2013-05-03 at 02:00 +0200, Roland Scheidegger wrote: Am 03.05.2013 00:29, schrieb Dave Airlie: On Fri, May 3, 2013 at 6:04 AM, Zack Rusin za...@vmware.com wrote: Well in contrast to the IF/UIF they'd be really redundant unless I'm missing something so just for supporting negation

Re: [Mesa-dev] [PATCH] gallium: fix type of flags in pipe_context::flush()

2013-05-03 Thread Jose Fonseca
- Original Message - It should be unsigned, not enum pipe_flush_flags. Fixed a build error: src/gallium/state_trackers/egl/android/native_android.cpp:426:29: error: invalid conversion from 'int' to 'pipe_flush_flags' [-fpermissive] While I agree that using enum for bitmasks

[Mesa-dev] [PATCH] r600g: use old shader disassembler by default

2013-05-03 Thread Vadim Girlin
New disassembler is not completely isolated yet from further processing in r600g/sb that is not required for printing the dump, so it has higher probability to fail in case of any unexpected features in the bytecode. This patch adds sbdisasm flag for R600_DEBUG that allows to use new disassembler

Re: [Mesa-dev] [PATCH] st/xvmc/tests: Fix build failure, v2

2013-05-03 Thread Christian König
Am 03.05.2013 10:48, schrieb Lauri Kasanen: v2: Removed extra libs as requested by Matt Turner. Signed-off-by: Lauri Kasanen c...@gmx.com Reviewed-by: Christian König christian.koe...@amd.com --- src/gallium/state_trackers/xvmc/Makefile.am |2 +- 1 files changed, 1 insertions(+), 1

[Mesa-dev] [Bug 59591] BUILD make distclean fails

2013-05-03 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=59591 Andy Furniss adf.li...@gmail.com changed: What|Removed |Added Status|NEW |RESOLVED

[Mesa-dev] [PATCH 1/2] scons: remove radeon build

2013-05-03 Thread Andreas Boll
One build system for linux/unix only drivers should be enough. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=48694 --- scons/gallium.py|1 - src/gallium/SConscript | 24 --- src/gallium/drivers/r300/SConscript

[Mesa-dev] [PATCH 2/2] scons: remove nouveau build

2013-05-03 Thread Andreas Boll
One build system for linux/unix only drivers should be enough. Additionally the nouveau target was disabled anyway. --- src/gallium/SConscript | 15 --- src/gallium/drivers/nouveau/SConscript | 10 -- src/gallium/drivers/nv30/SConscript| 11

Re: [Mesa-dev] RFC: tgsi opcodes for 32x32 muls with 64bit results

2013-05-03 Thread Marek Olšák
FWIW, this maps nicely to r600, which also has separate instructions for the low and high 32 bits. As to what option is better, it really depends on whether shading languages and OpenCL expose the instructions directly through functions, or whether they just have 64-bit integers. Marek On Fri,

Re: [Mesa-dev] [PATCH] r600g: use old shader disassembler by default

2013-05-03 Thread Marek Olšák
Reviewed-by: Marek Olšák mar...@gmail.com Marek On Fri, May 3, 2013 at 10:04 AM, Vadim Girlin vadimgir...@gmail.com wrote: New disassembler is not completely isolated yet from further processing in r600g/sb that is not required for printing the dump, so it has higher probability to fail in

[Mesa-dev] [PATCH] r600g: Correctly initialize the shader key

2013-05-03 Thread Lauri Kasanen
Assigning a struct only copies the members - any padding is left as is. Thus this code: struct foo; foo = bar; leaves the padding of foo intact, ie uninitialized random garbage. This patch fixes constant shader recompiles by initializing the struct to zero. Signed-off-by: Lauri Kasanen

Re: [Mesa-dev] r600 sb test results

2013-05-03 Thread Lauri Kasanen
On Fri, 03 May 2013 01:27:27 +0400 Vadim Girlin vadimgir...@gmail.com wrote: I'm almost sure that the same issue that you have with glxgears affects your app too, so you might want to wait until we resolve the problem with gears, possibly this will solve other rendering issues as well. ...

Re: [Mesa-dev] [PATCH] r600g: Correctly initialize the shader key

2013-05-03 Thread Vadim Girlin
On 05/03/2013 03:10 PM, Lauri Kasanen wrote: Assigning a struct only copies the members - any padding is left as is. Thus this code: struct foo; foo = bar; leaves the padding of foo intact, ie uninitialized random garbage. This patch fixes constant shader recompiles by initializing the

Re: [Mesa-dev] [PATCH] draw/pt: adjust overflow calculations

2013-05-03 Thread Alex Deucher
On Thu, May 2, 2013 at 11:40 PM, Zack Rusin za...@vmware.com wrote: gallium lies. buffer_size is not actually buffer_size but available size, which is 'buffer_size - buffer_offset' so by adding buffer offset we'd incorrectly compute overflow. Maybe add a comment to that effect in the code?

Re: [Mesa-dev] RFC: tgsi opcodes for 32x32 muls with 64bit results

2013-05-03 Thread Aaron Watry
Not sure if this helps much, but... With gentype being one of: char, uchar, short, ushort, int, uint, long, ulong, and the widths being scalar, 2, 3, 4, 8, or 16 components wide. From the OpenCL 1.1 spec: gentype mad_hi(gentype a, gentype b): Computes x * y and returns the high half of the

Re: [Mesa-dev] [PATCH] tgsi/ureg: make the dst register match the src indirection

2013-05-03 Thread Jose Fonseca
- Original Message - In ureg src registers could have an indirect register that was either a temp or an addr register, while dst registers allowed only addr. That made moving between them a little difficult so make them behave the same way and allow temp's and addr registers as

Re: [Mesa-dev] [PATCH] gallium: tgsi documentation updates and clarification for integer opcodes.

2013-05-03 Thread Jose Fonseca
- Original Message - From: Roland Scheidegger srol...@vmware.com A lot of them were missing. Others were moved from the Compute ISA to a new Integer ISA section as that seemed more appropriate. --- src/gallium/docs/source/tgsi.rst | 362 ++

Re: [Mesa-dev] [PATCH 3/3] r600g: Don't set the dest cache bits on surface sync for R600_CONTEXT_FLUSH_AND_INV

2013-05-03 Thread Vadim Girlin
This patch results in lockups with Heaven on juniper for me. Vadim On 04/26/2013 09:21 PM, Tom Stellard wrote: From: Tom Stellard thomas.stell...@amd.com We are already emitting a EVENT_TYPE_CACHE_FLUSH_AND_INV_EVENT packet when this flush flag is set, so flushing the dest caches with a

Re: [Mesa-dev] [PATCH 3/3] r600g: Don't set the dest cache bits on surface sync for R600_CONTEXT_FLUSH_AND_INV

2013-05-03 Thread Alex Deucher
On Fri, May 3, 2013 at 9:30 AM, Vadim Girlin vadimgir...@gmail.com wrote: This patch results in lockups with Heaven on juniper for me. Does dropping the surface_sync packet completely help? We shouldn't need a surface_sync packet after a CACHE_FLUSH_AND_INV_EVENT packet and prior to

Re: [Mesa-dev] RFC: tgsi opcodes for 32x32 muls with 64bit results

2013-05-03 Thread Roland Scheidegger
Am 03.05.2013 06:58, schrieb Jose Fonseca: - Original Message - Currently, there's no way to get the high bits of a 32x32 signed/unsigned integer multiplication with tgsi. However, all of d3d10, OpenGL, and OpenCL support that, so we need it as well. There's essentially two ways

Re: [Mesa-dev] [PATCH 3/3] r600g: Don't set the dest cache bits on surface sync for R600_CONTEXT_FLUSH_AND_INV

2013-05-03 Thread Vadim Girlin
On 05/03/2013 05:36 PM, Alex Deucher wrote: On Fri, May 3, 2013 at 9:30 AM, Vadim Girlin vadimgir...@gmail.com wrote: This patch results in lockups with Heaven on juniper for me. Does dropping the surface_sync packet completely help? We shouldn't need a surface_sync packet after a

Re: [Mesa-dev] [PATCH 1/2] gallivm: allow negation of all integer types

2013-05-03 Thread Jose Fonseca
- Original Message - Sorry to hear the hw doesn't support it, but this is supported by d3d10 so it's quite likely some hw indeed supports it. There's always some things some hw can't do natively. Well I was hoping before adding new things for sw driver to gallium we should

Re: [Mesa-dev] RFC: tgsi opcodes for 32x32 muls with 64bit results

2013-05-03 Thread Roland Scheidegger
Yes, that's why I said it looks like separate low and high bits in opencl. So in opencl you will get the low and high parts separately anyway. If we have only one instruction, we also probably really wanted to be able to say that we may only need one or the other destination to avoid extra work,

Re: [Mesa-dev] [PATCH] draw/pt: adjust overflow calculations

2013-05-03 Thread Jose Fonseca
- Original Message - On Thu, May 2, 2013 at 11:40 PM, Zack Rusin za...@vmware.com wrote: gallium lies. buffer_size is not actually buffer_size but available size, which is 'buffer_size - buffer_offset' so by adding buffer offset we'd incorrectly compute overflow. Maybe add a

[Mesa-dev] [PATCH] r600g: Correctly initialize the shader key, v2

2013-05-03 Thread Lauri Kasanen
Assigning a struct only copies the members - any padding is left as is. Thus this code: struct foo_t foo; foo = bar; leaves the padding of foo intact, ie uninitialized random garbage. This patch fixes constant shader recompiles by initializing the struct to zero. For completeness, memcpy is

[Mesa-dev] [PATCH] r600g: don't emit surface_sync after FLUSH_AND_INV_EVENT

2013-05-03 Thread alexdeucher
From: Alex Deucher alexander.deuc...@amd.com It shouldn't be needed since the FLUSH_AND_INV_EVENT has already made sure the destination caches are flushed. Additionally, we didn't previously emit the surface_sync until this commit:

Re: [Mesa-dev] [PATCH] r600g: don't emit surface_sync after FLUSH_AND_INV_EVENT

2013-05-03 Thread Tom Stellard
On Fri, May 03, 2013 at 10:01:00AM -0400, alexdeuc...@gmail.com wrote: From: Alex Deucher alexander.deuc...@amd.com Reviewed-by: Tom Stellard thomas.stell...@amd.com It shouldn't be needed since the FLUSH_AND_INV_EVENT has already made sure the destination caches are flushed. Additionally,

Re: [Mesa-dev] [PATCH 2/2] scons: remove nouveau build

2013-05-03 Thread Jose Fonseca
Fine by me. Jose - Original Message - One build system for linux/unix only drivers should be enough. Additionally the nouveau target was disabled anyway. --- src/gallium/SConscript | 15 --- src/gallium/drivers/nouveau/SConscript | 10 --

Re: [Mesa-dev] [PATCH 1/3] gallivm: Move LLVMStartMultithreaded() static initializer into gallivm

2013-05-03 Thread Jose Fonseca
Looks ok by me. - Original Message - From: Tom Stellard thomas.stell...@amd.com This does not solve all of the problems with using LLVM in a multithreaded enivronment, but it should help in some cases. --- src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 15 +++

Re: [Mesa-dev] RFC: tgsi opcodes for 32x32 muls with 64bit results

2013-05-03 Thread Jose Fonseca
- Original Message - Am 03.05.2013 06:58, schrieb Jose Fonseca: - Original Message - Currently, there's no way to get the high bits of a 32x32 signed/unsigned integer multiplication with tgsi. However, all of d3d10, OpenGL, and OpenCL support that, so we need it as

Re: [Mesa-dev] RFC: tgsi opcodes for 32x32 muls with 64bit results

2013-05-03 Thread Christoph Bumiller
On 03.05.2013 16:32, Jose Fonseca wrote: - Original Message - Am 03.05.2013 06:58, schrieb Jose Fonseca: - Original Message - Currently, there's no way to get the high bits of a 32x32 signed/unsigned integer multiplication with tgsi. However, all of d3d10, OpenGL, and

Re: [Mesa-dev] [PATCH] r600g: Correctly initialize the shader key, v2

2013-05-03 Thread Marek Olšák
Reviewed-by: Marek Olšák mar...@gmail.com Marek On Fri, May 3, 2013 at 3:55 PM, Lauri Kasanen c...@gmx.com wrote: Assigning a struct only copies the members - any padding is left as is. Thus this code: struct foo_t foo; foo = bar; leaves the padding of foo intact, ie uninitialized random

Re: [Mesa-dev] [PATCH] r600g: Correctly initialize the shader key, v2

2013-05-03 Thread Alex Deucher
On Fri, May 3, 2013 at 9:55 AM, Lauri Kasanen c...@gmx.com wrote: Assigning a struct only copies the members - any padding is left as is. Thus this code: struct foo_t foo; foo = bar; leaves the padding of foo intact, ie uninitialized random garbage. This patch fixes constant shader

[Mesa-dev] [PATCHv2] gallium: fix type of flags in pipe_context::flush()

2013-05-03 Thread Chia-I Wu
It should be unsigned, not enum pipe_flush_flags. Fixed a build error: src/gallium/state_trackers/egl/android/native_android.cpp:426:29: error: invalid conversion from 'int' to 'pipe_flush_flags' [-fpermissive] v2: replace all occurrences of enum pipe_flush_flags by unsigned Signed-off-by:

Re: [Mesa-dev] RFC: tgsi opcodes for 32x32 muls with 64bit results

2013-05-03 Thread Roland Scheidegger
Am 03.05.2013 16:32, schrieb Jose Fonseca: - Original Message - Am 03.05.2013 06:58, schrieb Jose Fonseca: - Original Message - Currently, there's no way to get the high bits of a 32x32 signed/unsigned integer multiplication with tgsi. However, all of d3d10, OpenGL, and

Re: [Mesa-dev] [PATCH] gallium: fix type of flags in pipe_context::flush()

2013-05-03 Thread Chia-I Wu
On Fri, May 3, 2013 at 4:00 PM, Jose Fonseca jfons...@vmware.com wrote: - Original Message - It should be unsigned, not enum pipe_flush_flags. Fixed a build error: src/gallium/state_trackers/egl/android/native_android.cpp:426:29: error: invalid conversion from 'int' to

Re: [Mesa-dev] RFC: tgsi opcodes for 32x32 muls with 64bit results

2013-05-03 Thread Roland Scheidegger
Am 03.05.2013 16:45, schrieb Christoph Bumiller: On 03.05.2013 16:32, Jose Fonseca wrote: - Original Message - Am 03.05.2013 06:58, schrieb Jose Fonseca: - Original Message - Currently, there's no way to get the high bits of a 32x32 signed/unsigned integer multiplication

Re: [Mesa-dev] [PATCHv2] gallium: fix type of flags in pipe_context::flush()

2013-05-03 Thread Marek Olšák
Reviewed-by: Marek Olšák mar...@gmail.com Marek On Fri, May 3, 2013 at 5:19 PM, Chia-I Wu olva...@gmail.com wrote: It should be unsigned, not enum pipe_flush_flags. Fixed a build error: src/gallium/state_trackers/egl/android/native_android.cpp:426:29: error: invalid conversion from

Re: [Mesa-dev] visual leak?

2013-05-03 Thread Andy Skinner
Hi, Brian. Did you have thoughts one these? Would it make sense, if we can't update Mesa right now, to just put the register_with_display() call into Fake_glXChooseFBConfig(), as it is for Fake_glxChooseVisual()? It allows the visual to be cleaned up when the Display is closed. Unless it

Re: [Mesa-dev] [PATCH] r600g: Correctly initialize the shader key, v2

2013-05-03 Thread Marek Olšák
As long as the commit message contains a note matching this regular expression '^[[:space:]]*NOTE: .*[Cc]andidate', it won't be missed. Usually the release manager takes care of cherry-picking if there are no conflicts. Marek On Fri, May 3, 2013 at 5:39 PM, Lauri Kasanen c...@gmx.com wrote: On

Re: [Mesa-dev] [PATCH] st/xvmc/tests: Fix build failure, v2

2013-05-03 Thread Matt Turner
On Fri, May 3, 2013 at 1:48 AM, Lauri Kasanen c...@gmx.com wrote: v2: Removed extra libs as requested by Matt Turner. Signed-off-by: Lauri Kasanen c...@gmx.com --- src/gallium/state_trackers/xvmc/Makefile.am |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git

Re: [Mesa-dev] visual leak?

2013-05-03 Thread Brian Paul
On 05/03/2013 09:42 AM, Andy Skinner wrote: Hi, Brian. Did you have thoughts one these? Would it make sense, if we can't update Mesa right now, to just put the register_with_display() call into Fake_glXChooseFBConfig(), as it is for Fake_glxChooseVisual()? It allows the visual to be cleaned

Re: [Mesa-dev] [PATCH] r600g: Correctly initialize the shader key, v2

2013-05-03 Thread Andreas Boll
Pushed as http://cgit.freedesktop.org/mesa/mesa/commit/?id=e495d88453076a4fe552502d66d6a3869ab70e4a 2013/5/3 Marek Olšák mar...@gmail.com As long as the commit message contains a note matching this regular expression '^[[:space:]]*NOTE: .*[Cc]andidate', it won't be missed. Usually the

Re: [Mesa-dev] [PATCH] st/xvmc/tests: Fix build failure, v2

2013-05-03 Thread Andreas Boll
Pushed as http://cgit.freedesktop.org/mesa/mesa/commit/?id=5ff81cfd8640d02dc78d736cad5020d54ef7a0dc 2013/5/3 Matt Turner matts...@gmail.com On Fri, May 3, 2013 at 1:48 AM, Lauri Kasanen c...@gmx.com wrote: v2: Removed extra libs as requested by Matt Turner. Signed-off-by: Lauri Kasanen

[Mesa-dev] [PATCH 00/12] RFC: add support of ARB_separate_shader_object extensions V3

2013-05-03 Thread Gregory Hainaut
Please find an implementation of the ARB_separate_shader_objects extensions. I concentrate mostly on the state part of the extensions aka the pipeline object. I think GLSL already compiled program separately anyway. I test my implementation on the test that I send on piglit mailing list. All

[Mesa-dev] [PATCH 02/12] sso: Add pipeline container/state

2013-05-03 Thread Gregory Hainaut
V1: * Extend gl_shader_state as pipeline object state * Add a new container gl_pipeline_shader_state that contains binding point of the previous object * Update mesa init/free shader state due to the extension of the attibute * Add an init/free pipeline function for the context * Implement

[Mesa-dev] [PATCH 03/12] sso: add support of GL_PROGRAM_SEPARABLE and CreateShaderProgramv

2013-05-03 Thread Gregory Hainaut
V1: CreateShaderProgramv is similar as CreateShaderProgramEXT. The 2 differences are 1/ it an array of strings 2/ it support the GL_PROGRAM_SEPARABLE (aka SeparateShader) flag V2: Formatting improvement --- src/mesa/main/mtypes.h|5 +++ src/mesa/main/shaderapi.c | 94

[Mesa-dev] [PATCH 04/12] sso: implement ActiveShaderProgram GetProgramPipelineiv

2013-05-03 Thread Gregory Hainaut
V2: * Rename object * Formatting improvement --- src/mesa/main/pipelineobj.c | 77 +++ 1 file changed, 77 insertions(+) diff --git a/src/mesa/main/pipelineobj.c b/src/mesa/main/pipelineobj.c index d81bd0e..ffbeeae 100644 --- a/src/mesa/main/pipelineobj.c

[Mesa-dev] [PATCH 08/12] sso: Implement _mesa_UseProgramStages

2013-05-03 Thread Gregory Hainaut
Implement _mesa_UseProgramStages = arb_separate_shader_object-GetProgramPipelineiv is now pass :) Extend use_shader_program to support a different target. Allow to reuse the function to update the pipeline state. Note I bypass the flush when target isn't current. Maybe it would be better to

[Mesa-dev] [PATCH 09/12] sso: implement BindProgramPipeline

2013-05-03 Thread Gregory Hainaut
Test become green in piglit: The updated ext_transform_feedback-api-errors:useprogstage_noactive useprogstage_active bind_pipeline arb_separate_shader_object-GetProgramPipelineiv arb_separate_shader_object-IsProgramPipeline For the moment I reuse Driver.UseProgram but I guess it will be better

[Mesa-dev] [PATCH 10/12] sso: update glGet: GL_PROGRAM_PIPELINE_BINDING

2013-05-03 Thread Gregory Hainaut
--- src/mesa/main/get.c |9 + src/mesa/main/get_hash_params.py |3 +++ 2 files changed, 12 insertions(+) diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c index 54159c0..6cbb7db 100644 --- a/src/mesa/main/get.c +++ b/src/mesa/main/get.c @@ -369,6 +369,7 @@

[Mesa-dev] [PATCH 11/12] sso: implement ValidateProgramPipeline and GetProgramPipelineInfoLog

2013-05-03 Thread Gregory Hainaut
Implementation note: I don't use context for ralloc (don't know how). The check on PROGRAM_SEPARABLE flags is also done when the pipeline isn't bound. It doesn't make any sense in a DSA style API. Maybe we could replace _mesa_validate_program_pipeline by _mesa_validate_program_pipeline. For

[Mesa-dev] [PATCH 12/12] sso: Finally enable the extension on Gallium

2013-05-03 Thread Gregory Hainaut
Note: it probably work on others drivers. --- src/mesa/state_tracker/st_extensions.c |1 + 1 file changed, 1 insertion(+) diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index f986480..4ce74f2 100644 --- a/src/mesa/state_tracker/st_extensions.c

Re: [Mesa-dev] [PATCH 2/2] vbo: implement primitive merging for glBegin/End sequences

2013-05-03 Thread Jose Fonseca
Series looks alright AFAICT. Jose - Original Message - A surprising number of apps and benchmarks have poor code like this: glBegin(GL_LINE_STRIP); glVertex(v1); glVertex(v2); glEnd(); // Possibly some no-op state changes here glBegin(GL_LINE_STRIP); glVertex(v3); glVertex(v4);

Re: [Mesa-dev] [PATCH 10/12] sso: update glGet: GL_PROGRAM_PIPELINE_BINDING

2013-05-03 Thread Matt Turner
On Fri, May 3, 2013 at 10:44 AM, Gregory Hainaut gregory.hain...@gmail.com wrote: --- src/mesa/main/get.c |9 + src/mesa/main/get_hash_params.py |3 +++ 2 files changed, 12 insertions(+) diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c index

Re: [Mesa-dev] [PATCH] i965: Enable fast clears on non-8x4-aligned sizes.

2013-05-03 Thread Chad Versace
On 05/02/2013 04:58 PM, Kenneth Graunke wrote: On 05/02/2013 01:58 PM, Eric Anholt wrote: Improves glb2.7 performance at a misaligned size by 2.3% +/- 0.7% (n=11). The workaround was to avoid bad primitive/surface sizes, but that's worked around as of a14dc4f92cdad6177d83f051a088a66e31a973bc.

[Mesa-dev] [Bug 39527] 3D Driving-School - missing textures

2013-05-03 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=39527 David okias Heidelberger david.heidelber...@ixit.cz changed: What|Removed |Added Status|NEW

[Mesa-dev] [PATCH] gallium: more tgsi documentation updates

2013-05-03 Thread sroland
From: Roland Scheidegger srol...@vmware.com Adds the remaining integer opcodes, and some opcodes are moved to more appropriate places, along with getting rid of the (already nearly empty) ps_2_x section. Though the CAP bits for some of these are still a bit in the air so the documentation isn't

Re: [Mesa-dev] [PATCH 2/2] vbo: implement primitive merging for glBegin/End sequences

2013-05-03 Thread Eric Anholt
Brian Paul bri...@vmware.com writes: diff --git a/src/mesa/vbo/vbo_save_api.c b/src/mesa/vbo/vbo_save_api.c index b8dd90c..9ce3c6e 100644 --- a/src/mesa/vbo/vbo_save_api.c +++ b/src/mesa/vbo/vbo_save_api.c @@ -305,9 +305,9 @@ _save_reset_counters(struct gl_context *ctx) * previous prim.

[Mesa-dev] [PATCH] glsl: Flip around if statements with empty then blocks.

2013-05-03 Thread Eric Anholt
This cleans up some funny-looking code in some unigine shaders I was looking at. Also slightly helps on planeshift and a few shaders in an upcoming Valve release. total instructions in shared programs: 1653715 - 1653587 (-0.01%) instructions in affected programs: 16550 - 16422 (-0.77%) ---

[Mesa-dev] R600 Patchset: Emit true ISA

2013-05-03 Thread Tom Stellard
Hi, The attached patches modify the CodeEmitter to emit true ISA. Previously, we were prefixing all instructions with an instruction type byte. Vincent did most of the work to convert the CodeEmitter to true ISA, these patches are just the last few cleanups that are needed to finish the project.

[Mesa-dev] [PATCH 1/3] r600g/llvm: Don't emit CALL_FS for vertex shaders

2013-05-03 Thread Tom Stellard
From: Tom Stellard thomas.stell...@amd.com The LLVM backend takes care of this now. --- src/gallium/drivers/r600/r600_shader.c | 16 +--- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c

[Mesa-dev] [PATCH 2/3] r600g/llvm: Don't feed LLVM output through r600_bytecode_build()

2013-05-03 Thread Tom Stellard
From: Tom Stellard thomas.stell...@amd.com The LLVM backend emits raw ISA now, so we can just its output unmodified. --- src/gallium/drivers/r600/r600_llvm.c | 11 +- src/gallium/drivers/r600/r600_llvm.h | 2 - src/gallium/drivers/r600/r600_shader.c | 401 ++---

[Mesa-dev] [PATCH 3/3] r600g/llvm: Parse config values in register / value pairs

2013-05-03 Thread Tom Stellard
From: Tom Stellard thomas.stell...@amd.com Rather than relying on a predetermined order for the config values. --- src/gallium/drivers/r600/r600_llvm.c | 33 ++--- 1 file changed, 30 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/r600/r600_llvm.c

Re: [Mesa-dev] [PATCH 2/2] vbo: implement primitive merging for glBegin/End sequences

2013-05-03 Thread Brian Paul
On 05/03/2013 03:52 PM, Eric Anholt wrote: Brian Paulbri...@vmware.com writes: diff --git a/src/mesa/vbo/vbo_save_api.c b/src/mesa/vbo/vbo_save_api.c index b8dd90c..9ce3c6e 100644 --- a/src/mesa/vbo/vbo_save_api.c +++ b/src/mesa/vbo/vbo_save_api.c @@ -305,9 +305,9 @@

Re: [Mesa-dev] [PATCH] r600g: don't emit surface_sync after FLUSH_AND_INV_EVENT

2013-05-03 Thread Aaron Watry
I know it's been pushed already, but this also fixes some lockups that I was seeing on Barts (HD6850) when running piglit's OpenCL tests. Thanks for fixing this. --Aaron On Fri, May 3, 2013 at 9:47 AM, Marek Olšák mar...@gmail.com wrote: Reviewed-by: Marek Olšák mar...@gmail.com Marek On

[Mesa-dev] [PATCH 01/12] glsl: Add ir_binop_vector_extract

2013-05-03 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com The new opcode is used to get a single field from a vector. The field index may not be constant. This will eventually replace ir_dereference_array of vectors. This is similar to the extractelement instruction in LLVM IR.

[Mesa-dev] [PATCH 02/12] glsl: Add ir_triop_vector_insert

2013-05-03 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com The new opcode is used to generate a new vector with a single field from the source vector replaced. This will eventually replace ir_dereference_array of vectors in the LHS of assignments. v2: Convert tabs to spaces. Suggested by Eric. v3: Add

[Mesa-dev] [PATCH 03/12] glsl: Refactor part of convert_vec_index_to_cond_assign

2013-05-03 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Use a first function that extract the vector being indexed and the index from the deref. Call the second function that does the real work. Coming patches will add a new ir_expression for variable indexing into a vector. Having the lowering pass split

[Mesa-dev] [PATCH 04/12] glsl: Lower ir_binop_vector_extract to swizzle

2013-05-03 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Lower ir_binop_vector_extract with a constant index to a swizzle. This is exactly like ir_dereference_array of a vector with a constant index. v2: Convert tabs to spaces. Suggested by Eric. v3: Correctly call convert_vector_extract_to_swizzle in

[Mesa-dev] [PATCH 05/12] glsl: Lower ir_binop_vector_extract to conditional moves

2013-05-03 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Lower ir_binop_vector_extract with a non-constant index to a series of conditional moves. This is exactly like ir_dereference_array of a vector with a non-constant index. v2: Convert tabs to spaces. Suggested by Eric. Signed-off-by: Ian Romanick

[Mesa-dev] [PATCH 06/12] glsl: Add lowering pass for ir_triop_vector_insert

2013-05-03 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com This will eventually replace do_vec_index_to_cond_assign. This lowering pass is called in all the places where do_vec_index_to_cond_assign or do_vec_index_to_swizzle is called. v2: Use WRITEMASK_* instead of integer literals. Use a more concise

[Mesa-dev] [PATCH 07/12] glsl: Convert ir_binop_vector_extract in the LHS to ir_triop_vector_insert

2013-05-03 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com The ast_array_index code can't know whether to generate an ir_binop_vector_extract or an ir_triop_vector_insert. Instead it will always generate ir_binop_vector_extract, and the LHS and RHS have to be re-written. v2: Convert tabs to spaces. Suggested

Re: [Mesa-dev] [PATCH] glsl: Flip around if statements with empty then blocks.

2013-05-03 Thread Kenneth Graunke
On 05/03/2013 03:05 PM, Eric Anholt wrote: This cleans up some funny-looking code in some unigine shaders I was looking at. Also slightly helps on planeshift and a few shaders in an upcoming Valve release. total instructions in shared programs: 1653715 - 1653587 (-0.01%) instructions in

[Mesa-dev] [PATCH 10/12] glsl: Use vector-insert and vector-extract on elements of gl_ClipDistanceMESA

2013-05-03 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Variable indexing into vectors using ir_dereference_array is being removed, so this lowering pass has to generate something different. v2: Convert tabs to spaces. Suggested by Eric. Signed-off-by: Ian Romanick ian.d.roman...@intel.com Cc: Paul Berry

[Mesa-dev] [PATCH 11/12] glsl: Generate correct ir_binop_vector_extract code for out and inout parameters

2013-05-03 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Like with type conversions on out parameters, some extra copies need to occur to handle these cases. The fundamental problem is that ir_binop_vector_extract is not an lvalue, but out and inout parameters must be lvalues. A previous patch delt with a

[Mesa-dev] [PATCH 12/12] glsl: Death to array dereferences of vectors!

2013-05-03 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Now that all the places that used to generate array derefeneces of vectors have been changed to generate either ir_binop_vector_extract or ir_triop_vector_insert (or both), remove all support for dealing with this deprecated construct. As an added

Re: [Mesa-dev] [PATCH 15/14] i965/fs: Don't emit 16-wide BFI1 instructions.

2013-05-03 Thread Eric Anholt
Matt Turner matts...@gmail.com writes: The Haswell Bspec says A SIMD16 instruction is not allowed. (but 16-wide BFI1 works for me so far). Since GLSL's bitfieldInsert() function takes int parameters BFI1 produces the same results in all channels, so there's never any reason to emit a 16-wide

Re: [Mesa-dev] [PATCH] i965: Enable fast clears on non-8x4-aligned sizes.

2013-05-03 Thread Eric Anholt
Kenneth Graunke kenn...@whitecape.org writes: On 05/02/2013 01:58 PM, Eric Anholt wrote: Improves glb2.7 performance at a misaligned size by 2.3% +/- 0.7% (n=11). The workaround was to avoid bad primitive/surface sizes, but that's worked around as of a14dc4f92cdad6177d83f051a088a66e31a973bc.