src/compiler


Log

Author Commit Date CI Message
Jamie Madill 79bb0d9e 2013-12-09T16:20:28 Fix initializer type bug when using list declarations. We were using the first type as the type for each declaration, which could cause erros for arrays, eg "float one[4], two;" BUG=angle:431 TEST=WebGL CTS 1.0.2 Change-Id: I104d6701cc019ae3b3831a2d568ffe2b656b45a2 Reviewed-on: https://chromium-review.googlesource.com/179351 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Jamie Madill a738f085 2013-11-01T17:45:04 Fix build on QNX. InfoSink.h needs stdlib.h for abs(int) and free() in the global namespace. ExpressionParser needs malloc.h, because bison needs malloc and free in the global namespace, but "#include <cassert>" will put it only in the std:: namespace on QNX. BUG=500 R=geofflang@chromium.org, jmadill@chromium.org, shannonwoods@chromium.org, zmo@chromium.org Review URL: https://codereview.appspot.com/19330044 Change-Id: Ifa30a8ba5eced1156123416d4a24b490620721af Reviewed-on: https://chromium-review.googlesource.com/178993 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Jamie Madill d7f2135f 2013-10-30T17:53:15 Fix build on QNX. InfoSink.h needs stdlib.h for abs(int) and free() in the global namespace. ExpressionParser needs malloc.h, because bison needs malloc and free in the global namespace, but "#include <cassert>" will put it only in the std:: namespace on QNX. BUG=500 R=geofflang@chromium.org, shannonwoods@chromium.org Review URL: https://codereview.appspot.com/19330044 Conflicts: src/compiler/translator/InfoSink.h Change-Id: Ie480d5c293d099f21dafc8c1e7997c0b4cda7207 Reviewed-on: https://chromium-review.googlesource.com/178998 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Zhenyao Mo 7cab38b5 2013-10-15T12:59:30 Add an option to unfold short circuiting in AST. We replace "a || b" with "a ? true : b", "a && b" with "a ? b : false". This is to work around short circuiting bug in Mac drivers. ANGLEBUG=482 TEST=webgl conformance tests R=alokp@chromium.org, kbr@chromium.org Review URL: https://codereview.appspot.com/14529048 Conflicts: src/build_angle.gypi src/compiler/translator/Compiler.cpp Change-Id: Ic2384a97d58f54294efcb3a012deb2007a9fc658 Reviewed-on: https://chromium-review.googlesource.com/178996 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Zhenyao Mo 6cb95f3a 2013-10-03T17:01:52 Fix a traverse bug. In loop node, the init part was skipped in traversing. BUG= TEST= R=kbr@chromium.org Review URL: https://codereview.appspot.com/14366043 Change-Id: If3200f1dbcafda1147820b2d47b758b897de0fc6 Reviewed-on: https://chromium-review.googlesource.com/178992 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Zhenyao Mo e88dcaf3 2013-10-03T16:55:19 Style violation cleanup for IntermTraverse.cpp Per suggested by kbr in https://codereview.appspot.com/14366043/, we clean up the stype violation in a separate CL. BUG= TEST=no behavioral change TBR=kbr@chromium.org Review URL: https://codereview.appspot.com/14371043 Change-Id: I27e15f632eff3a9d0d22ae955b5a952793128661 Reviewed-on: https://chromium-review.googlesource.com/178991 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Jamie Madill 74d03eaf 2013-12-03T13:47:39 Fix unused variable warning in compiler/debug.cpp. BUG=angle:534 Change-Id: I893e552628c7deba4bc67baae6e5e28b6161c5d4 Reviewed-on: https://chromium-review.googlesource.com/178438 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill f4b79ba8 2013-11-26T10:38:18 Fix issues with the conditional discard workarounds to do with assignments. The old modifiesState method really checked if an operator was an assignment, so restored that behaviour and use the new side effects detection only for the new code. ANGLEBUG=486 BUG= R=nicolascapens@chromium.org, zmo@chromium.org Review URL: https://codereview.appspot.com/22130043 Change-Id: I84d4e95a0457e63f237a814d80e4f72dd861496b
Jamie Madill 3c9eeb97 2013-11-04T11:09:26 Disable optimizations for shaders with conditional discard in D3D9, and only use expanded short-circuiting conditionals for expressions with potential side-effects. Conservatively assume aggreate and selection operators have side effects for now. BUG= ANGLEBUG=486 R=geofflang@chromium.org, kbr@chromium.org, nicolas@transgaming.com, shannonwoods@chromium.org Review URL: https://codereview.appspot.com/14441075 Conflicts: src/common/version.h src/compiler/translator.vcxproj src/compiler/translator.vcxproj.filters src/compiler/translator/OutputHLSL.cpp src/libGLESv2/ProgramBinary.cpp src/libGLESv2/Shader.cpp src/libGLESv2/Shader.h Change-Id: Iaf9f10b5de7b33c927ef032f3c4fe9d5095f64dd
Nicolas Capens a621c2e4 2013-11-20T13:40:23 Use 64-bit safe constant union indexes. BUG=angle:450 Change-Id: I4a16733e3e6aebf2939f8255ae2e4e8c5febc606
Shannon Woods 9b27ebb0 2013-11-19T21:44:28 Merge "Manual merge of Ehsan Akhgari's change to add include guards to ForLoopUnroll.h" into es3proto
Shannon Woods 7f2d7945 2013-11-19T15:07:58 Manual merge of Ehsan Akhgari's patch to rename Diagnostics enums to avoid collision with Windows.h (See https://chromium-review.googlesource.com/#/c/177181/3) Change-Id: I2978d06ec96789b3ee1696b65a84c2a9f31f7ba4
Shannon Woods f67e8025 2013-11-19T12:22:54 Manual merge of Ehsan Akhgari's change to add include guards to ForLoopUnroll.h (See https://chromium-review.googlesource.com/#/c/177180) Change-Id: I353b6ff868dbfd5764d4fa3fb0af88891cf5b436
Jamie Madill 03847b6d 2013-11-13T19:42:39 Fix the shader calculation for the level of detail for certain samplers. We were using an extra sqrt function for some cases. TRAC #23591 Change-Id: I7d5d2b4b78586085396a281daf7975be316a1386 Signed-off-by: Shannon Woods Signed-off-by: Geoff Lang
Jamie Madill 829f59e9 2013-11-13T19:40:54 Remove usages of the auto keyword from the translator. TRAC #22875 Change-Id: I3ecf30843a82962fbfa5c38f026425fa8acf4657 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
Jamie Madill 16a1c072 2013-10-22T15:42:15 Expose the textureLod functiosn to GLES 3.00 shaders. We should have support for these methods, but they were not exposed to the shaders. TRAC #23991 Signed-off-by: Shannon Woods Signed-off-by: Geoff Lang
Geoff Lang 036aa49b 2013-10-09T16:23:30 Disable warnings about size_t conversion and fix ambiguous template parameters in 64 bit builds. TRAC #23409 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods
Jamie Madill 6b9cb259 2013-10-17T10:45:47 Rename ParseHelper.cpp/h to ParseContext.cpp/h. TRAC #24002 Signed-off-by: Shannon Woods Signed-off-by: Geoff Lang
Jamie Madill 455a6f5c 2013-10-17T10:45:46 Expose gl_MaxDrawBuffers to ESSL 3.00 shaders. Previously was only exposed in ESSL 1.00. TRAC #23990 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
Geoff Lang 2b6008c9 2013-10-08T10:44:05 Merge 366229430ea056cf7f33917a4fa37b721512a42c from master. Create a static translator project and allow the previous translator project to be used in component builds.
Geoff Lang 7c697201 2013-10-07T17:18:14 Deleted manually maintained visual studio projects and replaced them with gyp generated ones.
Geoff Lang 17732823 2013-08-29T13:46:49 Moved the compiler source files into directories based on their project and added a compiler.gypi to generate the compiler projects.
Nicolas Capens ef2c2b83 2013-09-26T10:06:07 Eliminate bitfield enum members to avoid GCC compile error. BUG=448 R=shannonwoods@chromium.org Review URL: https://codereview.appspot.com/14302044
Zhenyao Mo cc4ec64c 2013-09-23T14:57:10 Use the same mechanism to process int/float literals This also fixes the float overflow errno leaking bug. BUG= R=alokp@chromium.org Review URL: https://codereview.appspot.com/13368050
Zhenyao Mo ac44cd2b 2013-09-23T14:57:09 Add an option in ANGLE shader translator to initialize gl_Position to vec4(0.0, 0.0, 0.0, 1.0). This is to work around driver bugs where shader compile or program link would fail incorrectly if gl_Position is not set in vertex shader. At the moment at least Linux NVIDIA driver has this bug. ANGLEBUG=472 R=alokp@chromium.org, kbr@chromium.org Review URL: https://codereview.appspot.com/13509043
Zhenyao Mo a15f3e84 2013-09-23T14:57:08 Expose the packing function so we can check varyings packing per program ANGLEBUG=471 R=kbr@chromium.org Review URL: https://codereview.appspot.com/13322043
Zhenyao Mo f1d723c6 2013-09-23T14:57:07 Clamp numeric overflow rather than failing with an error BUG=249086 ANGLEBUG=468 TEST= R=alokp@chromium.org, kbr@chromium.org Review URL: https://codereview.appspot.com/13195043
Zhenyao Mo d2d340b0 2013-09-23T14:57:05 Add static_use to shader variable info query. BUG=249018 ANGLEBUG=465 R=kbr@chromium.org Review URL: https://codereview.appspot.com/13158043
Zhenyao Mo fa3c346f 2013-09-23T14:57:04 Build fix: not all types support precisions. Currently Angle translator made the wrong assumption that all variables have a precision, and ASSERT that. BUG=276031 TBR=alokp@chromium.org Review URL: https://codereview.appspot.com/13113044
Zhenyao Mo a5a1dfc6 2013-09-23T14:57:03 Support precision for sampler types. BUG= R=alokp@chromium.org Review URL: https://codereview.appspot.com/12833045
Alok Priyadarshi bc3f1ac6 2013-09-23T14:57:02 Minor refactoring of TSymbolTable. Used pointers for precision-stack entries as well to avoid unnecessarily re-allocating PrecisionStackLevel whenever the vector needs to resize. Added a scoped class to properly restore symbol-table level after each compile. R=kbr@chromium.org Review URL: https://codereview.appspot.com/12583047
Zhenyao Mo 74da9f2f 2013-09-23T14:57:01 Expose varying variables and also precision for all variables. ANGLEBUG=457 R=alokp@chromium.org, kbr@chromium.org Review URL: https://codereview.appspot.com/12487043
Alok Priyadarshi 0b67bfbf 2013-09-23T14:56:59 Print token string into the syntax error message. Bison calls yyerror("syntax error") when it cannot match any grammar rule. We used to append current token string to the error message, which got broken in r2202. This patch restores the original behavior. BUG=442 R=kbr@chromium.org Review URL: https://codereview.appspot.com/12876043
Alok Priyadarshi 8156b6be 2013-09-23T14:56:58 Fixed memory leak associated with TLS. We used to allocate thread-local memory on each compile. If the compile did not happen on the same thread as ShInitialize, we leaked the thread-local memory. It turns out that there is no need to allocate any thread-local memory. This patch cleans up all the unnecessary junk around TLS. BUG=crbug.com/181691 R=kbr@chromium.org Review URL: https://codereview.appspot.com/11679046 Conflicts: src/compiler/ConstantUnion.h src/compiler/ShaderLang.cpp src/compiler/Types.h src/compiler/ValidateLimitations.cpp
Jamie Madill 36be856c 2013-09-23T14:56:57 Generate a new grammar with the Bison 2.7.1, the latest cygwin version. TRAC #23854 Signed-off-by: Shannon Woods Signed-off-by: Nicolas Capens
Jamie Madill ba615196 2013-09-24T14:07:39 Normalize line endings of tracked files in the repository. TRAC #23896 Signed-off-by: Shannon Woods
Jamie Madill 02f20dd8 2013-09-12T12:07:42 Fix compile error regressions in OutputGLSL and OutputESSL. These were broken back with the symbol table changes. TRAC #23857 Signed-off-by: Nicolas Capens Signed-off-by: Shannon Woods
Jamie Madill 384b6041 2013-09-13T10:06:24 Add missing varying in and out qualifiers to the interpolation qualifier switch statement. This was causing a benign assert in Debug mode with GLSL ES 1.00 shaders. TRAC #23746 Signed-off-by: Shannon Woods
Shannon Woods 3841b8e0 2013-09-10T18:23:12 Revert "Eliminate bitfield enum members." This reverts commit 56702e6d60883f2d1e33641b907680a852cdb15a.
Alok Priyadarshi b11713fb 2013-08-01T16:02:39 Made multiple calls to ShInitialize not assert. BUG=456 R=apatrick@chromium.org, kbr@chromium.org Review URL: https://codereview.appspot.com/11916046 Conflicts: src/common/version.h src/compiler/ShaderLang.cpp
Jamie Madill 5609378d 2013-08-30T13:21:11 Add full support for uniform structs. TRAC #23750 Signed-off-by: Geoff Lang Signed-off-by: Nicolas Capens
Jamie Madill 28167c62 2013-08-30T13:21:10 Add support for struct varyings, and more robust varying link validation. TRAC #23749 Signed-off-by: Geoff Lang Signed-off-by: Nicolas Capens
Jamie Madill 94599669 2013-08-30T13:21:10 Ensure struct varyings maintain the proper interpolation qualifier for the child fields. TRAC #23749 Signed-off-by: Geoff Lang Signed-off-by: Nicolas Capens
Jamie Madill 86a97a1a 2013-08-30T13:21:09 Use the proper register count for structs in HLSL uniforms and varyings. We must respect HLSL packing rules when uploading structs to D3D. TRAC #23748 Signed-off-by: Geoff Lang Signed-off-by: Nicolas Capens
Jamie Madill 2b538b85 2013-08-30T13:21:09 Rename some constants in BlockLayoutEncoder for clarity. TRAC #23748 Signed-off-by: Geoff Lang Signed-off-by: Nicolas Capens
Jamie Madill c2141fb3 2013-08-30T13:21:08 Consolidate the register counting functions to a single location in the HLSL layout encoder source. This new method explicitly depends on HLSL packing rules, instead of a GL idiom. TRAC #23748 Signed-off-by: Geoff Lang Signed-off-by: Nicolas Capens
Jamie Madill 77456f28 2013-08-30T13:21:07 Allow block encoders to work with a NULL pointer for the output list structure. TRAC #23748 Signed-off-by: Nicolas Capens Signed-off-by: Geoff Lang
Jamie Madill a6da33a1 2013-08-30T13:21:07 Remove the gl::Varying class, and replace all usages with sh::Varying. TRAC #23746 Signed-off-by: Nicolas Capens Signed-off-by: Shannon Woods
Jamie Madill 139b9091 2013-08-30T13:21:06 Simplify the gl::Varying struct to be more like sh::Varying. The subsequent patches will remove gl::Varying entirely. TRAC #23746 Signed-off-by: Nicolas Capens Signed-off-by: Shannon Woods
Jamie Madill 1cb333eb 2013-08-30T13:21:05 Rename compiler/Uniform.cpp+h to ShaderVariable.cpp+h. TRAC #23754 Signed-off-by: Nicolas Capens Signed-off-by: Shannon Woods
Jamie Madill 47fdd13e 2013-08-30T13:21:04 Pass varyings to the GLES API from the translator using a direct pointer. Instead of parsing them indirectly from HLSL, the pointer will allow us to more flexibly support new types, especially compound types such as structures. TRAC #23754 Signed-off-by: Nicolas Capens Signed-off-by: Shannon Woods
Jamie Madill 9d2ffb1d 2013-08-30T13:21:04 Refactor sh::Uniform and sh::ShaderVariable into a shader variable base type with different child types. This change gives us better memory usage (many fields are unnecessary in different types) with better static typing and clear type abstraction for specific methods that might take Attributes or Varyings, etc. TRAC #23754 Signed-off-by: Nicolas Capens Signed-off-by: Shannon Woods
Jamie Madill 912cbfe8 2013-08-30T13:21:03 Allow the block encoder classes to encode types directly passed by value, instead of as a compound type. TRAC #23754 Signed-off-by: Nicolas Capens Signed-off-by: Shannon Woods
Jamie Madill 9060a4e0 2013-08-12T16:22:57 Fix some missing UBO qualifier link validation errors. TRAC #23747 Signed-off-by: Nicolas Capens Signed-off-by: Shannon Woods
Jamie Madill 19571818 2013-08-12T15:26:34 Add more robust support for interpolation and storage qualifiers with varyings for GLSL ES 3.00. This fixes some conformance failures in the dEQP varying link tests, particularly with ints and the flat keyword. TRAC #23745 Signed-off-by: Nicolas Capens Signed-off-by: Shannon Woods
Jamie Madill f2e0f9bb 2013-08-26T16:39:42 Moved the code to combine interpolation and stoarge qualifiers to the parse helper. TRAC #23745 Signed-off-by: Nicolas Capens Signed-off-by: Shannon Woods
Nicolas Capens 56702e6d 2013-08-12T11:10:06 Eliminate bitfield enum members. TRAC #23653 Signed-off-by: Shannon Woods Signed-off-by: Geoff Lang Author: Nicolas Capens
Nicolas Capens 9edebd68 2013-08-06T10:59:10 Implement mipmapping for integer samplers. TRAC #23655 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods Author: Nicolas Capens
Shannon Woods a49a9bf9 2013-08-02T17:23:14 Removes auto from compiler. TRAC #23604 Author: Shannon Woods Signed-off-by: Geoff Lang Signed-off-by: Nicolas Capens
Jamie Madill 5ccc6248 2013-07-26T13:14:54 Add a missing case to build manged names of uint types. TRAC #23590 Signed-off-by: Shannon Woods Authored-by: Jamie Madill
Jamie Madill 0b20c944 2013-07-19T16:36:56 Replace the logic for doing vector and matrix equivalence tests in the shader with a much simpler formula. We can use the HLSL fragment "all(a == b)" for all matrix and vector types. TRAC #23535 Signed-off-by: Nicolas Capens Signed-off-by: Shannon Woods Authored-by: Jamie Madill
Nicolas Capens cb127d3d 2013-07-15T17:26:18 Create the HLSL shadow texture function. TRAC #23394 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens 354ed2d1 2013-07-11T11:26:26 Compact sampler type translation. TRAC #23394 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens 8f80e024 2013-07-11T11:20:50 Remove intrinsic parameter names. TRAC #23394 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens 77c9d1a4 2013-07-11T11:10:34 Add shadow texture intrinsics to the symbol table. TRAC #23394 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens 2a1d8a38 2013-07-18T11:49:40 Add shadow samplers to the compiler front-end. TRAC #23394 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens aaaec130 2013-07-18T11:23:57 Eliminate isVariableBuiltIn. TRAC #21840 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens d4a9b8dd 2013-07-18T11:01:22 Detect redefinition of functions and variables. TRAC #21840 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Jamie Madill 1b45214a 2013-07-12T14:51:11 Fix the reported shader gl_MaxDrawBuffers to be compliant with the new EXT_draw_buffers spec. From the extension spec: "8) What value should gl_MaxDrawBuffers in the shading language report?" "RESOLVE: It should match MAX_DRAW_BUFFERS_EXT from the API. None of the API or GLSL specifications explicitly state the linkage between API and SL constants, but it seems logical that one would expect them to match, regardless of whether or not an extension directive is used in the shading language." TRAC #23509 Signed-off-by: Shannon Woods Signed-off-by: Nicolas Capens Authored-by: Jamie Madill
Jamie Madill 5d287f50 2013-07-12T15:38:19 Only allow zero indexes for gl_FragData when the draw buffers extension is disabled. TRAC #23509 Signed-off-by: Shannon Woods Signed-off-by: Nicolas Capens Authored-by: Jamie Madill
Nicolas Capens 75fb4752 2013-07-10T15:14:47 Implement textureSize. TRAC #23485 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens c98406ab 2013-07-10T14:52:44 Use the simpler form of GetDimensions. TRAC #23485 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens 93e50deb 2013-07-09T13:46:28 Implement array sampler support. TRAC #23472 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens 67a819f3 2013-07-09T12:08:58 Add intrinsics that take a bias parameter. TRAC #23472 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens 6d232bb6 2013-07-08T15:56:38 Generate HLSL code for integer sampling. TRAC #23472 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens e6050884 2013-07-08T10:43:10 Handle new sampler types. TRAC #23472 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods Author: Nicolas Capens
Jamie Madill 98493ddc 2013-07-08T14:39:03 Simplified TType class by carving out TStructure and TField. R=kbr@chromium.org Review URL: https://codereview.appspot.com/9866043 git-svn-id: https://angleproject.googlecode.com/svn/trunk@2423 736b8ea6-26fd-11df-bfd4-992fa37f6226 TRAC #23415 Authored-by: alokp@chromium.org Signed-off-by: Shannon Woods Signed-off-by Nicolas Capens Merged-by: Jamie Madill
Jamie Madill 2aeb26a4 2013-07-08T14:02:55 Added support for EXT_frag_depth This change also required that support be added for associating built-in variables with an extension, similar to how functions could be associated with extensions previously. R=alokp@chromium.org Review URL: https://codereview.appspot.com/9827044 git-svn-id: https://angleproject.googlecode.com/svn/trunk@2248 736b8ea6-26fd-11df-bfd4-992fa37f6226 TRAC #23333 Authored-by: bajones@chromium.org Signed-off-by: Shannon Woods Signed-off-by Nicolas Capens Merged-by: Jamie Madill
Jamie Madill 18464b51 2013-07-08T14:01:55 Removed checks for zero-length arrays because you can never define such arrays. Also removed support for max-array-size. You can only define a fixed-size array. TEST=WebGL conformance tests Review URL: https://codereview.appspot.com/9697044 git-svn-id: https://angleproject.googlecode.com/svn/trunk@2247 736b8ea6-26fd-11df-bfd4-992fa37f6226 TRAC #23333 Authored-by: alokp@chromium.org Signed-off-by: Shannon Woods Signed-off-by Nicolas Capens Merged-by: Jamie Madill
Jamie Madill 28b97423 2013-07-08T14:01:38 Removed code for unsupported pack-unpack language. Review URL: https://codereview.appspot.com/9685045 git-svn-id: https://angleproject.googlecode.com/svn/trunk@2246 736b8ea6-26fd-11df-bfd4-992fa37f6226 TRAC #23333 Authored-by: alokp@chromium.org Signed-off-by: Shannon Woods Signed-off-by Nicolas Capens Merged-by: Jamie Madill
Jamie Madill eb1a010f 2013-07-08T13:31:38 Add expression complexity and call stack depth limits. git-svn-id: https://angleproject.googlecode.com/svn/trunk@2242 736b8ea6-26fd-11df-bfd4-992fa37f6226 TRAC #23333 Authored-by: gman@chromium.org Signed-off-by: Shannon Woods Signed-off-by Nicolas Capens Merged-by: Jamie Madill Conflicts: src/common/version.h
Jamie Madill 94bf7f22 2013-07-08T13:31:15 Used size_t for object size instead of signed int. BUG=crbug 179653 R=aedla@chromium.org, kbr@chromium.org Review URL: https://codereview.appspot.com/8834048 git-svn-id: https://angleproject.googlecode.com/svn/trunk@2211 736b8ea6-26fd-11df-bfd4-992fa37f6226 TRAC #23333 Authored-by: alokp@chromium.org Signed-off-by: Shannon Woods Signed-off-by Nicolas Capens Merged-by: Jamie Madill
Jamie Madill 7164cf47 2013-07-08T13:30:59 Clamped negative index access. Fixed error that allowed negative index for accessing vector, matrix, and array. Now we report compile error and clamp the index to 0. Re-arranged code around it to handle negative index at the one location. BUG=crbug.com/239411 TEST=bug test case R=aedla@chromium.org, kbr@chromium.org Review URL: https://codereview.appspot.com/9193045 git-svn-id: https://angleproject.googlecode.com/svn/trunk@2207 736b8ea6-26fd-11df-bfd4-992fa37f6226 TRAC #23333 Authored-by: alokp@chromium.org Signed-off-by: Shannon Woods Signed-off-by Nicolas Capens Merged-by: Jamie Madill
Jamie Madill 075edd84 2013-07-08T13:30:19 Refactor location tracking. R=kbr@chromium.org Review URL: https://codereview.appspot.com/9078046 git-svn-id: https://angleproject.googlecode.com/svn/trunk@2202 736b8ea6-26fd-11df-bfd4-992fa37f6226 TRAC #23333 Authored-by: alokp@chromium.org Signed-off-by: Shannon Woods Signed-off-by Nicolas Capens Merged-by: Jamie Madill
Jamie Madill 7a217def 2013-07-08T15:10:00 Remove dead code left over from the old preprocessor. Review URL: https://codereview.appspot.com/9309044 git-svn-id: https://angleproject.googlecode.com/svn/trunk@2200 736b8ea6-26fd-11df-bfd4-992fa37f6226 TRAC #23333 Authored-by: alokp@chromium.org Signed-off-by: Shannon Woods Signed-off-by Nicolas Capens Merged-by: Jamie Madill
Jamie Madill 703cdd60 2013-07-08T15:07:30 Delete dead code for cloning various types. R=kbr@chromium.org Review URL: https://codereview.appspot.com/9242043 git-svn-id: https://angleproject.googlecode.com/svn/trunk@2197 736b8ea6-26fd-11df-bfd4-992fa37f6226 TRAC #23333 Authored-by: alokp@chromium.org Signed-off-by: Shannon Woods Signed-off-by Nicolas Capens Merged-by: Jamie Madill
Jamie Madill 94c3f42d 2013-07-03T15:16:13 Fix a missing case in OutputHLSL::textureName for 3D texture sampler translation. TRAC #23377 Signed-off-by: Shannon Woods Authored-by: Jamie Madill
Jamie Madill a16f1679 2013-07-03T15:15:17 Fix an incorrect instance of getCols which should be getNominalSize. TRAC #23263 Signed-off-by: Shannon Woods Authored-by: Jamie Madill
Jamie Madill 570e04d8 2013-06-21T09:15:33 Add support for passing nested structs in standard layout by value. We add support for this by using global scratch values as storage for the structs in uniform blocks. Any structs in std140 layouts that are referenced by value are initialized in the shader scope, without any packing, so the type of the structs are equivalent with what a GLSL program would expect. TRAC #23327 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods Authored-by: Jamie Madill
Jamie Madill e4075c9c 2013-06-21T09:15:32 Add padding to nested structs packed with standard layout, to address HLSL's more liberal packing rules. TRAC #23327 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods Authored-by: Jamie Madill
Jamie Madill c835df68 2013-06-21T09:15:32 Add support for structs in uniform blocks with standard layout. TRAC #23327 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods Authored-by: Jamie Madill
Nicolas Capens fb50dff0 2013-06-24T16:16:23 Implemented 2D array sampler HLSL translation. TRAC #23377 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens 8772b588 2013-06-24T16:14:19 Support sampler2DArray throughout the compiler. TRAC #23377 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens fc2e6b90 2013-06-24T16:13:26 Add 2D array samplers to the lexer/parser. TRAC #23377 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens eceb50d3 2013-06-19T13:37:17 Add array texture intrinsics to the symbol table. TRAC #23377 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens f4cb0e12 2013-06-24T16:11:36 Fix unconditionally supporting derivative functions in ES3. TRAC #23377 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens e0ba27a2 2013-06-24T16:10:52 Construct texture functions from stored characteristics. TRAC #23377 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens 9fe6f984 2013-06-24T16:05:25 Implemented 3D sampler HLSL translation. TRAC #23365 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens da07535f 2013-06-24T16:02:56 Support sampler3D throughout the compiler. TRAC #23365 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens
Nicolas Capens 28043ba7 2013-06-24T16:01:53 Add 3D samplers to the lexer/parser. TRAC #23365 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods Author: Nicolas Capens