[Mesa-dev] [PATCH v3] glsl: handle a switch where default is in the middle of cases

2014-07-14 Thread Tapani Pälli
This fixes following tests in es3conform: shaders.switch.default_not_last_dynamic_vertex shaders.switch.default_not_last_dynamic_fragment and makes following tests in Piglit pass: glsl-1.30/execution/switch/fs-default-notlast-fallthrough glsl-1.30/execution/switch/fs-default_notlast

[Mesa-dev] [Bug 78716] Fix Mesa bugs for running Unreal Engine 4.1 Cave effects demo compiled for Linux

2014-07-14 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=78716 --- Comment #10 from Tapani Pälli lem...@gmail.com --- Created attachment 102771 -- https://bugs.freedesktop.org/attachment.cgi?id=102771action=edit patch that adds 4.0 missing blend functions api attached patch makes some of these new demos

[Mesa-dev] [Bug 78716] Fix Mesa bugs for running Unreal Engine 4.1 Cave effects demo compiled for Linux

2014-07-14 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=78716 --- Comment #11 from Kenneth Graunke kenn...@whitecape.org --- (In reply to comment #10) Created attachment 102771 [details] [review] patch that adds 4.0 missing blend functions api attached patch makes some of these new demos work for me on

Re: [Mesa-dev] [PATCH] i965: Add an option to not generate the SIMD8 fragment shader

2014-07-14 Thread Kenneth Graunke
On Friday, July 11, 2014 11:26:30 AM Kristian Høgsberg wrote: For now, this can only be triggered with a new 'no8' INTEL_DEBUG option Signed-off-by: Kristian Høgsberg k...@bitplanet.net --- src/mesa/drivers/dri/i965/brw_context.h | 2 ++ src/mesa/drivers/dri/i965/brw_fs.cpp | 14

Re: [Mesa-dev] [PATCH] glsl: Fix aggregates with dynamic initializers.

2014-07-14 Thread Kenneth Graunke
On Thursday, July 10, 2014 09:55:31 AM Cody Northrop wrote: Vectors are falling in to the ir_dereference_array() path. Without this change, the following glsl aborts the debug driver, or gets the wrong answer in release: mat2x2 a = mat2( vec2( 1.0, vertex.x ), vec2( 0.0, 1.0 ) ); Also

Re: [Mesa-dev] [PATCH 1/2] glsl: add a mechanism to allow #extension directives in the middle of shaders

2014-07-14 Thread Kenneth Graunke
On Tuesday, July 08, 2014 08:29:44 PM Marek Olšák wrote: From: Marek Olšák marek.ol...@amd.com This is needed to make Unigine Heaven 4.0 and Unigine Valley 1.0 work with sample shading. Also, if this is disabled, the error message at least makes sense now. --- src/glsl/glsl_parser.yy

Re: [Mesa-dev] [PATCH] glapi: Use GetProcAddress instead of dlsym on Windows.

