summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* glcpp: Don't use infinite lookhead for #define differentiation.Kenneth Graunke2012-10-252-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 <[email protected]> Reviewed-by: Carl Worth <[email protected]>
* i965/vs: Fix debug dumping of VS push constants.Kenneth Graunke2012-10-251-1/+3
| | | | | | | | | | | | | | | | While copying the values into the batch space, we advance the param pointer. The debug code then tries to iterate over all the uploaded values, starting at param...which is now the end of the uploaded data, rather than the start. This patch saves a pointer to the start of push constant space before it gets altered and switches the debug code to use that. Tested by uncommenting the code and examining the output of glsl-vs-clamp-1.shader_test. Previously all values appeared to be zero. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa/tests: Add ES3.0 dispatch table sanity testMatt Turner2012-10-251-0/+149
| | | | | | | Since ES3.0 is backward compatible with 2.0, we check that all the 2.0 functions and additional 3.0 functions exist. Reviewed-by: Jordan Justen <[email protected]>
* Split dispatch sanity's validate_function test into twoMatt Turner2012-10-251-0/+11
| | | | | | Will be useful for the next patch, adding GLES 3 testing. Reviewed-by: Jordan Justen <[email protected]>
* dispatch_sanity: print names of functions that shouldnt be in dispatch table.Paul Berry2012-10-251-1/+9
| | | | | | | | | | Previously we just printed the dispatch table index and the user had to convert it to a function name. That was a pain because when FEATURE_remap_table is defined, the assignment of functions to dispatch table entries is done at run time. Acked-by: Kenneth Graunke <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* shared-glapi: implement _glapi_get_proc_name().Paul Berry2012-10-253-2/+27
| | | | | | | | | Previously this function was only implemented for non-shared-glapi builds. Since the function is only intended for debugging purposes we use a simple O(n) algorithm. Acked-by: Kenneth Graunke <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* src/glsl/tests/Makefile.am: Specify -I... in AM_CPPFLAGSMatt Turner2012-10-251-4/+1
| | | | | | | | | | | | | When specifying per-target CFLAGS (e.g., ralloc_test_CFLAGS) AM_CFLAGS are not used. AM_CPPFLAGS should be used for includes anyway. Fixes a build problem since 41b14d125: CC ralloc_test-ralloc.o In file included from ../../../src/glsl/ralloc.c:42:0: ../../../src/glsl/ralloc.h:57:27: fatal error: main/compiler.h: No such file or directory Acked-by: Paul Berry <[email protected]>
* egl: Import eglext.h revision 19332Matt Turner2012-10-251-1/+7
| | | | | | The version number (14) wasn't updated. Reviewed-by: Brian Paul <[email protected]>
* ralloc: Annotate printf functions with PRINTFLIKE(...)Matt Turner2012-10-252-11/+6
| | | | | | | | | | | | | | | Catches problems such as (in the gles3 branch) glcpp-parse.y: In function '_glcpp_parser_handle_version_declaration': glcpp-parse.y:1990:39: warning: format '%lli' expects argument of type 'long long int', but argument 4 has type 'int' [-Wformat] As a side-effect, remove ralloc.c's likely/unlikely macros and just use the ones from main/compiler.h. NOTE: This is a candidate for the release branches. Reviewed-by: Ian Romanick <[email protected]>
* build: Ship install-sh in the tarballMatt Turner2012-10-251-0/+1
| | | | | | | | | | Fixes the problem where configure from the tarball would report missing files: $ ./configure configure: error: cannot find install-sh, install.sh, or shtool in bin NOTE: This is a candidate for the 9.0 branch.
* mesa/st: Don't use 4bits for GL_UNSIGNED_BYTE_3_3_2(_REV)José Fonseca2012-10-251-0/+2
| | | | | | | | | | | | 4bits and 3bits quantitization values differ significantly for values other than 0 and 1. Fixes piglit draw-pixels for softpipe/llvmpipe. NOTE: Probably a candidate for stable branches. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* trace: Fix dumping of set_constant_buffer method.José Fonseca2012-10-253-9/+21
|
* docs: add another fixed bug to mesa 8.0.5 release notesAndreas Boll2012-10-241-0/+2
| | | | | Reported-by: Matt Turner <[email protected]> Signed-off-by: Andreas Boll <[email protected]>
* docs: Add 8.0.5 release notesAndreas Boll2012-10-243-0/+271
| | | | Signed-off-by: Andreas Boll <[email protected]>
* glsl_to_tgsi: set correct register type for array and structure elementsBryan Cain2012-10-241-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.
* r600g: force bank_swizzle if already setVincent Lejeune2012-10-242-0/+4
| | | | Reviewed-by: Tom Stellard <thomas.stellard at amd.com>
* r600g: rewrite tgsi-to-llvm load-input to handle fragcoordVincent Lejeune2012-10-242-42/+84
| | | | Reviewed-by: Tom Stellard <thomas.stellard at amd.com>
* nv50/ir/tgsi: fix srcMask for TXP with SHADOW1DChristoph Bumiller2012-10-241-1/+1
|
* mesa: Use MIN instead of CLAMP for unsigned source dataIan Romanick2012-10-241-108/+108
| | | | | | | | | | This silences a zillion GCC warnings like: ../../../src/mesa/main/pack.c: In function '_mesa_pack_rgba_span_from_uints': ../../../src/mesa/main/pack.c:560:13: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits] Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* st/mesa: Fix assertions for copying texture image to finalized miptree.Michel Dänzer2012-10-241-1/+4
| | | | | | | | | | | | | | | | | The layer dimension of array textures is not subject to mipmap minification. OTOH we were missing an assertion for the depth dimension. Fixes assertion failures with piglit {f,v}s-textureSize-sampler1DArrayShadow. For some reason, they only resulted in piglit 'warn' results for me, not failures. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56211 NOTE: This is a candidate for the stable branches. Signed-off-by: Michel Dänzer <[email protected]> Reviewed-by: Brian Paul <[email protected]> Tested-by: Andreas Boll <[email protected]>
* gallium/docs: fix sphinx warningAndreas Boll2012-10-241-1/+1
| | | | | | | src/gallium/docs/source/context.rst:495: WARNING: malformed hyperlink target. Reviewed-by: Brian Paul <[email protected]>
* scons: Do not use -fvisibilty=hidden on Cygwin.Vinson Lee2012-10-231-1/+1
| | | | | | | This is a follow-up to commit db78643182dc39ed592dd8c2e5fc7c8eeb7316a1. Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: fix indentation in get-pick-list.sh scriptAndreas Boll2012-10-231-4/+4
| | | | | | NOTE: This is a candidate for the stable branches. Reviewed-by: Ian Romanick <[email protected]>
* mesa: grep for commits with cherry picked in commit message only onceAndreas Boll2012-10-231-2/+9
| | | | | | | | and save them temporary in already_picked NOTE: This is a candidate for the stable branches. Reviewed-by: Ian Romanick <[email protected]>
* mesa: optimize get-pick-list.sh scriptAndreas Boll2012-10-231-4/+3
| | | | | | | | | cuts down the while loop iterations from 4600 to 380 commits at the moment NOTE: This is a candidate for the stable branches. Reviewed-by: Ian Romanick <[email protected]>
* mesa: simplify get-pick-list.sh scriptAndreas Boll2012-10-231-1/+3
| | | | | | | | and add a description for the script NOTE: This is a candidate for the stable branches. Reviewed-by: Ian Romanick <[email protected]>
* mesa: add get-pick-list.sh script into bin/Ian Romanick2012-10-231-0/+21
| | | | NOTE: This is a candidate for the stable branches.
* _mesa_create_exec_table: GLES3 fixes.Paul Berry2012-10-2310-43/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch sets up the dispatch table for the following GLES3 functions when a GLES3 context is in use: - BeginQuery - BeginTransformFeedback - BindSampler - BindTransformFeedback - BlitFramebuffer - ClearBufferfi - ClearBufferfv - ClearBufferiv - ClearBufferuiv - ClientWaitSync - CopyBufferSubData - DeleteQueries - DeleteSamplers - DeleteSync - DeleteTransformFeedbacks - EndQuery - EndTransformFeedback - FenceSync - FramebufferTextureLayer - GenQueries - GenSamplers - GenTransformFeedbacks - GetInteger64v - GetQueryObjectuiv - GetQueryiv - GetSamplerParameterfv - GetSamplerParameteriv - GetStringi - GetSynciv - GetTransformFeedbackVarying - GetVertexAttribIiv - GetVertexAttribIuiv - IsQuery - IsSampler - IsSync - IsTransformFeedback - PauseTransformFeedback - RenderbufferStorageMultisample - ResumeTransformFeedback - SamplerParameterf - SamplerParameterfv - SamplerParameteri - SamplerParameteriv - TransformFeedbackVaryings - VertexAttribDivisor - VertexAttribIPointer - WaitSync And it avoids setting up the dispatch table for these non-GLES3 functions: - ColorMaski - GetBooleani_v - Enablei - Disablei - IsEnabledi - ClearColorIiEXT - ClearColorIuiEXT - TextureStorage2DEXT - TextureStorage3DEXT - GetActiveUniformName - GetnUniformdv - GetnUniformfv - GetnUniformiv - GetnUniformuiv Reviewed-by: Brian Paul <[email protected]> v2: Make the ctx argument to _mesa_init_transform_feedback_dispatch() a const pointer. Add a comment to remind us to add GetBufferParameteri64v once tests exist for it. Also add VertexAttribDivisor for GLES3, and remove GetActiveUniformName and GetnUniform{dv,fv,iv,uiv} for GLES3. Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* _mesa_create_exec_table(): deprecate ProgramStringARB.Paul Berry2012-10-231-1/+3
| | | | | | | | | This function is only useful for the ARB_{vertex,fragment}_program extensions, which we don't expose in core contexts. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* _mesa_create_exec_table: de-deprecate GetPointerv.Paul Berry2012-10-231-1/+3
| | | | | | | | | | | | | | | | | | | | | | glGetPointerv was de-deprecated in GL 4.3, because GL 4.3 adds functionality from KHR_debug and ARB_debug_output, which require glGetPointerv. This patch modifies _mesa_create_exec_table() to populate glGetPointerv in the dispatch table for core contexts. Technically this is not in compliance with the spec--what we really ought to do for core contexts is expose glGetPointerv only when a GL 4.3 context is in use or one of the two extensions is present. However, it seems silly to go to that extra work, since the only client-visible effect would be for glGetPointerv to raise an INVALID_OPERATION error instead of an INVALID_ENUM error. Besides, the other functions set up by _mesa_create_exec_table() only depend on the API in use, not on the GL version or extensions supported. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* glapi: Alias VertexAttribDivisor and VertexAttribDivisorARB.Paul Berry2012-10-231-1/+2
| | | | | | | | | | | | | There's no reason to have separate slots in the dispatch table for these two functions, since they are synonymous. Note: previous to this patch, we never populated the dispatch table slot for VertexAttribDivisor, which was ok, since it is not required until 3.3. After this patch, both functions will be usable provided that the ARB_instanced_arrays extension is present. Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* glapi: Alias ClampColor and ClampColorARB.Paul Berry2012-10-233-3/+1
| | | | | | | | | There's no reason to have separate slots in the dispatch table for these two functions, since they are synonymous. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* main: Fix warning ('struct gl_context' declared inside parameter list).Paul Berry2012-10-231-0/+1
| | | | | | | | This eliminates a warning in GCC 4.7.1. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa: Return 0 for GL_CURRENT_QUERY with a mismatched query target.Eric Anholt2012-10-221-1/+1
| | | | | | | | With the previous two commits, this fixes piglit GL_ARB_occlusion_query2/api. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa: Refuse to EndQuery with a mismatched query target.Eric Anholt2012-10-221-0/+10
| | | | | | | v2: Add a comment about what we're checking for. Reviewed-by: Brian Paul <[email protected]> (v1) Reviewed-by: Ian Romanick <[email protected]>
* mesa: Throw an error for a new query on an already-active query target.Eric Anholt2012-10-221-0/+13
| | | | | | | | There's a similar test below, but it's not the same: that one checks whether this query object is already active (potentially on another target). Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* i965: Actually add support for GL_ANY_SAMPLES_PASSED from GL_ARB_oq2.Eric Anholt2012-10-221-0/+12
| | | | | | v2: Fix mangled sentence in the comment, and make the loop exit early. Reviewed-by: Ian Romanick <[email protected]> (v1)
* st/mesa: free TGSI tokens with ureg_free_tokens()Brian Paul2012-10-221-1/+1
| | | | | | since they're allocated by ureg_get_tokens(). NOTE: This is a candidate for the 8.0 and 9.0 branches.
* st/mesa: replace REALLOC() with realloc()Brian Paul2012-10-221-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.
* docs: GL_ARB_texture_storage is supported for all gallium driversBrian Paul2012-10-221-1/+1
|
* Re-add HAVE_PTHREADS preprocessor macroMatt Turner2012-10-221-5/+5
| | | | | | Broken in commit 814345f54b. NOTE: This is a candidate for the 9.0 branch.
* gbm: Use the kms dumb ioctls for cursor instead of libkmsKristian Høgsberg2012-10-213-50/+77
| | | | | | We need to create bos suitable for cursor usage that we can map and write data into. The kms dumb ioctls is all we need for this, so drop the dependency on libkms.
* r600g: Remove special handling of PRED_SET* insructions for LLVM 3.2Tom Stellard2012-10-191-0/+2
| | | | | The 3.2 version of the backend now sets all the correct fields for PRED_SET* instructions.
* radeon/llvm: Sort tgsi opcode action initializationTom Stellard2012-10-191-59/+50
| | | | This was done in order to identify and remove duplicate entries.
* radeon/llvm: Fix lowering TGSI_OPCODE_SSGTom Stellard2012-10-191-1/+1
|
* i965: Stop flushing the batch on timestamp queries, too.Eric Anholt2012-10-191-1/+0
| | | | | | | Given the usecase we have of trying to measure timestamps across individual draw calls, flushing will totally mess up what people are trying to measure. Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Don't flush the batch immediately on EndQuery.Eric Anholt2012-10-191-5/+14
| | | | | | | | | | | | | | | | The theory I had when I wrote the code was that you wanted to minimize latency on your queries because the app was going to ask soon. Only, it turns out that everybody batches up their queries and asks for the results later (often after the next SwapBuffers!), so this was a pessimization. Until now, I had no workload where it mattered enough to benchmark. Recently I started playing some Minecraft, which uses tons of queries to decide whether to render chunks of the terrain. For that app, avoiding the flush in the query-generation loop improves performance 22.7% +/- 4.7% (n=3) on an apitrace capture of it (confirmed in game by watching the fps meter found by pressing F3, 15/16 -> 20/21 fps). Reviewed-by: Kenneth Graunke <[email protected]>
* i965/fs: Fix typo in refactor of brw_fs_reg_allocate.cpp.Eric Anholt2012-10-191-1/+1
| | | | | I'm amazed that my usual warnings check didn't catch this, and that this passed piglit.
* i965/vs: include format argument in debug printfTapani Pälli2012-10-191-1/+1
| | | | | | | | otherwise some compilers will throw error "error: format not a string literal and no format arguments" Signed-off-by: Tapani Pälli <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* st/mesa: Fix source miptree level for copying data to finalized miptree.Michel Dänzer2012-10-191-1/+5
| | | | | | | | | | | | Fixes WebGL texture mips conformance test, no piglit regressions. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44912 NOTE: This is a candidate for the stable branches. Signed-off-by: Michel Dänzer <[email protected]> Reviewed-by: Brian Paul <[email protected]> Tested-by: Andreas Boll <[email protected]>