summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-01-22docs: Add 9.0.2 release notesmesa-9.0.2Andreas Boll2-0/+281
2013-01-22mesa: Bump version to 9.0.2Andreas Boll4-5/+5
2013-01-22egl/wayland: Destroy the pending buffer callback with the egl surfaceAnder Conselvan de Oliveira2-0/+7
Otherwise, we crash when the callback is executed, since the dri2_surf pointer may point to invalid data. Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
2013-01-20mesa: update .cherry-ignore listAndreas Boll1-1/+6
2013-01-20Revert "r600g: try to fix streamout for the cases where BURST_COUNT > 0"Andreas Boll1-1/+1
This reverts commit 42f71b4861b9d01a8f925fea3182fc1a292222f3. Fixes the following piglit regressions on my rv770 ./bin/ext_transform_feedback-output-type float[2] -auto -fbo ./bin/ext_transform_feedback-output-type float[2]-no-subscript -auto -fbo ./bin/ext_transform_feedback-output-type int[2] -auto -fbo ./bin/ext_transform_feedback-output-type int[2]-no-subscript -auto -fbo ./bin/ext_transform_feedback-output-type uint[2] -auto -fbo ./bin/ext_transform_feedback-output-type uint[2]-no-subscript -auto -fbo
2013-01-20tests: AM_CPPFLAGS must include $(top_srcdir) instead of $(top_builddir).Johannes Obermayr3-12/+13
Reviewed-by: Andreas Boll <andreas.boll.dev@gmail.com> (cherry picked from commit ebcabb88cfd19b35cd1b0a327fa055fff0c1b2be) Additionally it fixes the missing $(top_srcdir)/include in src/glsl/tests/Makefile.am Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=59383
2013-01-20r600g: Use LOOP_START_DX10 for loopsTom Stellard3-2/+11
LOOP_START_DX10 ignores the LOOP_CONFIG* registers, so it is not limited to 4096 iterations like the other LOOP_* instructions. Compute shaders need to use this instruction, and since we aren't optimizing loops with the LOOP_CONFIG* registers for pixel and vertex shaders, it seems like we should just use it for everything. Reviewed-by: Marek Olšák <maraeo@gmail.com> (cherry picked from commit 810345492eca34c2ad12728b5491a4691cc62ec2) Fixes a hang on the following piglit test on my rv770 ./bin/ext_timer_query-time-elapsed -auto -fbo
2013-01-20gallivm: support more immediates in lp_build_tgsi_info()Brian Paul1-1/+1
Bump limit from 32 to 128. Fixes http://bugs.freedesktop.org/show_bug.cgi?id=58545 (cherry picked from commit 1b6ba9c4c840e291cbbe19a8601b56d1d103179c) Reviewed-by: Brian Paul <brianp@vmware.com>
2013-01-20clover: Adapt libclc's INCLUDEDIR and LIBEXECDIR to make use of the new ↵Johannes Obermayr4-6/+22
introduced libclc.pc. Tom Stellard: -Keep --with-libclc-path and mark it deprecated. Reviewed-by: Tom Stellard <thomas.stellard@amd.com> (cherry picked from commit 959e83d65075513f989cb1fe634dca314a7e185f)
2013-01-20gallium/auxiliary: Add -fno-rtti to CXXFLAGS on LLVM >= 3.2.Johannes Obermayr1-0/+5
Also remove the recently added and overloaded LLVM_CXXFLAGS from CXXFLAGS. Note: This is a candidate for the stable branches. Reviewed-by: Tom Stellard <thomas.stellard@amd.com> (cherry picked from commit 21694b8eacbf63f8abdee6340510c0458a25a7fb) Conflicts: src/gallium/auxiliary/Makefile
2013-01-20radeon/r200: Fix tcl cullingsmoki2-18/+8
Should fix: https://bugs.freedesktop.org/show_bug.cgi?id=57842 (cherry picked from commit 5bf357db89836d0f4e4b8a4cb559755d4734b81b)
2013-01-20r200: fix broken tcl lightingsmoki1-10/+10
command mistakenly used vector instead of scalar emit (the more or less identical code in radeon is already correct). Seems like it would be broken ever since kms probably. Should fix bugs 22576, 26809. (cherry picked from commit 320d531373e7b0873f5de42f6173b986290f593f)
2013-01-20glsl: Don't add structure fields to the symbol tableIan Romanick1-1/+0
I erroneously added this back in January 2011 in commit 88421589. Looking at the commit message, I have no idea why I added it. It only added non-array structure fields to the symbol table, so array structure fields are treated correctly. Fixes piglit tests structure-and-field-have-same-name.vert and structure-and-field-have-same-name-nested.vert. It should also fix WebGL conformance tests shader-with-non-reserved-words. NOTE: This is a candidate for the stable release branches. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=57622 Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit ed3f237e09a42bdb55afb58d1536affad9000d76)
2013-01-20r300g: Fix visibility CFLAGS in automakeAdam Jackson1-0/+1
Note: this is a candidate for the 9.0 stable branch. Signed-off-by: Adam Jackson <ajax@redhat.com> (cherry picked from commit c8d3fd4a120be0f62367f679e31ea5763c10c197)
2013-01-20galahad, noop: Fix visibility CFLAGS in automakeAdam Jackson1-0/+2
Note: this is a candidate for the 9.0 stable branch. Signed-off-by: Adam Jackson <ajax@redhat.com> (cherry picked from commit 443954d161dc3db0605926e4e759080e299710ce)
2013-01-20glcpp: Typo fix.Adam Jackson1-1/+1
Note: this is a candidate for the 9.0 stable branch. Signed-off-by: Adam Jackson <ajax@redhat.com> (cherry picked from commit 86b6964ef9839f1bd5a05efe47712843c97196ca)
2013-01-20glcpp: Fix visibility CFLAGS in automakeAdam Jackson1-0/+1
Note: this is a candidate for the 9.0 stable branch. Signed-off-by: Adam Jackson <ajax@redhat.com> (cherry picked from commit 0daabd52394899ec4947dc2cf3119201d2e79b1c)
2013-01-20clover: Install CL headers.Johannes Obermayr1-0/+10
Note: This is a candidate for the stable branches. (cherry picked from commit b361bb3de4bd8d27f6fcb920e5516e51db00ef73)
2013-01-20build: Fix GLES linkage without libglapiAndreas Boll2-2/+10
fixes a regression introduced with fc9ea7c74dc5cb996c3d9fe6663fd6da080e8360 NOTE: This is a candidate for the 9.0 branch. Reported-by: Brian Paul <brianp@vmware.com> Acked-by: Matt Turner <mattst88@gmail.com> (cherry picked from commit 520892688af7ce9baca6e2b72e7e7eaebe02260c)
2013-01-20glsl: fix uninitialised variable from constructorDave Airlie1-0/+1
Coverity pointed out this uninitialised class member. Note: This is a candidate for stable branches. Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit f3476ec8fa5a94d469a12318c537b13ce9cc5a45)
2013-01-20glsl: initialise killed_all field.Dave Airlie1-0/+1
coverity pointed out this field was being used uninitialised. Note: This is a candidate for stable branches. Reviewed-by: Brian Paul <brianp@vmware.com> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 906670a7906a785210c872f637239bf4afa5b63d)
2013-01-20glsl: fix cut-n-paste error in error handling. (v2)Dave Airlie1-2/+2
Reported by coverity scan. v2: fix second case Note: This is a candidate for stable branches. Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit e85c9a4d2874a302195c66742b446f0645440c43)
2013-01-20util: added pipe_surface_release() functionBrian Paul1-0/+16
To fix a pipe_context::surface_destroy() use-after-free problem. We previously added pipe_sampler_view_release() for similar reasons. Note: this is a candidate for the stable branches. Reviewed-by: Jose Fonseca <jfonseca@vmware.com> (cherry picked from commit 51223784d6a8ee93cf004c9ba87a7e4dcb7b3161)
2013-01-20build: use git ls-files for adding all Makefile.in into the release tarballAndreas Boll1-48/+1
Until we have proper 'make dist' this is an improvement of the current situation, because each time some old Makefiles got converted to automake we had to update the tarballs target. NOTE: This is a candidate for the 9.0 branch. Cc: Eric Anholt <eric@anholt.net> Acked-by: Matt Turner <mattst88@gmail.com> (cherry picked from commit 0f5e2ce8541855c65852dabbb19313fd0bb65b3d) Conflicts: Makefile.am
2013-01-20i965/gen4: Fix memory leak each time compile_gs_prog() is called.Eric Anholt1-1/+1
Commit 774fb90db3e83d5e7326b7a72e05ce805c306b24 introduced a ralloc context to each user of struct brw_compile, but for this one a NULL context was used, causing the later ralloc_free(mem_ctx) to not do anything. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=55175 NOTE: This is a candidate for the stable branches. (cherry picked from commit 59bfd66a614177320817a97e1dadfcfcf3b9b092)
2013-01-20radeonsi: add a new SI pci idAlex Deucher1-0/+1
Note: this is a candidate for the stable branch. Signed-off-by: Alex Deucher <alexander.deucher@amd.com> (cherry picked from commit e2df37f69a4e513b756fc193a544d48d8fd0ddac)
2013-01-20i915: Fix wrong sizeof argument in i915_update_tex_unit.Vinson Lee1-1/+1
The bug was found by Coverity. NOTE: This is a candidate for the stable branches. Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 10f214e5b248e5dd5f323c689549cd66d2f6ad22)
2013-01-20Add .dirstamp to toplevel .gitignoreAndreas Boll1-0/+1
(cherry picked from commit 59b3d3ad6e77af92eb23b77c59dc60e6f9566d87)
2013-01-20egl/dri2: Set error code when dri2CreateContextAttribs failsChad Versace1-0/+64
When dri2CreateContextContextAttribs failed, eglCreateContext returned NULL yet set the error code to EGL_SUCCESS! The problem was that eglCreateContext ignored the error code returned by driCreateContextAttribs. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56706 Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Signed-off-by: Chad Versace <chad.versace@linux.intel.com> (cherry picked from commit 5cf8536690226b3bd19d19197fcec501a278703c)
2013-01-20i965: Validate requested GLES context version in brwCreateContextChad Versace1-33/+25
For GLES1 and GLES2, brwCreateContext neglected to validate the requested context version received from the DRI layer. If DRI requested an OpenGL ES2 context with version 3.9, we provided it one. Before this fix, the switch statement that validated the requested GL context flavor was an ugly #ifdef copy-paste mess. Instead of reproducing the copy-past-mess for GLES1 and GLES2, I first refactored it. Now the switch statement is readable. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Signed-off-by: Chad Versace <chad.versace@linux.intel.com> (cherry picked from commit 243cf7a924eaef78ce0d5150747fae6c3c4e6974)
2013-01-20automake: strip LLVM_CXXFLAGS and LLVM_CPPFLAGS tooMaarten Lankhorst1-2/+2
It seems that -NDEBUG and other flags might still be leaked through those variables, so strip those off there as well. NOTE: This is a candidate for the 9.0 branch. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com> (cherry picked from commit ddb901fbf4489ffcd85d3320f23913eb1d4fbdfe)
2013-01-20mesa: Fix segfault on reading from a missing color read buffer.Eric Anholt1-11/+11
The diff looks funny, but it's moving the integer vs non-integer check below the _mesa_source_buffer_exists() check that ensures _ColorReadBuffer is non-null, so we get a GL_INVALID_OPERATION instead of a segfault. This looks like it had regressed in the _mesa_error_check_format_and_type() changes, which removed the first of the two duplicated checks for the source buffer. Fixes segfault in the new piglit ARB_framebuffer_object/negative-readpixels-no-rb. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=45877 NOTE: This is a candidate for the stable branches. Reviewed-by: Brian Paul <brianp@vmware.com> (cherry picked from commit 5c99697f74c68f7e170564d791b95d986a18774a)
2013-01-20mesa: add MaxNumLevels to gl_texture_image, remove MaxLog2Marek Olšák1-0/+4
MaxLog2 led to bugs, because it didn't work well with 1D and 3D textures. NOTE: This is a candidate for the stable branches. v2: correct the comment at MaxNumlevels Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 8111342e814304730bed34446ea816cbc17a5775)
2013-01-20i965: Fix AA Line Distance Mode in 3DSTATE_SF on Ivybridge.Kenneth Graunke1-3/+1
We were accidentally setting bit 14 in DWord 2 (which is Reserved/MBZ) rather than bit 14 in DWord 3 (which is AA Line Distance Mode). There's also no reason to ever set it to legacy mode; the bit is only used when drawing antialiased lines anyway. Set it unconditionally. NOTE: This is a candidate for stable branches. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Eric Anholt <eric@anholt.net> (cherry picked from commit e639385064663ba401544de5dbd463fa7f6cce2d)
2013-01-20glcpp: Reject garbage after #else and #endif tokensMatt Turner5-4/+15
Previously we were accepting garbage after #else and #endif tokens when the previous preprocessor conditional evaluated to false (eg, #if 0). When the preprocessor hits a false conditional, it switches the lexer into the SKIP state, in which it ignores non-control tokens. The parser pops the SKIP state off the stack when it reaches the associated #elif, #else, or #endif. Unfortunately, that meant that it only left the SKIP state after the lexing the entire line containing the #token and thus would accept garbage after the #token. To fix this we use a mid-rule, which is executed immediately after the #token is parsed. NOTE: This is a candidate for the stable branch Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56442 Fixes: preprocess17_frag.test from oglconform Reviewed-by: Carl Worth <cworth@cworth.org> (glcpp-parse.y) Acked-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit 060e69679925f171cfcc2a5f84fab1d833a7e804)
2013-01-20mesa: Don't glPopAttrib() GL_POINT_SPRITE_COORD_ORIGIN on < OpenGL-2.0Mario Kleiner1-2/+5
The GL_POINT_BIT state attribute GL_POINT_SPRITE_COORD_ORIGIN is only supported on OpenGL-2.0 or later. Prevent glPopAttrib() from trying to restore it on OpenGL-1.4 implementations which support GL_ARB_POINT_SPRITE, as otherwise the sequence... glPushAttrib(GL_POINT_BIT); glPopAttrib(); throws an GL_INVALID_ENUM error in glPopAttrib(). See also commit f778174ea1e431a7113f12c12beb4aba9e825a9f NOTE: This is a candidate for the 9.0 branch. Signed-off-by: Mario Kleiner <mario.kleiner@tuebingen.mpg.de> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit eabbe5c45f5d05822c5f841628afa4008398d553)
2013-01-20mesa: Fix glGetVertexAttribI[u]iv now that we have real integer attribs.Kenneth Graunke1-12/+4
Since cf438f5375e242, we store actual integers for the attribute data. We just need to reinterpret the GLfloat array as a GLint/GLuint array so we can read the proper data. Fixes oglconform's glsl-vertex-attrib/basic.VertexAttribI[1234][u]i subtests (after fixing an unrelated bug in those test cases). v2: Use the COPY_4V macro to be concise. NOTE: This is a candidate for the stable branches. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Marek Olšák <maraeo@gmail.com> [v1] (cherry picked from commit c299f44782d7d7d6719fce622a121aad58856139)
2013-01-20glsl_to_tgsi: fix dst register for texturing fetches.Dave Airlie1-1/+1
I've no idea why there isn't a piglit that triggers this behaviour, but while enabling TBOs for softpipe and r600g, I noticed all the integer tests failed. I tracked it back to the TXF returning a float when it should be returning an int. This fixed it and I haven't seen any regressions in a full piglit run on softpipe. http://bugs.freedesktop.org/55010 NOTE: This is a candidate for the 9.0 branch. Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 9785ae0973cc206afc36dbc7d5b9553f92d06b47)
2013-01-20meta: Remove redundant code in _mesa_meta_GenerateMipmapAnuj Phogat1-61/+4
Integer textures generate invalid operation in glGenerateMipmap. So, the code related to integer textures is now redundant. Note: This is a candidate for stable branches. Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Brian Paul <brianp@vmware.com> (cherry picked from commit a196f43596f6cb85a8f3e446596a2fb8e0ee7872)
2013-01-20mesa: Generate invalid operation in glGenerateMipMap for integer texturesAnuj Phogat1-0/+9
Khronos has reached a conclusion and disallowed following texture formats in glGenerateMipMap(): (a) ASTC textures (b) integer internal formats (e.g., RGBA8UI, RG16I) (c) textures with stencil formats (e.g., STENCIL_INDEX8) (d) textures with packed depth/stencil formats (e.g, DEPTH24_STENCIL8) https://cvs.khronos.org/bugzilla/show_bug.cgi?id=9471 Note: This is a candidate for stable branches. Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Brian Paul <brianp@vmware.com> (cherry picked from commit c0a78d7d7b51e125d143e693fdfc78b90f2d68cf)
2013-01-20mesa: Fix core GL genned-name handling for glBeginQuery().Eric Anholt1-5/+11
Fixes piglit gl-3.1/genned-names. NOTE: This is a candidate for the 9.0 branch. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 4fce0230fc3528be32562410bcddfc887c4d25a0)
2013-01-20mesa: Fix the core GL genned-name handling for glBindBufferBase()/Range().Eric Anholt1-8/+14
This is part of fixing gl-3.1/genned-names. v2: Fix a missing return value. NOTE: This is a candidate for the 9.0 branch. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 947d8ff4a7c4b7ffb4013056b48dbabe6b3931b0)
2013-01-20llvmpipe: Obey back writemask.José Fonseca1-2/+8
Tested with a modified glean tstencil2 test. NOTE: This is a candidate for stable branches. Reviewed-by: Brian Paul <brianp@vmware.com> (cherry picked from commit f69fc3612768d9cfed974b9d6ecf6a70fa0db99c)
2013-01-20glsl_to_tgsi: set correct register type for array and structure elementsBryan Cain1-2/+19
This fixes an issue where glsl_to_tgsi_visior::get_opcode() would emit the wrong opcode because the register type was GLSL_TYPE_ARRAY/STRUCT instead of GLSL_TYPE_FLOAT/INT/UINT/BOOL, so the function would use the float opcodes for operations on integer or boolean values dereferenced from an array or structure. Assertions have been added to get_opcode() to prevent this bug from reappearing in the future. NOTE: This is a candidate for the stable branches. Reviewed-by: Brian Paul <brianp@vmware.com> Tested-by: Andreas Boll <andreas.boll.dev@gmail.com> (cherry picked from commit 170f0459a2367406d4ec838b2eebdc6ff2f84f2c)
2013-01-20nv50/ir: restore use of long immediate encodingsChristoph Bumiller2-0/+9
NOTE: This is a candidate for the 9.0 branch. (cherry picked from commit 9ae7d8bb799a8c5008c7c4824d414ca856e13ba5)
2013-01-20i965/vs: Preserve the type when copy propagating into an instruction.Kenneth Graunke1-0/+1
Consider the following code, which reinterprets a register as a different type: mov(8) g6<1>F g1.4<0,4,1>.xF and(8) g5<1>.xUD g6<4,4,1>.xUD 0x7fffffffUD Copy propagation would notice that we can replace the use of g6 with g1.4 and eliminate the MOV. Unfortunately, it failed to preserve the UD type, incorrectly generating: and(8) g5<1>.xUD g6<4,4,1>.xF 0x7fffffffUD Found while debugging Ian's uncommitted ARB_vertex_program LOG opcode test with my new Mesa IR -> Vec4 IR translator. NOTE: This is a candidate for stable release branches. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Eric Anholt <eric@anholt.net> (cherry picked from commit 03ea156f1b3e57ef223c0340afb49e513fa0b407)
2013-01-20i965/vs: Don't lose the MRF writemask when doing compute-to-MRF.Kenneth Graunke1-0/+1
Consider the following code sequence: mul(8) g4<1>F g1<0,4,1>.wzwwF g3<4,4,1>.wzwwF mov.sat(8) m1<1>.xyF g4<4,4,1>F mul(8) g4<1>F g1<0,4,1>.xxyxF g3<4,4,1>.xxyxF mov.sat(8) m1<1>.zwF g4<4,4,1>F The compute-to-MRF pass will discover the first mov.sat and attempt to replace it by rewriting earlier instructions. Everything works out, so it replaces scan_inst's destination file, reg, and reg_offset, resulting in: mul(8) m1<1>F g1<0,4,1>.wzwwF g3<4,4,1>.wzwwF mul(8) g4<1>F g1<0,4,1>.xxyxF g3<4,4,1>.xxyxF mov.sat(8) m1<1>.zwF g4<4,4,1>F Unfortunately, it loses the .xy writemask on the mov.sat's MRF destination. While this doesn't pose an immediate problem, it then proceeds to transform the second mov.sat, resulting in: mul(8) m1<1>F g1<0,4,1>.wzwwF g3<4,4,1>.wzwwF mul(8) m1<1>F g1<0,4,1>.xxyxF g3<4,4,1>.xxyxF Instead of writing both halves of the vector (like the original code), it overwrites the full vector both times, clobbering the desired .xy values. When encountering a MOV, the compute-to-MRF code scans for instructions which generate channels of the MOV source. It ensures that all necessary channels are available (possibly written by several instructions). In this case, *more* channels are available than necessary, so we want to take the subset that's actually used. Taking the bitwise and of both writemasks should accomplish that. This was discovered by analyzing an ARB_vertex_program test (glean/vertProg1/MUL test (with swizzle and masking)) with my new Mesa IR -> Vec4 IR translator code. However, it should be possible with GLSL programs as well. NOTE: This is a candidate for stable release branches. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Eric Anholt <eric@anholt.net> (cherry picked from commit 10ff6772c8054aea12ac0f08e2e3898fd4a7f76b)
2013-01-20glcpp: Don't use infinite lookhead for #define differentiation.Kenneth Graunke2-12/+20
Previously, we used lookahead patterns to differentiate: #define FOO(x) function macro #define FOO (x) object macro Unfortunately, our rule for function macros: {HASH}define{HSPACE}+/{IDENTIFIER}"(" relies on infinite lookahead, and apparently triggers a Flex bug where the generated code overflows a state buffer (see YY_STATE_BUF_SIZE). There's no need to use infinite lookahead. We can simply change state, match the identifier, and use a single character lookahead for the '('. This apparently makes Flex not generate the giant state array, which avoids the buffer overflow, and should be more efficient anyway. Fixes piglit test 17000-consecutive-chars-identifier.frag. NOTE: This is a candidate for every release branch ever. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Carl Worth <cworth@cworth.org> (cherry picked from commit 9142ade15416415f2d5eb20b093b898c649cd2bb)
2013-01-20st/mesa: free TGSI tokens with ureg_free_tokens()Brian Paul1-1/+1
since they're allocated by ureg_get_tokens(). NOTE: This is a candidate for the 8.0 and 9.0 branches. (cherry picked from commit 11070105f0b5ad20f12bb40a8dd0b357924bcfdd)
2013-01-20st/mesa: replace REALLOC() with realloc()Brian Paul1-8/+2
We should use the later since we're freeing the memory with free(), not the gallium FREE() macro. This fixes a mismatch when using the gallium debug memory functions. NOTE: This is a candidate for the 9.0 branch. (cherry picked from commit bb93439873e0f270383d8a802eec79807d32c10a)