2014-07-14 Thread Brian Paul
On 07/11/2014 12:52 PM, Vinson Lee wrote: This patch fixes this MinGW build error. glapi_gentable.c: In function '_glapi_create_table_from_handle': glapi_gentable.c:123:9: error: implicit declaration of function 'dlsym' [-Werror=implicit-function-declaration] *procp = dlsym(handle,

Re: [Mesa-dev] [PATCH] i965: Add an option to not generate the SIMD8 fragment shader

2014-07-14 Thread Kristian Høgsberg
On Mon, Jul 14, 2014 at 9:17 AM, Kenneth Graunke kenn...@whitecape.org wrote: On Friday, July 11, 2014 11:26:30 AM Kristian Høgsberg wrote: For now, this can only be triggered with a new 'no8' INTEL_DEBUG option Signed-off-by: Kristian Høgsberg k...@bitplanet.net ---

[Mesa-dev] [PATCH] r600g: Implement GL_ARB_texture_gather

2014-07-14 Thread Glenn Kennard
Only supported on evergreen and later. Limited to single component textures as the hardware GATHER4 instruction ignores texture swizzles. Piglit quick run passes on radeon 6670 with all applicable textureGather tests, no regressions. Signed-off-by: Glenn Kennard glenn.kenn...@gmail.com ---

Re: [Mesa-dev] [PATCH] r600g: Implement GL_ARB_texture_gather

2014-07-14 Thread Ilia Mirkin
On Mon, Jul 14, 2014 at 2:20 PM, Glenn Kennard glenn.kenn...@gmail.com wrote: Only supported on evergreen and later. Limited to single component textures as the hardware GATHER4 instruction ignores texture swizzles. Piglit quick run passes on radeon 6670 with all applicable textureGather

[Mesa-dev] [PATCH] configure: Don't override user -g or -O options for debug builds

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com I already pass '-ggdb3 -O1' or '-ggdb3 -Og' for CFLAGS, and I don't want configure to change them for me. Signed-off-by: Ian Romanick ian.d.roman...@intel.com --- configure.ac | 14 -- 1 file changed, 12 insertions(+), 2 deletions(-) diff

Re: [Mesa-dev] [PATCH] configure: Don't override user -g or -O options for debug builds

2014-07-14 Thread Kenneth Graunke
On Monday, July 14, 2014 11:49:57 AM Ian Romanick wrote: From: Ian Romanick ian.d.roman...@intel.com I already pass '-ggdb3 -O1' or '-ggdb3 -Og' for CFLAGS, and I don't want configure to change them for me. Signed-off-by: Ian Romanick ian.d.roman...@intel.com --- configure.ac | 14

Re: [Mesa-dev] [PATCH] r600g: Implement GL_ARB_texture_gather

2014-07-14 Thread Marek Olšák
Reviewed-by: Marek Olšák marek.ol...@amd.com Yes, Dave Airlie's branch seems to support multi-component textures as well as texture offsets. However, his solution triggers shader recompilation when the format and/or swizzle is changed even if the shader doesn't use GATHER4. The recompilation

Re: [Mesa-dev] [PATCH] r600g: Implement GL_ARB_texture_gather

2014-07-14 Thread Ilia Mirkin
On Mon, Jul 14, 2014 at 3:06 PM, Marek Olšák mar...@gmail.com wrote: Reviewed-by: Marek Olšák marek.ol...@amd.com Yes, Dave Airlie's branch seems to support multi-component textures as well as texture offsets. However, his solution triggers shader recompilation when the format and/or swizzle

Re: [Mesa-dev] [PATCH] r600g: Implement GL_ARB_texture_gather

2014-07-14 Thread Marek Olšák
Hm, indeed. PIPE_CAP_TEXTURE_GATHER_SM5 should be 0. Marek On Mon, Jul 14, 2014 at 9:10 PM, Ilia Mirkin imir...@alum.mit.edu wrote: On Mon, Jul 14, 2014 at 3:06 PM, Marek Olšák mar...@gmail.com wrote: Reviewed-by: Marek Olšák marek.ol...@amd.com Yes, Dave Airlie's branch seems to support

Re: [Mesa-dev] [PATCH 1/2] radeonsi: switch descriptors to i32 vectors

2014-07-14 Thread Marek Olšák
Sorry Tom, the patch does break the driver with LLVM 3.4.2. It looks like LLVM wasn't installed properly. I have reverted it. Marek On Fri, Jul 11, 2014 at 4:20 PM, Tom Stellard t...@stellard.net wrote: On Fri, Jul 11, 2014 at 01:00:34AM +0200, Marek Olšák wrote: I have just tested it and it

Re: [Mesa-dev] [PATCH] r600g: Implement GL_ARB_texture_gather

2014-07-14 Thread Glenn Kennard
On Mon, 14 Jul 2014 20:33:08 +0200, Ilia Mirkin imir...@alum.mit.edu wrote: On Mon, Jul 14, 2014 at 2:20 PM, Glenn Kennard glenn.kenn...@gmail.com wrote: diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c index ca6399f..d967f0f 100644 ---

Re: [Mesa-dev] [PATCH] configure: Don't override user -g or -O options for debug builds

2014-07-14 Thread Matt Turner
On Mon, Jul 14, 2014 at 11:49 AM, Ian Romanick i...@freedesktop.org wrote: From: Ian Romanick ian.d.roman...@intel.com I already pass '-ggdb3 -O1' or '-ggdb3 -Og' for CFLAGS, and I don't want configure to change them for me. Signed-off-by: Ian Romanick ian.d.roman...@intel.com ---

[Mesa-dev] [PATCH] radeon/llvm: Fix LLVM diagnostic error reporting

2014-07-14 Thread Tom Stellard
We were trying to print the error message after disposing the message object. --- src/gallium/drivers/radeon/radeon_llvm_emit.c | 11 --- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/gallium/drivers/radeon/radeon_llvm_emit.c

Re: [Mesa-dev] [PATCH] configure: Don't override user -g or -O options for debug builds

2014-07-14 Thread Ilia Mirkin
On Mon, Jul 14, 2014 at 4:41 PM, Matt Turner matts...@gmail.com wrote: On Mon, Jul 14, 2014 at 11:49 AM, Ian Romanick i...@freedesktop.org wrote: From: Ian Romanick ian.d.roman...@intel.com I already pass '-ggdb3 -O1' or '-ggdb3 -Og' for CFLAGS, and I don't want configure to change them for

Re: [Mesa-dev] [PATCH] configure: Don't override user -g or -O options for debug builds

2014-07-14 Thread Marek Olšák
You can also just add -DDEBUG by yourself since you override the flags anyway (me too). Marek On Mon, Jul 14, 2014 at 8:49 PM, Ian Romanick i...@freedesktop.org wrote: From: Ian Romanick ian.d.roman...@intel.com I already pass '-ggdb3 -O1' or '-ggdb3 -Og' for CFLAGS, and I don't want

Re: [Mesa-dev] [PATCH] r600g: Implement GL_ARB_texture_gather

2014-07-14 Thread Dave Airlie
Also, have you looked at Dave Airlie's impl? Not sure what's been going on there... http://cgit.freedesktop.org/~airlied/mesa/log/?h=r600g-texture-gather . He seemed to enable 4 components for = CEDAR. No, didn't pop up when i searched the archives for any prior work on this. Interesting!

Re: [Mesa-dev] [PATCH] radeon/llvm: Fix LLVM diagnostic error reporting

2014-07-14 Thread Aaron Watry
Tested-by and Reviewed-by: Aaron Watry awa...@gmail.com On Mon, Jul 14, 2014 at 3:51 PM, Tom Stellard thomas.stell...@amd.com wrote: We were trying to print the error message after disposing the message object. --- src/gallium/drivers/radeon/radeon_llvm_emit.c | 11 --- 1 file

Re: [Mesa-dev] [PATCH] i965: Initialize new chunks of realloc'd memory.

2014-07-14 Thread Kenneth Graunke
On Wednesday, July 09, 2014 12:41:25 PM Matt Turner wrote: Otherwise we'd compare uninitialized pointers with NULL and dereference, leading to crashes. --- src/mesa/drivers/dri/i965/intel_asm_annotation.c | 4 1 file changed, 4 insertions(+) diff --git

Re: [Mesa-dev] [PATCH] configure: Don't override user -g or -O options for debug builds

2014-07-14 Thread Emil Velikov
On 14/07/14 19:49, Ian Romanick wrote: From: Ian Romanick ian.d.roman...@intel.com I already pass '-ggdb3 -O1' or '-ggdb3 -Og' for CFLAGS, and I don't want configure to change them for me. The topic is a rather messy and whatever we do there will always be a case where this breaks someone's

Re: [Mesa-dev] [PATCH] r600g: Implement GL_ARB_texture_gather

2014-07-14 Thread Marek Olšák
My advice is: The shader being compiled should be analyzed before compilation and an array of bool flags (or one uint16_t for all flags) should be produced saying which sampler units use TG4. Then, you only need to set the swizzle in the key for the i-th sampler if the i-th sampler is really used

Re: [Mesa-dev] [PATCH] i965/fs: Perform CSE on sends-from-GRF rather than textures.

2014-07-14 Thread Kenneth Graunke
On Thursday, July 10, 2014 11:59:40 AM Matt Turner wrote: Should potentially allow a few more cases, while avoiding doing CSE on texture operations on Gen = 6 with the MRF. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=80211 --- src/mesa/drivers/dri/i965/brw_fs_cse.cpp | 2 +- 1

[Mesa-dev] [PATCH 04/10] glsl: Optimize (A || B) A == A

2014-07-14 Thread thomashelland90
From: Thomas Helland thomashellan...@gmail.com And it's cousins Signed-off-by: Thomas Helland thomashellan...@gmail.com --- src/glsl/opt_algebraic.cpp | 10 ++ 1 file changed, 10 insertions(+) diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp index 748fd05..230fb1b

[Mesa-dev] [PATCH 07/10] glsl: Optimize log(x) + log(y) == log(x*y)

2014-07-14 Thread thomashelland90
From: Thomas Helland thomashellan...@gmail.com And the log2() equivalent. Signed-off-by: Thomas Helland thomashellan...@gmail.com --- src/glsl/opt_algebraic.cpp | 12 1 file changed, 12 insertions(+) diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp index

[Mesa-dev] [PATCH 01/10] glsl: Optimize X - X - 0

2014-07-14 Thread thomashelland90
From: Thomas Helland thomashellan...@gmail.com Silly optimization indeed, but who knows. Signed-off-by: Thomas Helland thomashellan...@gmail.com --- src/glsl/opt_algebraic.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp index

[Mesa-dev] [PATCH 10/10] glsl: Optimize some more pow() special cases

2014-07-14 Thread thomashelland90
From: Thomas Helland thomashellan...@gmail.com Specifically x^-1 = rcp(x) .0^x = 0 .x^0 = 1 Signed-off-by: Thomas Helland thomashellan...@gmail.com --- src/glsl/opt_algebraic.cpp | 15 +++ 1 file changed, 15 insertions(+) diff --git

[Mesa-dev] [PATCH 02/10] glsl: Optimize !A || A == 1

2014-07-14 Thread thomashelland90
From: Thomas Helland thomashellan...@gmail.com Signed-off-by: Thomas Helland thomashellan...@gmail.com --- src/glsl/opt_algebraic.cpp | 12 1 file changed, 12 insertions(+) diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp index c179d53..385f0a2 100644 ---

[Mesa-dev] [PATCH 08/10] glsl: Optimize exp(x)*exp(y) == exp(x+y)

2014-07-14 Thread thomashelland90
From: Thomas Helland thomashellan...@gmail.com And it's exp2() equivalent. Signed-off-by: Thomas Helland thomashellan...@gmail.com --- src/glsl/opt_algebraic.cpp | 11 +++ 1 file changed, 11 insertions(+) diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp index

[Mesa-dev] [PATCH 05/10] glsl: Optimize min(-8, sin(x)) == -8 and similar

2014-07-14 Thread thomashelland90
From: Thomas Helland thomashellan...@gmail.com This patch is a bit sketchy. It only handles float-constants, otherwise it bails. Also, ir_unop_saturate should be added here when support for it lands in the ir. Signed-off-by: Thomas Helland thomashellan...@gmail.com ---

[Mesa-dev] [PATCH 09/10] glsl: Optimize A - neg(B) == A + B

2014-07-14 Thread thomashelland90
From: Thomas Helland thomashellan...@gmail.com ...and neg(A) - B == neg(A + B) Signed-off-by: Thomas Helland thomashellan...@gmail.com --- src/glsl/opt_algebraic.cpp | 6 ++ 1 file changed, 6 insertions(+) diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp index

[Mesa-dev] [PATCH 00/10] [RFC] Probably useless algebraic optimizations

2014-07-14 Thread thomashelland90
From: Thomas Helland thomashellan...@gmail.com When writing that A || (A B) patch some days ago I also wrote some other patches that have no impact on my collection of shaders. (shader-db + Some TF2 and Portal-shaders). No reduction in instruction count, and no significant increase in

[Mesa-dev] [PATCH 06/10] glsl: Optimize max(8, sin(x)) == 8 and similar

2014-07-14 Thread thomashelland90
From: Thomas Helland thomashellan...@gmail.com This also only handles floats. ir_unop_saturate should also be added when the support for this lands in the ir. Signed-off-by: Thomas Helland thomashellan...@gmail.com --- src/glsl/opt_algebraic.cpp | 38 ++ 1

[Mesa-dev] [PATCH 03/10] glsl: Optimize !A A == 0

2014-07-14 Thread thomashelland90
From: Thomas Helland thomashellan...@gmail.com Signed-off-by: Thomas Helland thomashellan...@gmail.com --- src/glsl/opt_algebraic.cpp | 8 1 file changed, 8 insertions(+) diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp index 385f0a2..748fd05 100644 ---

Re: [Mesa-dev] [PATCH 2/2] glsl: Update expression types after rebalancing the tree.

2014-07-14 Thread Kenneth Graunke
On Thursday, July 10, 2014 11:26:52 AM Matt Turner wrote: If we saw a tree that looked like vec3 / \ vec3 float / \ vec3 float / \ vec3 float We would see that all of the expression types were vec3, and then rebalance to

[Mesa-dev] [PATCH 07/26] glsl: Use accessors for ir_variable::warn_extension

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com The payoff for this will come in the next patch. No change Valgrind massif results for a trimmed apitrace of dota2. Signed-off-by: Ian Romanick ian.d.roman...@intel.com --- src/glsl/builtin_variables.cpp | 4 ++-- src/glsl/ir.cpp| 11

[Mesa-dev] [PATCH 15/26] glsl: Never put ir_var_temporary variables in the symbol table

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Later patches will give every ir_var_temporary the same name in release builds. Adding a bunch of variables named compiler_temp to the symbol table can only cause problems. No change Valgrind massif results for a trimmed apitrace of dota2.

[Mesa-dev] [PATCH 09/26] glsl: Store ir_variable::depth_layout using 3 bits

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com warn_extension_index was moved to improve packing. Valgrind massif results for a trimmed apitrace of dota2: ntime(i) total(B) useful-heap(B) extra-heap(B)stacks(B) Before (32-bit): 73 40,580,476,304

[Mesa-dev] [PATCH 02/26] glsl: Rebuild the symbol table without unreachable symbols

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Previously we had to keep unreachable global symbols in the symbol table because the symbol table is used during linking. Having the symbol table retain pointers to freed memory... what could possibly go wrong? At the same time, this meant that we kept

[Mesa-dev] [PATCH 18/26] glsl: Don't allocate a name for ir_var_temporary variables

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Valgrind massif results for a trimmed apitrace of dota2: ntime(i) total(B) useful-heap(B) extra-heap(B)stacks(B) Before (32-bit): 74 40,578,719,715 67,762,208 62,263,404 5,498,8040

[Mesa-dev] [PATCH 12/26] glsl: Squish ir_variable::max_ifc_array_access and ::state_slots together

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com At least one of these pointers must be NULL, and we can determine which will be NULL by looking at other fields. Use this information to store both pointers in the same location. If anyone can think of a better name for the union than u, I'm all ears.

[Mesa-dev] [PATCH 01/26] glsl: Validate that built-in uniforms have backing state

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com All built-in uniforms are supposed to be backed by some GL state. The state_slots field describes this backing state. This helped me track down a bug in a later patch. Signed-off-by: Ian Romanick ian.d.roman...@intel.com Acked-by: Anuj Phogat

[Mesa-dev] [PATCH 17/26] glsl: Use ir_var_temporary for compiler generated temporaries

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com These few places were using ir_var_auto for seemingly no reason. The names were not added to the symbol table. No change Valgrind massif results for a trimmed apitrace of dota2. Signed-off-by: Ian Romanick ian.d.roman...@intel.com ---

[Mesa-dev] [PATCH 16/26] glsl: Add context-level controls for whether temporaries have real names

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com No change Valgrind massif results for a trimmed apitrace of dota2. Signed-off-by: Ian Romanick ian.d.roman...@intel.com --- src/glsl/main.cpp | 1 + src/mesa/main/context.c | 6 ++ src/mesa/main/mtypes.h| 13 +

[Mesa-dev] [PATCH 13/26] glsl: Store ir_variable_data::_num_state_slots and ::binding in 16-bits each

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Valgrind massif results for a trimmed apitrace of dota2: ntime(i) total(B) useful-heap(B) extra-heap(B)stacks(B) Before (32-bit): 44 40,577,049,140 68,118,608 62,441,063 5,677,5450

[Mesa-dev] [PATCH 22/26] glsl: Store ir_variable::ir_type in 8 bits instead of 32

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com No change Valgrind massif results for a trimmed apitrace of dota2. Signed-off-by: Ian Romanick ian.d.roman...@intel.com --- src/glsl/ir.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/glsl/ir.h b/src/glsl/ir.h index

[Mesa-dev] [PATCH 08/26] glsl: Replace ir_variable::warn_extension pointer with an 8-bit index

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Also move the new warn_extension_index into ir_variable::data. This enables slightly better packing. Valgrind massif results for a trimmed apitrace of dota2: ntime(i) total(B) useful-heap(B) extra-heap(B)

[Mesa-dev] [PATCH 06/26] glsl: Use bit-flags image attributes and uint16_t for the image format

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com All of the GL image enums fit in 16-bits. Also move the fields from the anonymous image structucture to the next higher structure. This will enable packing the bits with the other bitfield. Valgrind massif results for a trimmed apitrace of dota2:

[Mesa-dev] [PATCH 25/26] glsl: Keep common variable names in static storage

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Valgrind massif results for a trimmed apitrace of dota2: ntime(i) total(B) useful-heap(B) extra-heap(B)stacks(B) Before (32-bit): 52 40,521,071,734 66,157,928 61,054,870 5,103,0580

[Mesa-dev] [PATCH 00/26] GLSL memory diet

2014-07-14 Thread Ian Romanick
Most of these patches have been sent to the list already in one form or another. There are a few changes, removals, and additions. The series has also been re-ordered. - The extra memory accounting code has been removed. This was suggested by Ken. Instead, all memory usage data is from

[Mesa-dev] [PATCH 04/26] glsl: Eliminate ir_variable::data.atomic.buffer_index

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Just use ir_variable::data.binding... because that's the where the binding is stored for everything else that can use layout(binding=). Valgrind massif results for a trimmed apitrace of dota2: ntime(i) total(B)

[Mesa-dev] [PATCH 20/26] i965/fs: Don't make a name for a vector splitting temporary

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com If the name is just going to get dropped, don't bother making it. If the name is made, release it sooner (rather than later). No change Valgrind massif results for a trimmed apitrace of dota2. Signed-off-by: Ian Romanick ian.d.roman...@intel.com ---

[Mesa-dev] [PATCH 23/26] glsl: Make compiler-added padding ir_instruction usable

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com No change Valgrind massif results for a trimmed apitrace of dota2. v2: Fix a couple spelling errors in the comment. Signed-off-by: Ian Romanick ian.d.roman...@intel.com --- src/glsl/ir.h | 14 ++ 1 file changed, 14 insertions(+) diff

[Mesa-dev] [PATCH 10/26] glsl: Make ir_variable::max_ifc_array_access private

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com The payoff for this will come in a few more patches. No change Valgrind massif results for a trimmed apitrace of dota2. Signed-off-by: Ian Romanick ian.d.roman...@intel.com --- src/glsl/ast_array_index.cpp | 10 -- src/glsl/ir.h

[Mesa-dev] [PATCH 03/26] glsl: Eliminate unused built-in variables after compilation

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com After compilation (and before linking) we can eliminate quite a few built-in variables. Basically, any uniform or constant (e.g., gl_MaxVertexTextureImageUnits) that isn't used (with one exception) can be eliminated. System values, vertex shader

[Mesa-dev] [PATCH 26/26] glsl: Add Bloom filter to get_static_name

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com The use of the Bloom filter rejects the vast majority of strings that are not in the table before expensive comparisons are performed. This Bloom filter uses two hashes. One is explicit (calculate_hash in the code), and the other is implicit. The

[Mesa-dev] [PATCH 14/26] glsl: Add the possibility for ir_variable to have a non-ralloced name

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Specifically, ir_var_temporary variables constructed with a NULL name will all have the name compiler_temp in static storage. No change Valgrind massif results for a trimmed apitrace of dota2. Signed-off-by: Ian Romanick ian.d.roman...@intel.com ---

[Mesa-dev] [PATCH 21/26] glsl: Make ir_instruction::ir_type private

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com In the next patch, the type of ir_type is going to change from enum to uint8_t. Since the type won't be an enum, we won't get compiler warnings about, for example, switch statements that don't have cases for all the enum values. Using a getter that

[Mesa-dev] [PATCH 24/26] glsl: Store short variable names inside ir_variable

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Most of the overhead of the name allocation is the ralloc tracking, especially on 64-bit. The allocation of the variable name i is 2 bytes for the name and 40 bytes for the ralloc tracking. I collected data from shader-db. At the end of link_shaders

[Mesa-dev] [PATCH 11/26] glsl: Make ir_variable::num_state_slots and ir_variable::state_slots private

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com Also move num_state_slots inside ir_variable_data for better packing. The payoff for this will come in a few more patches. No change Valgrind massif results for a trimmed apitrace of dota2. Signed-off-by: Ian Romanick ian.d.roman...@intel.com ---

[Mesa-dev] [PATCH 19/26] glsl: Don't make a name for the function return variable

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com If the name is just going to get dropped, don't bother making it. If the name is made, release it sooner (rather than later). No change Valgrind massif results for a trimmed apitrace of dota2. Signed-off-by: Ian Romanick ian.d.roman...@intel.com ---

[Mesa-dev] [PATCH 05/26] glsl: Use a single bit for the dual-source blend index

2014-07-14 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com The only values allowed are 0 and 1, and the value is checked before assigning. Valgrind massif results for a trimmed apitrace of dota2: ntime(i) total(B) useful-heap(B) extra-heap(B)stacks(B) Before (32-bit):

Re: [Mesa-dev] [PATCH 1/2] glsl: add a mechanism to allow #extension directives in the middle of shaders

2014-07-14 Thread Ian Romanick
Looks good to me. Reviewed-by: Ian Romanick ian.d.roman...@intel.com On 07/08/2014 11:29 AM, Marek Olšák wrote: From: Marek Olšák marek.ol...@amd.com This is needed to make Unigine Heaven 4.0 and Unigine Valley 1.0 work with sample shading. Also, if this is disabled, the error message at

Re: [Mesa-dev] [PATCH] configure: Don't override user -g or -O options for debug builds

2014-07-14 Thread Ian Romanick
On 07/14/2014 01:41 PM, Matt Turner wrote: On Mon, Jul 14, 2014 at 11:49 AM, Ian Romanick i...@freedesktop.org wrote: From: Ian Romanick ian.d.roman...@intel.com I already pass '-ggdb3 -O1' or '-ggdb3 -Og' for CFLAGS, and I don't want configure to change them for me. Signed-off-by: Ian

[Mesa-dev] [Bug 81174] Gallium: GL_LINE_LOOP broken with more than 512 points

2014-07-14 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=81174 --- Comment #7 from Roland Scheidegger srol...@vmware.com --- Hmm interesting. I thought more than 512 vertices would fit before it uses a new buffer (the buffer size is 64kB though I don't know what the vertex size ends up with). But if the bug

[Mesa-dev] [Bug 81174] Gallium: GL_LINE_LOOP broken with more than 512 points

2014-07-14 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=81174 --- Comment #8 from Marek Olšák mar...@gmail.com --- Line loops aren't so critical, since they are rarely used. But what about triangle strips... every split kills 2 triangles... -- You are receiving this mail because: You are the assignee for

[Mesa-dev] [Bug 81174] Gallium: GL_LINE_LOOP broken with more than 512 points

2014-07-14 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=81174 --- Comment #9 from Roland Scheidegger srol...@vmware.com --- (In reply to comment #8) Line loops aren't so critical, since they are rarely used. But what about triangle strips... every split kills 2 triangles... That shouldn't happen, the

[Mesa-dev] [PATCH] glapi: add indexed blend functions (GL 4.0)

2014-07-14 Thread Tapani Pälli
This makes some of the UE4 engine demos (Stylized, Mobile Temple) render correctly, tested on Intel Haswell machine. Signed-off-by: Tapani Pälli tapani.pa...@intel.com --- src/mapi/glapi/gen/GL4x.xml | 26 ++ src/mesa/main/tests/dispatch_sanity.cpp | 10

[Mesa-dev] Release-candidate branch for upcoming 10.2.4

2014-07-14 Thread Carl Worth
Hi folks, I've pushed out an update to the 10.2 branch and I need some specific testing in the next three days. I've tested the branch on Intel (Haswell) as well as both swrast and Gallium softpipe and found no piglit regressions compared to the 10.2.3 release. The branch includes a few patches

[Mesa-dev] [Bug 81174] Gallium: GL_LINE_LOOP broken with more than 512 points

2014-07-14 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=81174 --- Comment #10 from Florian Link florianl...@gmail.com --- What I don't understand yet is why the effect is not stable (if my example is repainted several times, the wrap appears at different positions over time). -- You are receiving this