gman@chromium.org [Tue, 21 May 2013 05:06:45 +0000 (05:06 +0000)]
Fix linker issue on Windows
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2245
736b8ea6-26fd-11df-bfd4-
992fa37f6226
gman@chromium.org [Mon, 20 May 2013 21:07:36 +0000 (21:07 +0000)]
Fix compiler warning on Windows
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2244
736b8ea6-26fd-11df-bfd4-
992fa37f6226
gman@chromium.org [Mon, 20 May 2013 19:44:19 +0000 (19:44 +0000)]
bump version to 2243
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2243
736b8ea6-26fd-11df-bfd4-
992fa37f6226
gman@chromium.org [Mon, 20 May 2013 18:07:04 +0000 (18:07 +0000)]
Add expression complexity and call stack depth limits.
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2242
736b8ea6-26fd-11df-bfd4-
992fa37f6226
shannonwoods@chromium.org [Fri, 17 May 2013 00:33:03 +0000 (00:33 +0000)]
Enable base address randomization.
TRAC #22937
Signed-off-by: Shannon Woods
Author: Nicolas Capens
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2214
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Wed, 15 May 2013 16:53:00 +0000 (16:53 +0000)]
Bumped VERSION number.
Review URL: https://codereview.appspot.com/9295045
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2212
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Wed, 15 May 2013 16:46:34 +0000 (16:46 +0000)]
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: http://angleproject.googlecode.com/svn/trunk@2211
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Tue, 14 May 2013 20:07:47 +0000 (20:07 +0000)]
Add adapter LUID to EGL vendor string.
This is so Chrome can create another D3D device on the same adapter that can share resources with ANGLE's D3D device.
Review URL: https://codereview.appspot.com/9225046
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2210
736b8ea6-26fd-11df-bfd4-
992fa37f6226
nicolas%transgaming.com@gtempaccount.com [Tue, 14 May 2013 19:44:07 +0000 (19:44 +0000)]
Retrieve the texture serial from the incomplete texture when sampler-incomplete.
TRAC #23127
Signed-off-by: Geoff Lang
Signed-off-by: Jamie Madill
Author: Nicolas Capens
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2209
736b8ea6-26fd-11df-bfd4-
992fa37f6226
nicolas%transgaming.com@gtempaccount.com [Tue, 14 May 2013 19:33:30 +0000 (19:33 +0000)]
Delete the old texture storage first so that 0x0 textures have no stale data.
TRAC #23127
Signed-off-by: Geoff Lang
Signed-off-by: Jamie Madill
Author: Nicolas Capens
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2208
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Tue, 14 May 2013 17:17:55 +0000 (17:17 +0000)]
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: http://angleproject.googlecode.com/svn/trunk@2207
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Thu, 9 May 2013 17:54:29 +0000 (17:54 +0000)]
Refactor location tracking.
R=kbr@chromium.org
Review URL: https://codereview.appspot.com/9078046
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2202
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Wed, 8 May 2013 21:05:12 +0000 (21:05 +0000)]
Remove dead code left over from the old preprocessor.
Review URL: https://codereview.appspot.com/9309044
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2200
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Tue, 7 May 2013 20:23:14 +0000 (20:23 +0000)]
Refactor class to represent structure.
We had a TTypeLine to represent a structure field,
which simply encapsulated a TType and line number.
The line number was only used during parsing for error reporting.
There is no need to store a line number because it is already
available in the parser token.
TEST=WebGL conformance tests
R=kbr@chromium.org
Review URL: https://codereview.appspot.com/9223045
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2198
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Mon, 6 May 2013 22:22:33 +0000 (22:22 +0000)]
Delete dead code for cloning various types.
R=kbr@chromium.org
Review URL: https://codereview.appspot.com/9242043
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2197
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Mon, 6 May 2013 19:14:11 +0000 (19:14 +0000)]
We don't need to keep the param variable around for function prototypes.
Saves 20% memory for global symbol initialization
R=alokp@chromium.org
Review URL: https://codereview.appspot.com/9152043
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2196
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Fri, 26 Apr 2013 23:13:58 +0000 (23:13 +0000)]
A special state to track field selection is not necessary.
Identifier is sufficient to parse struct fieldname.
TEST=WebGL conformance tests.
Review URL: https://codereview.appspot.com/8709048
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2195
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Fri, 26 Apr 2013 18:54:35 +0000 (18:54 +0000)]
Lexer does not need to handle unknown-char case.
It is handled by the preprocessor. Added an assert.
TEST=WebGL conformance tests.
TBR=kbr@chromium.org
Review URL: https://codereview.appspot.com/8653052
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2194
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Fri, 26 Apr 2013 18:45:00 +0000 (18:45 +0000)]
Lexer does not need a state stack now that it does not handle comments.
TEST=WebGL conformance tests
TBR=kbr@chromium.org
Review URL: https://codereview.appspot.com/8983043
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2193
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Fri, 26 Apr 2013 18:34:42 +0000 (18:34 +0000)]
Revert "A special state to track field selection is not necessary."
This reverts commit
12e9eebd105ebc4bb99f6e18937ffbc3618cea7e.
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2192
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Fri, 26 Apr 2013 17:44:36 +0000 (17:44 +0000)]
A special state to track field selection is not necessary.
Identifier is sufficient to parse struct fieldname.
Note that we do not need stacked lexer state anymore.
TEST=WebGL conformance tests.
Review URL: https://codereview.appspot.com/8565045
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2191
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Fri, 26 Apr 2013 15:24:32 +0000 (15:24 +0000)]
Robust distinction between IDENTIFIER and TYPE_NAME tokens.
To distinguish the tokens we used to track the lexer context,
which is fragile. This patch implements a better way -
combine the two tokens into a common parser rule and let
the parser context decide if the declaration is valid,
which it already does by checking the naming conflicts.
TEST=WebGL conformance tests.
Review URL: https://codereview.appspot.com/8797044
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2190
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Wed, 24 Apr 2013 19:43:41 +0000 (19:43 +0000)]
Delete dead-code for handling comments and invalid octal integers. These are already handled by the preprocessor.
TEST=WebGL conformance tests.
Review URL: https://codereview.appspot.com/8632053
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2189
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Wed, 24 Apr 2013 00:10:04 +0000 (00:10 +0000)]
Deleted unnecessary TParseContext::AfterEOF.
TBR=kbr@chromium.org
Review URL: https://codereview.appspot.com/8927045
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2188
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Tue, 23 Apr 2013 23:50:02 +0000 (23:50 +0000)]
Reformat tokenizer. No functional changes.
TEST=WebGL conformance tests.
TBR=kbr@chromium.org
Review URL: https://codereview.appspot.com/8925044
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2187
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Mon, 22 Apr 2013 18:32:34 +0000 (18:32 +0000)]
Validate allocation size in PoolAllocator.
Note that I am planning to get rid of PoolAllocator entirely.
BUG=crbug 179654
Review URL: https://codereview.appspot.com/8662046
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2186
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Thu, 18 Apr 2013 20:13:58 +0000 (20:13 +0000)]
Fixed compile error for translator sample app.
Review URL: https://codereview.appspot.com/8834045
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2185
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Thu, 18 Apr 2013 18:35:49 +0000 (18:35 +0000)]
Update version.h to 2184.
Review URL: https://codereview.appspot.com/8833047
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2184
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 17 Apr 2013 19:22:35 +0000 (19:22 +0000)]
Do not call GetAdapterDisplayMode after Display has been initialized.
Some AMD drivers fail with D3DERR_NOTAVAILABLE after the machine has been in sleep mode and never seem to recover for a given IDirect3D9 object. I reproduced with Catalyst 9.12.0.0 and a Radeon 7700.
Instead, record the display mode at the time the it was initialized and thereafter use its format as the argument to CheckDeviceFormat etc. Previously, CheckDeviceFormat was passed an uninitialized value as the format if GetAdapterDisplayMode failed.
See http://crbug.com/229950
Review URL: https://codereview.appspot.com/8677044
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2183
736b8ea6-26fd-11df-bfd4-
992fa37f6226
shannon.woods%transgaming.com@gtempaccount.com [Fri, 12 Apr 2013 23:17:39 +0000 (23:17 +0000)]
Adds Jamie and Geoff to CONTRIBUTORS file
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2046
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 10 Apr 2013 00:30:26 +0000 (00:30 +0000)]
Delete Surface::recreateAdditionalSwapChain.
It isn't used anymore.
Review URL: https://codereview.appspot.com/8539043
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2043
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 27 Mar 2013 19:14:46 +0000 (19:14 +0000)]
Do not attempt to recover from device lost masked by present occluded or display mode changed.
The call to IDirect3DDevice9::Present in testDeviceLost sometimes never returns on AMD, resulting in a hang.
Also, on AMD, device lost is sometimes never reported at all, even through present occluded or display mode changed. I'll need to do something more robust at the app level. It has something to do with the Chrome GPU process sandbox. These issues only happen when the sandbox is enabled.
Cleanup for Surface::recreateAdditionalSwapChains to follow once I determine this gets us back to a stable place.
Review URL: https://codereview.appspot.com/8038044
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2040
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 20 Mar 2013 20:42:38 +0000 (20:42 +0000)]
Remove dependency on dwmapi.dll.
This code hasn't been used by Chrome since it switched to using shared textures for its presentation path on Vista and later.
It will also resolve this:
https://codereview.appspot.com/7816046/
Review URL: https://codereview.appspot.com/7872045
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2002
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 20 Mar 2013 19:29:56 +0000 (19:29 +0000)]
When CheckDeviceState returns S_PRESENT_OCCLUDED, Present a dummy frame and try again.
This is to avoid a hang in glFinish in the event that the GPU hangs while the screen is locked.
To repro, modify this sample so that it waits a few seconds before hanging the GPU.
https://www.khronos.org/registry/webgl/conformance-suites/1.0.0/extra/lots-of-polys-example.html
After initiating the GPU hang, quickly lock the screen. The GPU will reset but ANGLE only ever sees S_PRESENT_OCCLUDED followed by D3DERR_NOERROR. It never sees the device lost error.
Calling Present while the screen is locked seems to make CheckDeviceState return the device lost.
Doing the extra Present in testDeviceLost every time did not work well because it is very slow, perhaps because D3D delays presents to hidden windows to throttle the app.
Review URL: https://codereview.appspot.com/7911044
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2001
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Tue, 19 Mar 2013 21:28:37 +0000 (21:28 +0000)]
Avoid crash in createDevice() if it is called on a Display that did not initialize (e.g. Direct3DCreate9 returned NULL).
Fixed compiler warning.
Landed on behalf of baustin: https://codereview.appspot.com/7794046/.
Review URL: https://codereview.appspot.com/7494048
git-svn-id: http://angleproject.googlecode.com/svn/trunk@2000
736b8ea6-26fd-11df-bfd4-
992fa37f6226
shannon.woods%transgaming.com@gtempaccount.com [Tue, 19 Mar 2013 05:16:33 +0000 (05:16 +0000)]
Add a fast path for BGRA to RGBA conversion inside readPixels. Already covered
by existing WebGL conformance tests. 5x speedup observed for reading back a
4096x4096x4 texture on a NVIDIA GeForce 9600M GT (from 1000ms to 200ms).
Review URL: https://codereview.appspot.com/7466044
Author: Evan Wallace
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1999
736b8ea6-26fd-11df-bfd4-
992fa37f6226
shannon.woods%transgaming.com@gtempaccount.com [Tue, 19 Mar 2013 05:16:20 +0000 (05:16 +0000)]
Safely promote uninitialized constants.
TRAC #22676
Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
Author: Nicolas Capens
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1998
736b8ea6-26fd-11df-bfd4-
992fa37f6226
shannon.woods%transgaming.com@gtempaccount.com [Tue, 19 Mar 2013 05:16:14 +0000 (05:16 +0000)]
Don't assume unary operations on constants will be folded into a constant.
TRAC #22676
Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
Author: Nicolas Capens
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1997
736b8ea6-26fd-11df-bfd4-
992fa37f6226
shannon.woods%transgaming.com@gtempaccount.com [Tue, 19 Mar 2013 05:16:08 +0000 (05:16 +0000)]
Ignore constants that have not been initialized.
TRAC #22676
Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
Author: Nicolas Capens
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1996
736b8ea6-26fd-11df-bfd4-
992fa37f6226
shannon.woods%transgaming.com@gtempaccount.com [Tue, 19 Mar 2013 05:15:59 +0000 (05:15 +0000)]
Provide safer and more convenient constant union accessors.
TRAC #22676
Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
Author: Nicolas Capens
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1995
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 13 Mar 2013 21:05:27 +0000 (21:05 +0000)]
Bump version.h
Review URL: https://codereview.appspot.com/7798044
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1994
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 13 Mar 2013 21:04:25 +0000 (21:04 +0000)]
Fix crash after reseting device.
After calling Reset in testDeviceLost to acknowledge a display mode change, D3D sometimes crashes on the next Present call on an existing swap chain. I couldn't get it to happen with nVidia. The stack looks like this with the debug runtime:
ntdll.dll!_ZwRaiseException@12() + 0x12 bytes
ntdll.dll!_ZwRaiseException@12() + 0x12 bytes
d3d9d.dll!__DDAssert() + 0x1ca bytes
d3d9d.dll!CSwapChain::PresentMain() + 0xf52 bytes
d3d9d.dll!CSwapChain::Present() + 0x24 bytes
libEGL.dll!egl::Surface::swapRect(int x, int y, int width, int height) Line 458 + 0x2a bytes C++
> libEGL.dll!egl::Surface::swap() Line 605 C++
libEGL.dll!eglSwapBuffers(void * dpy, void * surface) Line 1063 + 0x8 bytes C++
gl_wrapper.dll!gfx::EGLApiBase::eglSwapBuffersFn(void * dpy, void * surface) Line 813 + 0x18 bytes C++
gl_wrapper.dll!gfx::NativeViewGLSurfaceEGL::SwapBuffers() Line 363 + 0x35 bytes C++
gl_wrapper.dll!gfx::GLSurfaceAdapter::SwapBuffers() Line 201 + 0x1d bytes C++
content.dll!content::PassThroughImageTransportSurface::SwapBuffers() Line 216 + 0xb bytes C++
The error is "BitBlt or StretchBlt failed in Present".
With the release runtime either Present continually fails with E_INVALIDARG or, less commonly, crashes.
It seems that by recreating all the swap chains after reset, it recovers. I didn't call resetSwapChain because there is no need to recreate all the other surfaces.
As far as I know, this should not be necessary with WDDM.
Review URL: https://codereview.appspot.com/7567045
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1993
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Mon, 4 Mar 2013 22:22:14 +0000 (22:22 +0000)]
Bump ANGLE_SH_VERSION to 110.
The bump to 109 in r1984 collided with a similar version change in dx11proto branch (r1738).
Review URL: https://codereview.appspot.com/7446050
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1987
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Mon, 4 Mar 2013 21:00:22 +0000 (21:00 +0000)]
When CheckDeviceStats returns S_PRESENT_MODE_CHANGED, reset display mode and retest for device lost.
Unless the display mode is reset, CheckDeviceLost can keep returning S_PRESENT_MODE_CHANGED, potentially masking a device lost on account of a GPU hang, causing ANGLE to fail to report context lost.
Review URL: https://codereview.appspot.com/7381061
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1986
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Mon, 4 Mar 2013 20:30:14 +0000 (20:30 +0000)]
Enabled FRAGMENT_PRECISION_HIGH unconditionally for ANGLE.
Review URL: https://codereview.appspot.com/7460048
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1985
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Mon, 4 Mar 2013 20:03:09 +0000 (20:03 +0000)]
Added preprocessor support for GL_FRAGMENT_PRECISION_HIGH.
I will send the tests in a separate patch because I need to refactor the way compiler_tests are setup.
Review URL: https://codereview.appspot.com/7402051
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1984
736b8ea6-26fd-11df-bfd4-
992fa37f6226
alokp@chromium.org [Mon, 4 Mar 2013 19:09:16 +0000 (19:09 +0000)]
Fixed compile error for preprocessor tests.
Review URL: https://codereview.appspot.com/7388051
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1983
736b8ea6-26fd-11df-bfd4-
992fa37f6226
shannon.woods@transgaming.com [Fri, 1 Mar 2013 00:01:02 +0000 (00:01 +0000)]
Updates ANGLE_depth_texture to reflect proposed changes in requirements for g and b channels.
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1979
736b8ea6-26fd-11df-bfd4-
992fa37f6226
shannon.woods@transgaming.com [Thu, 28 Feb 2013 21:24:32 +0000 (21:24 +0000)]
Ensure nested ternary operator unfolding uses a new scope to avoid redefinition of the same temporary variable.
TRAC #22629
Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
Author: Nicolas Capens
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1835
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Mon, 25 Feb 2013 23:45:53 +0000 (23:45 +0000)]
Revert r1829: Fix failure to recover from GPU hang.
It's causing trouble with Aura. Locking the screen seems to generate the display mode change device status and Aura cannot recover.
http://crbug.com/178148
Review URL: https://codereview.appspot.com/7398052
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1834
736b8ea6-26fd-11df-bfd4-
992fa37f6226
zmo@google.com [Fri, 22 Feb 2013 00:44:54 +0000 (00:44 +0000)]
Build fix for qt-wk2
Review URL: https://codereview.appspot.com/7381049
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1833
736b8ea6-26fd-11df-bfd4-
992fa37f6226
zmo@google.com [Fri, 22 Feb 2013 00:04:39 +0000 (00:04 +0000)]
Fix ANGLE patching/building issues.
1) Remove an empty file: this causes patch apply failures when updating WebKit side ANGLE.
2) Fix a 64-to-32 conversion issue.
3) Append a change to Tokenizer.l that's left out in a previous CL. (cpp is already updated).
Review URL: https://codereview.appspot.com/7378051
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1832
736b8ea6-26fd-11df-bfd4-
992fa37f6226
zmo@google.com [Thu, 21 Feb 2013 22:09:50 +0000 (22:09 +0000)]
This pulls in mvujovic's build fix in WebKit ANGLE.
Original patch: http://trac.webkit.org/changeset/139665
Review URL: https://codereview.appspot.com/7392044
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1831
736b8ea6-26fd-11df-bfd4-
992fa37f6226
zmo@google.com [Wed, 20 Feb 2013 17:29:15 +0000 (17:29 +0000)]
Add support for extension EXT_draw_buffers.
Review URL: https://codereview.appspot.com/7308107
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1830
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Tue, 19 Feb 2013 23:12:50 +0000 (23:12 +0000)]
Fix failure to recover from device hang.
Sometimes IDirect3DDevice9Ex::CheckDeviceState returns S_PRESENT_MODE_CHANGED when the GPU has hung. It's not consistent, maybe one time out of two when I hang the GPU while running WebGL Aquarium.
This unfortunately means that changes to display mode will cause ANGLE to report context lost. Other ideas appreciated.
Review URL: https://codereview.appspot.com/7305093
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1829
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Fri, 15 Feb 2013 00:07:40 +0000 (00:07 +0000)]
Fix signed / unsigned warning in ParseHelper.cpp.
Review URL: https://codereview.appspot.com/7330046
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1828
736b8ea6-26fd-11df-bfd4-
992fa37f6226
kbr@chromium.org [Tue, 12 Feb 2013 21:23:10 +0000 (21:23 +0000)]
Fixed one remaining 64-bit truncation issue missed in the last CL.
BUG=396
Review URL: https://codereview.appspot.com/7323055
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1827
736b8ea6-26fd-11df-bfd4-
992fa37f6226
kbr@chromium.org [Tue, 12 Feb 2013 03:08:38 +0000 (03:08 +0000)]
Fixed 64-bit integer truncation issues in shader translator.
This is an incompatible API change, but one which is necessary in
order to improve correctness of the code. The API version in
ShaderLang.h is updated and, unfortunately, the define renamed to
something less ambiguous due to conflicts on some Android buildbots.
Temporary patches in Chromium and WebKit will be landed separately to
support this upgrade.
BUG=403,404,405,406,407,408,409
Review URL: https://codereview.appspot.com/7300058
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1826
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 6 Feb 2013 20:31:06 +0000 (20:31 +0000)]
Fix a 64-bit error in ProgramBinary::load
ProgramBinary::save writes a size_t, so ProgramBinary::load needs
to read it as the same type.
Landed for jschuh.
Original review: https://codereview.appspot.com/7304057/
Review URL: https://codereview.appspot.com/7310052
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1825
736b8ea6-26fd-11df-bfd4-
992fa37f6226
kbr@chromium.org [Wed, 6 Feb 2013 01:50:44 +0000 (01:50 +0000)]
Check that the incoming type to a default precision qualifier statement is valid.
Fixes new WebGL conformance tests
shader-with-illegal-default-precision.frag.html and
shader-with-illegal-default-precision.vert.html per
http://www.khronos.org/bugzilla/show_bug.cgi?id=781 . Also ran WebGL
1.0.1 conformance tests; no regressions.
BUG=none
Review URL: https://codereview.appspot.com/7302043
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1824
736b8ea6-26fd-11df-bfd4-
992fa37f6226
daniel@transgaming.com [Fri, 1 Feb 2013 22:09:54 +0000 (22:09 +0000)]
Updates to extensions from public registry
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1823
736b8ea6-26fd-11df-bfd4-
992fa37f6226
daniel@transgaming.com [Fri, 1 Feb 2013 06:36:07 +0000 (06:36 +0000)]
Update ANGLE_texture_compression_dxt
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1821
736b8ea6-26fd-11df-bfd4-
992fa37f6226
zmo@google.com [Thu, 31 Jan 2013 18:51:14 +0000 (18:51 +0000)]
Fix version.
TBR=alokp
Review URL: https://codereview.appspot.com/7228076
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1810
736b8ea6-26fd-11df-bfd4-
992fa37f6226
zmo@google.com [Thu, 31 Jan 2013 18:50:10 +0000 (18:50 +0000)]
Do not hash mapping field names of a reserved struct.
With this fixed, Chrome behaves the same on WebGL conformance tests 1.0.2 with/without --enable-shader-name-hashing
BUG=
TEST=WebGL conformance tests
Review URL: https://codereview.appspot.com/7229043
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1809
736b8ea6-26fd-11df-bfd4-
992fa37f6226
daniel@transgaming.com [Wed, 30 Jan 2013 20:01:03 +0000 (20:01 +0000)]
Rename ANGLE_multiple_render_targets to EXT_draw_buffers
Trac #21120
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1807
736b8ea6-26fd-11df-bfd4-
992fa37f6226
daniel@transgaming.com [Wed, 30 Jan 2013 20:00:59 +0000 (20:00 +0000)]
Updates to MRT extension.
Trac #21120
01/30/2013 dgkoch add issue 6 and clear interactions
renamed to EXT_draw_buffers based on feedback
changed resolution of issue 3.
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1806
736b8ea6-26fd-11df-bfd4-
992fa37f6226
gman@chromium.org [Sat, 26 Jan 2013 02:18:34 +0000 (02:18 +0000)]
Fix mat2 packing to use 2 rows as per spec.
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1805
736b8ea6-26fd-11df-bfd4-
992fa37f6226
zmo@google.com [Sat, 26 Jan 2013 00:55:15 +0000 (00:55 +0000)]
Fix version.
Review URL: https://codereview.appspot.com/7221045
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1804
736b8ea6-26fd-11df-bfd4-
992fa37f6226
zmo@google.com [Sat, 26 Jan 2013 00:51:59 +0000 (00:51 +0000)]
Fix a memory out-of-bound visit bug.
So len could equal = max_len, and at this point name[len] is out of the range.
BUG=
TEST=
Review URL: https://codereview.appspot.com/7223045
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1803
736b8ea6-26fd-11df-bfd4-
992fa37f6226
kbr@chromium.org [Fri, 25 Jan 2013 01:30:45 +0000 (01:30 +0000)]
Attempt different fix for unknown #pragma on Linux.
BUG=none
TEST=compiled on Linux and Mac OS
Review URL: https://codereview.appspot.com/7133076
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1735
736b8ea6-26fd-11df-bfd4-
992fa37f6226
kbr@chromium.org [Fri, 25 Jan 2013 00:35:04 +0000 (00:35 +0000)]
Changed optimization level to D3DCOMPILE_OPTIMIZATION_LEVEL1. With
this optimization level, it appears that array index clamping can be
enabled on Windows without destabilizing WebGL content.
Tested this change with array index clamping enabled with MapsGL, a
previous failing test from AlteredQualia, many Three.js demos, the
Julia Set tutorial from acko.net, the WebGL 1.0.1 conformance suite,
and other content; all worked.
BUG=none
Review URL: https://codereview.appspot.com/7197054
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1734
736b8ea6-26fd-11df-bfd4-
992fa37f6226
kbr@chromium.org [Fri, 25 Jan 2013 00:01:11 +0000 (00:01 +0000)]
Incorporated patch from haixia@ changing the default implementation of
array index clamping to use the clamp intrinsic. This works more
reliably on pure OpenGL ES devices and on Windows.
Added a mechanism in ShBuiltInResources to choose the strategy for
array index clamping.
BUG=none
TEST=various out-of-bounds array indexing tests and various WebGL content
Review URL: https://codereview.appspot.com/7194051
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1733
736b8ea6-26fd-11df-bfd4-
992fa37f6226
kbr@chromium.org [Thu, 24 Jan 2013 23:40:06 +0000 (23:40 +0000)]
Fixed compiler warning on Linux resulting in build failures.
BUG=none
TEST=compiled on Linux
Review URL: https://codereview.appspot.com/7201056
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1732
736b8ea6-26fd-11df-bfd4-
992fa37f6226
daniel@transgaming.com [Thu, 24 Jan 2013 04:51:33 +0000 (04:51 +0000)]
Document GetIntegerv errors in ANGLE_framebuffer_blit.
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1731
736b8ea6-26fd-11df-bfd4-
992fa37f6226
daniel@transgaming.com [Thu, 24 Jan 2013 04:51:26 +0000 (04:51 +0000)]
Updates for ANGLE_multiple_render_targets
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1730
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Thu, 24 Jan 2013 00:17:06 +0000 (00:17 +0000)]
Add missing file from r1725.
Review URL: https://codereview.appspot.com/7193053
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1729
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 23 Jan 2013 23:55:32 +0000 (23:55 +0000)]
Remove DXSDK_DIR from search paths.
Chrome now builds ANGLE against the Windows 8 Platform SDK.
Move the include and lib search paths to common.gypi so that downstream projects can specify the location of the Platform SDK or alternatively use the DirectX SDK instead.
Review URL: https://codereview.appspot.com/7193052
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1728
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 23 Jan 2013 22:50:18 +0000 (22:50 +0000)]
Roll gyp dependency to 1564.
This is to fix the standalone gyp build. It couldn't handle changes made in r1721. This is the latest version.
Review URL: https://codereview.appspot.com/7204049
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1727
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 23 Jan 2013 21:45:49 +0000 (21:45 +0000)]
Update version number.
Review URL: https://codereview.appspot.com/7204048
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1726
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 23 Jan 2013 21:43:42 +0000 (21:43 +0000)]
Include windows.h from one place to ensure that min and max macros are not defined.
These conflict with the STL functions of the same name.
This is to make the standalone ANGLE gyp build work again.
Review URL: https://codereview.appspot.com/7211043
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1725
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 23 Jan 2013 21:43:31 +0000 (21:43 +0000)]
Use TEXT macro to define ANGLE_PRELOADED_D3DCOMPILER_MODULE_NAMES macro.
This is to make the standalone gyp build work again.
Review URL: https://codereview.appspot.com/7199046
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1724
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Tue, 22 Jan 2013 21:35:22 +0000 (21:35 +0000)]
Treat return statements in loops as loop discontinuities.
This is so that texture2D is converted to texture2DLod in loops with return statements. HLSL does not seem to allow gradient operations in loops with return statements. It considers them to be breaks.
Review URL: https://codereview.appspot.com/7131057
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1722
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Tue, 22 Jan 2013 20:21:00 +0000 (20:21 +0000)]
Make other angle targets compile on Win64
Addendum to https://codereview.appspot.com/7011048/
BUG=391, chromium:166496, chromium:167187
Landing for jschuh
Original patch: https://codereview.appspot.com/7075044/
Review URL: https://codereview.appspot.com/7190044
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1721
736b8ea6-26fd-11df-bfd4-
992fa37f6226
gman@chromium.org [Tue, 15 Jan 2013 20:30:00 +0000 (20:30 +0000)]
Add comments to ArrayBoundsClamper about why 'clamp'
was not used to do the bounds clamping.
BUG=397
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1720
736b8ea6-26fd-11df-bfd4-
992fa37f6226
kbr@chromium.org [Mon, 14 Jan 2013 22:46:08 +0000 (22:46 +0000)]
Reorganized new sources from recently applied patch into third_party directory.
Review URL: https://codereview.appspot.com/7105049
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1719
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Thu, 10 Jan 2013 02:04:51 +0000 (02:04 +0000)]
Update version.
Review URL: https://codereview.appspot.com/7062061
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1647
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Thu, 10 Jan 2013 02:03:56 +0000 (02:03 +0000)]
Add D3D version and shader models to renderer string reported by GetString.
It looks like this now:
ANGLE (NVIDIA Quadro 600 Direct3D9Ex vs_3_0 ps_3_0)
I also noticed that the strings returned by GetString are not all static so I fixed that as well.
Review URL: https://codereview.appspot.com/7068058
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1646
736b8ea6-26fd-11df-bfd4-
992fa37f6226
zmo@google.com [Tue, 8 Jan 2013 23:21:01 +0000 (23:21 +0000)]
Build fix.
BUG=
TEST=build fine in Linux
Review URL: https://codereview.appspot.com/7071056
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1645
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Tue, 8 Jan 2013 19:07:59 +0000 (19:07 +0000)]
In generated shaders, output +INF and -INF as largest single precision floating point number.
C++ streams seem to use the representation 1.$ for INF and that isn't valid syntax in GLSL or HLSL.
Also preserve the sign of INF in constant expressions that divide by zero. I can't figure out what to do about 0/0 because the shader models we are using do not support NaN. Treating it as +INF as before.
Review URL: https://codereview.appspot.com/7057046
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1644
736b8ea6-26fd-11df-bfd4-
992fa37f6226
daniel@transgaming.com [Mon, 7 Jan 2013 17:29:39 +0000 (17:29 +0000)]
Update Copyright years on the LICENSE file
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1643
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Fri, 4 Jan 2013 22:37:14 +0000 (22:37 +0000)]
Upodate preprocessor.vcxproj to reflect changes in r1640.
Review URL: https://codereview.appspot.com/7061044
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1642
736b8ea6-26fd-11df-bfd4-
992fa37f6226
bsalomon@google.com [Fri, 4 Jan 2013 15:32:58 +0000 (15:32 +0000)]
Disable GL_OES_standard_derivatives when ps_2_x or later is not available.
BUG=392
Review URL: https://codereview.appspot.com/7027051
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1641
736b8ea6-26fd-11df-bfd4-
992fa37f6226
maxvujovic@gmail.com [Fri, 4 Jan 2013 00:23:55 +0000 (00:23 +0000)]
Upstream various build fixes from WebKit to ANGLE to make updating ANGLE in WebKit easier.
a) http://trac.webkit.org/changeset/127747
b) http://trac.webkit.org/changeset/128539
c) http://trac.webkit.org/changeset/122870 - Specifically, items #3 and #4 in this changeset's commit message.
Review URL: https://codereview.appspot.com/7040045
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1640
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Wed, 2 Jan 2013 20:46:41 +0000 (20:46 +0000)]
Make angle compile on Win64
BUG=http://crbug.com/166496
BUG=http://crbug.com/167187
Landing this for Justin Schuh:
https://codereview.appspot.com/7011048/
Review URL: https://codereview.appspot.com/7040045
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1639
736b8ea6-26fd-11df-bfd4-
992fa37f6226
kbr@chromium.org [Sat, 22 Dec 2012 02:24:25 +0000 (02:24 +0000)]
Incorporated BSD-licensed changes implementing array bounds clamping.
BUG=none
TEST=ran associated WebKit layout tests in Chromium
Review URL: https://codereview.appspot.com/6999052
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1638
736b8ea6-26fd-11df-bfd4-
992fa37f6226
daniel@transgaming.com [Thu, 20 Dec 2012 20:14:18 +0000 (20:14 +0000)]
Combine major, minor and build revision as the program binary version.
TRAC #22245
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1563
736b8ea6-26fd-11df-bfd4-
992fa37f6226
apatrick@chromium.org [Fri, 14 Dec 2012 23:35:51 +0000 (23:35 +0000)]
Use shader D3D optimization level 0.
Review URL: https://codereview.appspot.com/6943062
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1562
736b8ea6-26fd-11df-bfd4-
992fa37f6226
bajones@chromium.org [Thu, 6 Dec 2012 19:10:04 +0000 (19:10 +0000)]
Ensured that the mUsesPointSprites flag is properly preserved when loading shaders from binary cache.
BUG=https://code.google.com/p/angleproject/issues/detail?id=389
Review URL: https://codereview.appspot.com/6884053
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1560
736b8ea6-26fd-11df-bfd4-
992fa37f6226
daniel@transgaming.com [Thu, 29 Nov 2012 20:45:45 +0000 (20:45 +0000)]
Fix implicit vector truncation warnings.
TRAC #22218
Signed-off-by: Daniel Koch
Signed-off-by: Geoff Lang
Author: Nicolas Capens
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1557
736b8ea6-26fd-11df-bfd4-
992fa37f6226
daniel@transgaming.com [Thu, 29 Nov 2012 20:45:33 +0000 (20:45 +0000)]
Add explicit std:: namespace to code from <cXYZ> includes.
Some platforms seem to implicitly include the <XYZ.h> headers
which also add some types and functions (like strlen, size_t,...)
into the global namespace.
On other platforms though, this can result in compile errors, which
is noticeable in WebKit on e.g. QNX. See also:
https://bugs.webkit.org/show_bug.cgi?id=95468
https://codereview.appspot.com/6843083/
Contributed by Milian Wolff, Klaralvdavens Datakonsult AB.
git-svn-id: http://angleproject.googlecode.com/svn/trunk@1556
736b8ea6-26fd-11df-bfd4-
992fa37f6226