1. ea869fb Improve preprocessor by using GLSL scanner, allowing read-only strings to be compiled, unifying of line # tracking, and correct detection that ES #version appeared after a comment. by John Kessenich · 11 years ago
  2. 9497485 Add geometry shader input array sizing/checking WRT declared input primitive layout. by John Kessenich · 11 years ago
  3. ab41fe5 Add redeclarations of built-in blocks. by John Kessenich · 11 years ago
  4. 94fdd11 Add geometry-shader stream, invocations, max_vertices, lines, triangles, etc. layout qualifiers, and their default/inheritance behaviors, and some other misc. geometry shader features. (Geometry shaders are not yet done though.) by John Kessenich · 11 years ago
  5. 284231c Add built-in constants through version 440. Some still need to be consumed when initializing the symbol table. by John Kessenich · 11 years ago
  6. c78a126 Tie "location = " to the right stages/versions/extensions. Also add "#define extension 1" extension support and instructions. by John Kessenich · 11 years ago
  7. bf68851 For portability, use std::map instead of std::hash_map in recent preprocessor fix. by John Kessenich · 11 years ago
  8. 21a8770 Add texture gather functions (and extension check) for GLSL 400 and GL_ARB_texture_gather. by John Kessenich · 11 years ago
  9. a65dc63 Update Linux binaries by John Kessenich · 11 years ago
  10. 028dbad Update Window's binary. by John Kessenich · 11 years ago
  11. c973c00 Non-functional: Use better token names for the preprocessor. by John Kessenich · 11 years ago
  12. 1f4104f Fix memory corruption problem in the preprocessor, removing custom hash-tables/etc. and replacing with std containers. by John Kessenich · 11 years ago
  13. ab30803 Add layout binding qualifier for blocks and samplers (atomics are not yet in, nor link validation). by John Kessenich · 11 years ago
  14. 8f13e13 Add swizzles to scalars. by John Kessenich · 11 years ago
  15. 8d8f4cc Minor preprocessor fix for error message line/string numbers coming from source line, not macro line. by John Kessenich · 11 years ago
  16. e46b087 Add function "const", where the initializer does not have to be a compile-time constant. by John Kessenich · 11 years ago
  17. 779e6b4 Add C-style curly-brace initializers. by John Kessenich · 11 years ago
  18. e7c59c1 Add all built-in variables for all versions/profiles/stages of GLSL. Also, made more readable; declarations are cut and paste from the specs, with quotes around them. This does not include built-in constants yet (other than MaxClipDistances), just the non-constants. by John Kessenich · 11 years ago
  19. 457145d Have block members use EvqVaryingIn rather than EvqIn, etc., confining the EvqIn-class of qualifier just to parameters and parse time (before it's known if something is a parameter). Also, have member error messages report their actual line, rather than the block's line. by John Kessenich · 11 years ago
  20. fb57e7c Add ES 3.0 fragment output link-time test for outputs having or not having location qualifiers. by John Kessenich · 11 years ago
  21. 27b72e4 Implement ES 2.0 (version 100) limitations for non-inductive loop detection and array indexes needing "constant-index-expressions" (inductive variables and constant expressions). by John Kessenich · 11 years ago
  22. a4ea131 Turn on non-uniform blocks (in/out/buffer), and prevent new stages from working with "no profile" (before 150) shaders. by John Kessenich · 11 years ago
  23. 9d30218 Generalize the symbol hierarchy to transparently handle anonymous-block members better. by John Kessenich · 11 years ago
  24. 4c70685 Memory management hygiene: Use compare() instead of substr(), and put a few more things intrinsically in the memory pool. by John Kessenich · 11 years ago
  25. 3afe67d Non-functional: Remove use of the unused structure 'remapper', and other minor internal improvements. Triggered by some bigger changes in the works. Also, turned on an existing test that was not included in the test list. by John Kessenich · 11 years ago
  26. 7ea2f9c Fix g++ complaint about taking address of temporary. by John Kessenich · 11 years ago
  27. b5af825 Update Linux binaries by John Kessenich · 11 years ago
  28. 941d156 Update Windows binary. by John Kessenich · 11 years ago
  29. 98c2ef2 Non-functional changes: Typo in error message and in comment, remove unneeded arguments, separate constructor-op mapping from handling constructors. by John Kessenich · 11 years ago
  30. 816e9bc Improve robustness of extension checking, and its intersection with ES 100 features. by John Kessenich · 11 years ago
  31. c6b7e63 Make ES 100 gl_FragData be a mediump, and fix some warnings from g++. by John Kessenich · 11 years ago
  32. e50441a Make some portability improvements identified by Christophe: A few size_t, a couple "../Include", and a whole bunch of parenthesizing "(A && B) || (C && D)", because some compilers don't believe humans know && is higher precedence than ||. by John Kessenich · 11 years ago
  33. 61c2d14 Document how to add a new feature enabled by an extension in Versions.cpp. Also reorganized slightly to localize related functions. by John Kessenich · 11 years ago
  34. a5830df Add the following ESSL 2.0 (#version 100) limitations to the configuration file, internal infrastructure, and test cases. Still need to implement the actual detection of non-inductive loops and array accesses. While and do-while loop detection is done. by John Kessenich · 11 years ago
  35. 44e8cae Allow ES version 100 to redeclare built-in functions. by John Kessenich · 11 years ago
  36. 447fc36 Add message indicating level of completeness for not-yet-complete versions. by John Kessenich · 11 years ago
  37. e29e4af Update Window's binary. by John Kessenich · 11 years ago
  38. 04750f7 Update Linux binaries by John Kessenich · 11 years ago
  39. 2ecdd14 Add function recursion testing to the link-time validation. by John Kessenich · 11 years ago
  40. f2ee3dd Add full support for uniforms with initializers, including intra-stage link validation of aggregate constant initializers. by John Kessenich · 11 years ago
  41. b3345c4 Fix g++ complaint with previous check in. by John Kessenich · 11 years ago
  42. 9839e24 Unify the 8 grammar productions for declaring variables. This greatly simplifies making changes for this set of productions. by John Kessenich · 11 years ago
  43. 337dbc7 Add basic intra-stage linking validation for matching types and qualification of uniforms/ins/outs/globals, function body duplication, and mixing ES/non-ES shaders. by John Kessenich · 11 years ago
  44. f5ebfb5 Test for and prevent any dead-code elimination, as all code is needed in the AST for static-use analysis. by John Kessenich · 11 years ago
  45. c981efd Update Linux binaries by John Kessenich · 11 years ago
  46. efd93d4 Update the windows executable. by John Kessenich · 11 years ago
  47. 05a7063 Add optional configuration file for specifying (existing) limits. Details explained by usage statement. More limits to be added in the future. by John Kessenich · 11 years ago
  48. b84b700 Basic infrastructure for redeclaring built-in variables (like gl_FragCoord) so shaders can change their type/layout. by John Kessenich · 11 years ago
  49. 5f753e0 Full thread safety working: by John Kessenich · 11 years ago
  50. 38f3b89 Ensure the shared symbol table levels are read-only to make multi-threading safe. Also removed inadvertent extra copies of the symbol table shared across all stages. by John Kessenich · 11 years ago
  51. 69f4b51 Add link validation infrastructure for multiple compilation units per stage. Includes a new, straightforward, C++ interface to the front end. by John Kessenich · 11 years ago
  52. 2f1eb37 Some rationalization of TIntermediate (to own it's own tree root) and TParseHelper for better encapsulation. Needed by some upcoming intra-stage link validation. by John Kessenich · 11 years ago
  53. 807b8e3 Remove TIntermediate's dependency on infoSink, simplify folding of constant aggregates, and infoSink use in constant folding. by John Kessenich · 11 years ago
  54. fca7534 Restore TDebugOptions, as code consuming this interface is still using it, even though the front-end proper no longer uses it. by John Kessenich · 11 years ago
  55. 94a81fb Option rationalization and minor clean up. by John Kessenich · 11 years ago
  56. 8700e9e Add more constant folding cases for min, max, step, smoothstep, mix, clamp, atan, and pow. by John Kessenich · 11 years ago
  57. b603f91 Put all glslang internals (but not the external interface) into the glslang namespace. by John Kessenich · 11 years ago
  58. 23bdb29 Move the complex pieces of C++ code from glslang.y to ParseHelper.cpp. Updated some tests. by John Kessenich · 11 years ago
  59. d46b31f Give new scopes to non-compound (simple) if-then-else substatements, correcting scoping for declarations they contain. by John Kessenich · 11 years ago
  60. 3af0d53 Remove unnecessary TString constructors. by John Kessenich · 11 years ago
  61. a5ea9c6 Dynamically allocate symbol table containers, so timing of clean up can be more easily controlled WRT memory pool cleanup. by John Kessenich · 11 years ago
  62. 99a0576 Share built-in symbols common to all stages for desktop (but still per profile per version). by John Kessenich · 11 years ago
  63. c027579 Put in infrastructure for tessellation, geometry, and compute stages, and partially flesh out with built-in functions. by John Kessenich · 11 years ago
  64. 317f1af Update Linux binaries for name-mangling bug fix by John Kessenich · 11 years ago
  65. 252b619 Remove a mangled-name cache in the type that was sometimes stale. by John Kessenich · 11 years ago
  66. 1b42f2a Add parse-time constant folding for isinf() and isnan(). by John Kessenich · 11 years ago
  67. af26243 Update Linux binaries by John Kessenich · 11 years ago
  68. acc55c2 Update the Windows binary. by John Kessenich · 11 years ago
  69. 8d2fe45 Linux abs() needs to be fabs(); a few other minor Linux tweaks. by John Kessenich · 11 years ago
  70. 4586dbd Track expected test results and add more README information. by John Kessenich · 11 years ago
  71. 41a5918 Allow unsigned int in the "location = " grammar, and generally improve recognition of numeric literals to be up to spec. by John Kessenich · 11 years ago
  72. 161d482 Add windows executable. by John Kessenich · 11 years ago
  73. b849c1d Add Linux executables by John Kessenich · 11 years ago
  74. 54f6e56 Set up infrastructure for installing an executable. Changes the standalone name to glslangValidator. by John Kessenich · 11 years ago
  75. 53f3cc9 Fix bison file naming issues from upgrading to version 2.7 of bison. by John Kessenich · 11 years ago
  76. ee6a9c8 Make previous check in compile correctly on linux. by John Kessenich · 11 years ago
  77. 2b07c7e Improve multi-threading and move Standalone to a multi-threading model (currently off though). by John Kessenich · 11 years ago
  78. b40a488 Update index. by John Kessenich · 11 years ago
  79. d7c0c3f Push index page now that SVN access is setup. by John Kessenich · 11 years ago
  80. c4cc787 Put on hold pending configuring glslang for public access. by John Kessenich · 11 years ago
  81. e2c091b Link glslang project into site nav. by John Kessenich · 11 years ago
  82. fb4a0b6 Fix warning in release build. Update to-do list. by John Kessenich · 11 years ago
  83. d9d5f93 Tie missing default-precision error checks to EShMsgRelaxedErrors. by John Kessenich · 11 years ago
  84. e0ab8db Final linux tweak. by John Kessenich · 11 years ago
  85. 3a05b78 A few linux improvements/fixes for the previous check in. by John Kessenich · 11 years ago
  86. 7213324 Reframe the preprocessor as a C++ class, with instances, removing all C code, removing all global variables. Upgrade bison version to pass a parse context on through to the preprocessor. All the basic things to make something thread safe. by John Kessenich · 11 years ago
  87. 5f1a0b7 Eliminate flex as the GLSL lexical analyzer, going from two nested lexical analyzers down to one, leaving just the preprocessor's lexical analysis. A new layer replaces it, to translate from the preprocessor's view of tokenization to glslang's view of tokenization. by John Kessenich · 11 years ago
  88. 73ed17a Rationalize naming/access to current thread-local-storage scheme. However, the preprocessor tokenizer is not thread-safe, so this may all change. by John Kessenich · 11 years ago
  89. 1fde51d 1) Don't propagate precision of built-in function arguments to return type when return type is bool (e.g., isnan). by John Kessenich · 11 years ago
  90. 6c0928d Fix bug dropping some qualifiers when merging with block member default qualification. by John Kessenich · 11 years ago
  91. 69c3d8c Use the default of "smooth" for interpolation qualification for vertex outs and fragment ins (rather than all fragment IO). by John Kessenich · 11 years ago
  92. 554c854 Fix preprocessor memory leak. by John Kessenich · 11 years ago
  93. db4cd54 Handle bad input file. by John Kessenich · 11 years ago
  94. e369bfc Semantic checks for .length(), switch/case/default, and multidimensional arrays. by John Kessenich · 11 years ago
  95. ef84d10 Add semantic check for precision qualifier on wrong kind of type. Added a few more tests. by John Kessenich · 11 years ago
  96. d3f8589 Support line-continuation (backslash before newline) for tokens and one-line comments in the preprocessor. by John Kessenich · 11 years ago
  97. e5f80b8 Remove the -a option, it doesn't belong here. by John Kessenich · 11 years ago
  98. 41cf6b5 Add scanner that can find '#version' across an array of non-null terminated, length-based, strings. Handle the ES error where #version is not the first thing found, while still supporting desktop behavior, and more generally support length-based multiple strings for a single shader. by John Kessenich · 11 years ago
  99. ebf0825 Add the 6 hyperbolic trig functions. by John Kessenich · 11 years ago
  100. eebed6f Disallow variable indexing into sampler array for ES and desktop before version 400. by John Kessenich · 11 years ago