Remove unnecessary int cast in ParseContext.

BUG=536

Change-Id: I72287f5ce9736cd48fc241022e09446db717cf92
Reviewed-on: https://chromium-review.googlesource.com/179260
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Commit-Queue: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
Regenerate the parser using Bison 2.7.12.

The next patch requires a parser grammar change, but Cygwin's Bison version got updated so this separates the changes caused by that update from the ones for the actual bug fix.

Change-Id: I1a2d58433a65488ffe0b94e1760c716e14496e8f
Reviewed-on: https://chromium-review.googlesource.com/180976
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Fix compiler crash.

Create a fake variable for function identifiers used as a variable identifier to allow continuing compilation after reporting the error.

BUG=chromium:330222

Change-Id: I553804b3db95cd5dc946e94193fc9181d6b2c032
Reviewed-on: https://chromium-review.googlesource.com/180977
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Add NetBSD and DragonFly to posix-compliant OS list

BUG=angle:428

Change-Id: I282a6bf138b4e2a2c17baf428cbe1e636f43bdd6
Reviewed-on: https://chromium-review.googlesource.com/181640
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Commit-Queue: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
Fix default vertex attribute component size to 4.

The GL spec states that by default a vertex attribute has a size of 4.

Change-Id: Ic4c977fb936cc0b232ed4742eeb061d6ba6843be
Reviewed-on: https://chromium-review.googlesource.com/181522
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Port project refator to master.

BUG=angle:537

Change-Id: I146cb04eb69fc8df152f8e6cd9f78f5e87e72a7e
Reviewed-on: https://chromium-review.googlesource.com/178785
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Generate public projects.

Change-Id: Id8bf2b9cf44f9fcd79eff774db64cb59b9aebd73
Reviewed-on: https://chromium-review.googlesource.com/178786
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Commit-Queue: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Merge ES3 direct buffer changes and split index and vertex buffers.

Change-Id: I7ecdb049352af0dd94e8fbaede5953dfad9a75ef
Reviewed-on: https://chromium-review.googlesource.com/181903
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Don't include windows.h on non-windows systems.

Change-Id: I8cf650073ead5b52bac44e31c8c3c894bc31e01c
Reviewed-on: https://chromium-review.googlesource.com/182156
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Fix incorrect include on posix systems.

Change-Id: I73dbb08796c3e3a7a95f36dbf378b37eb9f936a7
Reviewed-on: https://chromium-review.googlesource.com/182145
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Rework tracing and perf defines.

Changed ANGLE_DISABLE_* to ANGLE_ENABLE_* for perf and tracing defines so
they are disabled by default.  Updated the gyp files to only turn on perf
by default for windows debug builds.

Change-Id: I71706674e6d12fbf4208acc8f100d963b82c7674
Reviewed-on: https://chromium-review.googlesource.com/182146
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Remove system.h.

The gyp files already define NOMINMAX and WIN32_LEAN_AND_MEAN.  windows.h
is also included via the D3D includes.

This ends up speeding up the build process significantly by not having
windows.h included in nearly every file.

Also fixes issues on non-windows systems by not having stdarg.h included
in debug.cpp.

Change-Id: Id32d9aac37a5a29df832a062dd8024302a798a1c
Reviewed-on: https://chromium-review.googlesource.com/182810
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Remove __stdcall from non-windows builds.

Change-Id: I424cb538808ec64137c85af3bbe8742043e1c573
Reviewed-on: https://chromium-review.googlesource.com/182840
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Only define ANGLE_ENABLE_PERF in libGLESv2 and libEGL.

Change-Id: Ia0b8b0e67a0af5eeeec6e3fc7bfdbfdc70f519f8
Reviewed-on: https://chromium-review.googlesource.com/183161
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Remove the ANGLE_COMPILE_OPTIMIZATION_LEVEL precompiler definition override to default to D3DCOMPILE_OPTIMIZATION_LEVEL3.

BUG=322795
R=geofflang@chromium.org

Change-Id: I7d8a2676c3510d26e9f0876aa30c6d8b4ae89f24
Reviewed-on: https://chromium-review.googlesource.com/183995
Tested-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Nicolas Capens <nicolascapens@google.com>
Add work-around for D3D9 shader compiler bug.

With certain selection statements with a vertex input in the
condition and side-effects in the else-block, we'd run in to
a D3D9 compiler bug which would cause incorrect results.

We can work around this bug in D3D9 by selectively rewriting
these statements to not use an else clause.

BUG=322794

Change-Id: I93c96fb201ff4959c00d9a36321faac7e0343278
Reviewed-on: https://chromium-review.googlesource.com/184021
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Commit-Queue: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Fix texture formats backed by extra channels.

Fix rendering to, initializing and clearing textures that are backed by more channels in D3D11 than the GL format has.

Change-Id: I250c349254acf4e6f85d4eff58e2190edb1782ef
Reviewed-on: https://chromium-review.googlesource.com/183994
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Commit-Queue: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Regenerate our prepackaged VS2010E project files.

We neglected to regenerate the project files with the addition
of RewriteElseBlocks.h/cpp.

Change-Id: I094b1ae7430b52dbff1520787aebfd5778867244
Reviewed-on: https://chromium-review.googlesource.com/184374
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Add missing <limits> to Common.h.

On Windows we included limits.h via map.h, and it was missing
on Linux, causing build failures in the try bots.

Change-Id: I1ff7641f8265ef2127698040a31ecfa511141ec7
Reviewed-on: https://chromium-review.googlesource.com/184480
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Remove reference to CHAR_BIT from Common.h.

CHAR_BIT is undefined in certain GCC builds in Linux.

Change-Id: Ib416535614ea5775557eebd7f2dcecb6fdd9340a
Reviewed-on: https://chromium-review.googlesource.com/184397
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>