summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/errors.c
Commit message (Collapse)AuthorAgeFilesLines
* mesa: allocate gl_debug_state on demandBrian Paul2014-02-081-136/+195
| | | | | | | | | | | | We don't need to allocate all the state related to GL_ARB_debug_output until some aspect of that extension is actually needed. The sizeof(gl_debug_state) is huge (~285KB on 64-bit systems), not even counting the 54(!) hash tables and lists that it contains. This change reduces the size of gl_context alone from 431KB bytes to 145KB bytes on 64-bit systems and from 277KB bytes to 78KB bytes on 32-bit systems. Reviewed-by: Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: trivial clean-ups in errors.cBrian Paul2014-02-081-41/+84
| | | | | | | Whitespace changes, 78-column rewrapping, comment clean-ups, add some braces, etc. Reviewed-by: Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: remove _mesa_ prefix from some static functionsBrian Paul2014-02-081-27/+23
| | | | Reviewed-by: Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Use correct enum conversion function.Vinson Lee2013-09-101-1/+1
| | | | | | | Fixes "Mixing enum types" defect reported by Coverity. Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Remap debug type and severityTimothy Arceri2013-09-041-8/+57
| | | | | | | | | Remap any type or severity exclusive to KHR_debug to something suitable for ARB_debug_output Signed-off-by: Timothy Arceri <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Implement GL_DEBUG_OUTPUTTimothy Arceri2013-09-041-0/+3
| | | | | | Signed-off-by: Timothy Arceri <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Implement glPushDebugGroup and glPopDebugGroupTimothy Arceri2013-09-041-69/+206
| | | | | | | | | | | | V4: fixes _mesa_error() compiler warnings (BrianP). V3: removed C++ style comment V2: fixed spelling typo in comment Signed-off-by: Timothy Arceri <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Share common code between ARB_debug_output and KHR_debug functionsTimothy Arceri2013-09-041-97/+211
| | | | | | Signed-off-by: Timothy Arceri <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Add some constants and state variables for KHR_debug functionsTimothy Arceri2013-09-041-0/+4
| | | | | | Signed-off-by: Timothy Arceri <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Fix assertion error with glDebugMessageControlTimothy Arceri2013-08-231-13/+2
| | | | | | | | | | | enums were being converted twice resulting in incorrect values. The extra conversion has been removed and the redundant assert is removed also. Cc: 9.2 <[email protected]> Signed-off-by: Timothy Arceri <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: update glext.h to version 20130708Brian Paul2013-07-121-1/+1
| | | | | | | | | | | | | This update fixes the problem with duplicated typedefs for GLclampf and GLclampd in the previous version. It also changes some parameter types for glDebugMessageCallbackARB() and glTransformFeedbackVaryingsEXT(). Note we should someday update the glapi-gen code so that it understands void pointer parameters. Currently, the Python code only understands "GLvoid *" but not "void *". Luckily, the compilers don't seem to complain about mixing GLvoid and void.
* mesa: remove const from glDebugMessageCallbackARB() function parameterBrian Paul2013-06-261-2/+2
| | | | | | | The new 20130624 version of glext.h removed the const qualifier on the 'userParam' parameter. Reviewed-by: Jose Fonseca <[email protected]>
* mesa: remove outdated version lines in commentsRico Schüller2013-06-051-1/+0
| | | | Signed-off-by: Brian Paul <[email protected]>
* mesa: Restore 78-column wrapping of license text in C-style comments.Kenneth Graunke2013-04-231-3/+4
| | | | | | | | | | | | | | The previous commit introduced extra words, breaking the formatting. This text transformation was done automatically via the following shell command: $ git grep 'THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY' | sed 's/:.*$//' | xargs -I {} sh -c 'vim -e -s {} < vimscript where 'vimscript' is a file containing: /THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY/;/\*\// !fmt -w 78 -p ' * ' :wq Reviewed-by: Brian Paul <[email protected]>
* mesa: Add "OR COPYRIGHT HOLDERS" to license text disclaiming liability.Kenneth Graunke2013-04-231-1/+1
| | | | | | | | | | | | | | | This brings the license text in line with the MIT License as published on the Open Source Initiative website: http://opensource.org/licenses/mit-license.php Generated automatically be the following shell command: $ git grep 'THE AUTHORS BE LIABLE' | sed 's/:.*$//g' | xargs -I '{}' \ sed -i 's/THE AUTHORS/THE AUTHORS OR COPYRIGHT HOLDERS/' {} This introduces some wrapping issues, to be fixed in the next commit. Reviewed-by: Brian Paul <[email protected]>
* mesa: Change "BRIAN PAUL" to "THE AUTHORS" in license text.Kenneth Graunke2013-04-231-1/+1
| | | | | | | | | | | | | | | | Generated automatically be the following shell command: $ git grep 'BRIAN PAUL BE LIABLE' | sed 's/:.*$//g' | xargs -I '{}' \ sed -i 's/BRIAN PAUL/THE AUTHORS/' {} The intention here is to protect all authors, not just Brian Paul. I believe that was already the sensible interpretation, but spelling it out is probably better. More practically, it also prevents people from accidentally copy & pasting the license into a new file which says Brian is not liable when he isn't even one of the authors. Reviewed-by: Brian Paul <[email protected]>
* mesa: Use PACKAGE_BUGREPORT macro.Matt Turner2013-03-121-1/+1
| | | | Reviewed-by: Eric Anholt <[email protected]>
* mesa: Replace MESA_VERSION with PACKAGE_VERSION.Matt Turner2013-03-121-1/+1
| | | | | | One fewer place to have to update. Reviewed-by: Eric Anholt <[email protected]>
* mesa: Use correct functions for enum conversion.Vinson Lee2013-03-111-2/+2
| | | | | | | | Fixes mixing enum types defects reported by Coverity. Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Remove the special enum for _mesa_error debug output.Eric Anholt2013-03-051-2/+8
| | | | | | | | Now all the per-message enums from mtypes are gone. Now we can extend unique message IDs into all generators of debug output without having to update mtypes.h for each one. Reviewed-by: Jordan Justen <[email protected]>
* mesa: Remove the enum for the oom-within-debug-output case.Eric Anholt2013-03-051-1/+4
| | | | Reviewed-by: Jordan Justen <[email protected]>
* mesa: Report ARB_debug_output for both shader errors and warnings.Eric Anholt2013-03-051-2/+4
| | | | | | | | This ends up reusing the dynamic ID support, so a silly enum gets to go away. We don't assign good IDs to different messages yet, but at least that's tractable now. Reviewed-by: Jordan Justen <[email protected]>
* mesa: Add support for GL_ARB_debug_output with dynamic ID allocation.Eric Anholt2013-03-051-3/+51
| | | | | | | We can emit messages now without always having to use the same ID for each, or having a giant table of all possible errors in mtypes.h. Reviewed-by: Jordan Justen <[email protected]>
* mesa: Merge handling of application-provided and built-in error sources.Eric Anholt2013-03-051-213/+115
| | | | | | | | | I want to have dynamic IDs so that we don't need to add to mtypes.h for every error we might want to add. To do so, I need to get rid of the static arrays and actually support all the crazy filtering of dynamic IDs that we already support for application-provided error sources. Reviewed-by: Jordan Justen <[email protected]>
* mesa: Fix _mesa_problem() on context destroy after application debug outputEric Anholt2013-03-051-0/+6
| | | | | | | | | | This was apparently not noticed because we don't have any testing of application-generated debug output. However, as I'm changing the GL-generated debug output to use the same path as application/middleware-generated debug output, this obviously became an issue. Reviewed-by: Jordan Justen <[email protected]>
* mesa: Move debug type/severity enums to mesa core.Eric Anholt2013-03-051-65/+62
| | | | | | | | | | | These will get reused by new ARB_debug_output messages in drivers/core, instead of having the caller pass GL enums and have us immediately switch-statement those into enums. Add source enums will be handled in the next commit, because the way different sources are handled at the moment is pretty strange. Reviewed-by: Jordan Justen <[email protected]>
* mesa: Replace open-coded _mesa_lookup_enum_by_nr().Eric Anholt2013-03-051-35/+3
| | | | | | | The new one doesn't have the same behavior for GL_NO_ERROR, but we don't produce errors with GL_NO_ERROR as the error type. Reviewed-by: Jordan Justen <[email protected]>
* mesa: Remove extra #define MAXSTRING duplicating MAX_DEBUG_MESSAGE_LENGTH.Eric Anholt2013-03-051-15/+14
| | | | Reviewed-by: Jordan Justen <[email protected]>
* mesa: Initially populate the display list with the exec list.Eric Anholt2013-01-211-9/+0
| | | | | | | | This cuts out a ton of code to make functions not set to a save_ variant match. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* dispatch: Make all API functions non-static.Paul Berry2012-11-061-4/+4
| | | | | | | | | | | | | | | | | Some of the functions that we store in the dispatch table are declared as non-static in their .c files and are inserted into the dispatch table directly by _mesa_create_exec_table(). Other functions are declared as static, and are inserted into the dispatch table by a dedicated function that lives in the same .c file (e.g. _mesa_loopback_init_api_table() in api_loopback.c). This patch makes all of these functions non-static, and creates appropriate prototypes for them, so that in future patches we can populate the entire dispatch table using a single code-generated function. Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* mesa: s/FREE/free/Brian Paul2012-09-011-2/+2
| | | | | | | v2: replace instances in dri/common/ dirs Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: s/MALLOC/malloc/Brian Paul2012-09-011-1/+1
| | | | | | | v2: replace instances in dri/common/ dirs Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: more const qualifiers to match the latest glext.hBrian Paul2012-06-271-2/+2
| | | | | | | For some reason regular gcc on Linux didn't catch these but the mingw compiler did (generated errors, not warnings). v2: include the changes in src/mapi/ too
* mesa: new MESA_LOG_FILE env var to log errors, warnings, etc., to a fileBrian Paul2012-06-251-2/+12
| | | | Reviewed-by: Jose Fonseca <[email protected]>
* mesa: define DEBUG_SILENT flag, use in output_if_debug()Brian Paul2012-05-111-11/+10
|
* mesa: add _mesa_shader_debug()Dylan Noblesmith2012-05-021-0/+43
| | | | | | | | | This should be the one entrypoint libglsl needs for GL_ARB_debug_output. v2: added comments. Reviewed-by: Brian Paul <[email protected]>
* mesa: fix _mesa_DebugMessageCallbackARB() to silence warningsBrian Paul2012-03-121-2/+2
| | | | Reviewed-by: José Fonseca <[email protected]>
* mesa: Prevent collision of ERROR define on Windows.José Fonseca2012-03-111-0/+3
| | | | | | | | This issue might recur on other OSes. If so then it might be better to remove the C-preprocessor magic, and use fully qualified defines instead. Signed-off-by: Dave Airlie <[email protected]>
* mesa: print GL errors via debug_outputMarek Olšák2012-03-101-31/+66
|
* mesa: implement the last of GL_ARB_debug_outputnobled2012-03-101-28/+240
| | | | | | Store client-defined message IDs in a hash table, and sort them by severity into three linked lists so they can be selected by severity level later.
* mesa: add control for categories of application-provided messagesnobled2012-03-101-5/+125
| | | | | | | | | This state is needed for deciding whether or not to log application messages with IDs that haven't been specifically passed to glDebugMessageControlARB yet. State for each individual ID number ever passed to glDebugMessageControlARB (per-context) still needs to be added.
* mesa: add glDebugMessageControlARBnobled2012-03-101-0/+134
| | | | | Controlling the output of client-provided messages isn't done yet.
* mesa: add message-toggle booleans for GL_ARB_debug_outputnobled2012-03-101-1/+1
|
* mesa: add some GL_ARB_debug_output functionsnobled2012-03-101-0/+274
|
* mesa: add infrastructure for GL_ARB_debug_outputnobled2012-03-101-1/+12
| | | | Marek v2: don't add the extension to extensions.c yet
* mesa: split error handling into its own filenobled2012-03-101-0/+276
Also add _mesa_vsnprintf.