|
dd0d3426
|
2014-03-26T14:01:56
|
|
Use a heap-memory traversal to free compiler resources.
The stack-memory traversal is prone to stack overflow. See the
WebGL conformance test long-expressions-should-not-crash.
BUG=angle:584
Change-Id: I02d72bc2e4101b7141d609c50303403ea8298e60
Reviewed-on: https://chromium-review.googlesource.com/191930
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
bd0ea9c7
|
2014-03-04T13:53:29
|
|
Don't attempt to perform constant folding with an uninitialized constant variable.
BUG=348205
Change-Id: I9be17832b1a35d2995725ab147977992c2732274
Reviewed-on: https://chromium-review.googlesource.com/188711
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/189471
|
|
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>
|
|
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
|
|
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
|
|
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.
|