Граф коммитов

114 Коммитов

Автор SHA1 Сообщение Дата
Corentin Wallez 05356e35d3 BUILD.gn: do not redefine use_libpci if already present
We want to move the definition of use_libpci from gpu/config to ANGLE.
To avoid breaking compilation we should do it in three steps:
 - Make ANGLE not redefine use_libpci
 - Remove definition of use_libpci from Chrome
 - Make ANGLE define use_libpci unconditionnaly

This commit is the first step.

BUG=angleproject:1874

Change-Id: I08d0996ca536c51e1617f656171d696f05605725
Reviewed-on: https://chromium-review.googlesource.com/450037
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2017-03-06 22:58:16 +00:00
Corentin Wallez d83f64f5c8 gpu_info_util: Implement GetSystemInfo on OSX
Also adds a test that prints the gathered information for manual
checking and to help know what the system is when looking at the logs.

BUG=angleproject:1874

Change-Id: Icb0cc390c9808fd8db0f966d667b94dde4b94e62
Reviewed-on: https://chromium-review.googlesource.com/443845
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
2017-02-22 22:50:10 +00:00
Corentin Wallez 878baf9071 gpu_info_util: address comments for CL 438940
BUG=angleproject:1874

Change-Id: I6397d9141a7c25f818ce970212a4a8e8afbd5a27
Reviewed-on: https://chromium-review.googlesource.com/442676
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2017-02-15 21:02:15 +00:00
Corentin Wallez 7b4e00d20e gpu_info_util: Implement GetSystemInfo on Linux
BUG=angleproject:1874

Change-Id: Id39c26b806e6a7937517235afe0ca60f5087df5b
Reviewed-on: https://chromium-review.googlesource.com/438940
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2017-02-13 19:47:15 +00:00
Jamie Madill e794cd86d4 Vulkan: Implement new GLSL translator back-end.
The Vulkan GLSL translator back-end will handle validating and
translating our WebGL/ESSL shaders into Vulkan-specific GLSL.

glslang (the Vulkan one) accepts both GLSL and GLSL ES shaders
as inputs, and both the desktop and ESSL back-ends give
incompleteness warnings when used. For now, use the desktop GL
450 as a target for Vulkan GLSL.

The Vulkan-specific changes are currently only to add locations
to every vertex input and fragment output.

BUG=angleproject:1575

Change-Id: I7c3f32f522e9d18e5f8618eb7927336bf4fbdcf2
Reviewed-on: https://chromium-review.googlesource.com/412266
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2017-01-30 18:53:01 +00:00
Andrew Grieve 949e0700bc Update BUILD.gn to account for Android default linker script change
BUG=681557

Change-Id: I8fb4e50d241e3519b27d57a507d92cc3c15877ef
Reviewed-on: https://chromium-review.googlesource.com/430877
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
2017-01-23 23:17:40 +00:00
Jamie Madill dcab56a1b8 Move some file utils to common.
Since common is shared through all ANGLE code (libANGLE/tests/samples)
this is the most general place for these utils, and will give libANGLE
access to them. We'll need them to get the current executable dir for
loading the Vulkan layers.

This also means we'll need to fix the global static variable use when
we have the ability.

BUG=angleproject:1319
BUG=chromium:677841

Change-Id: I7af61920635135b28a2f02f4a8d019ee88c9dd28
Reviewed-on: https://chromium-review.googlesource.com/425440
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2017-01-05 23:41:59 +00:00
Jamie Madill 80ab03c58d Add angle_white_box_tests for libANGLE render tests.
angle_end2end_tests included tests that used both the entry points
from our shared libraries as well as calling libANGLE classes like
gl::Context directly. Split these into a new test executable.

This also removes the libANGLE code from all the end2end tests.

It's necessary to add static versions of libEGL and libGLESv2 so
that we call safely call methods in libANGLE an the entry points
from the same target.

BUG=angleproject:1660

Change-Id: I6d82021b9300231ddb5fee435e5d77728f8f1292
Reviewed-on: https://chromium-review.googlesource.com/419175
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2017-01-04 19:24:32 +00:00
Jamie Madill 192745a74e Add varying packing validation for WebGL.
This CL moves the varying packing from the D3D layer up to Program.
This is necessary for WebGL validation, and gives us consistency
for the various back-ends. There may be some additional cleanup work
on the VaryingPacking class, because it does some work that is D3D-
specific.

WebGL requires strict varying packing. Instead of allowing success
unconditionally, it's an explicit error to succeed to pack a set of
varyings that the sample algorithm would fail to pack.

Introduce a new packing mode option to the varying packing class to
handle this different packing style, while keeping our old more
relaxed packing method for ES code.

BUG=angleproject:1675

Change-Id: I674ae685ba573cc2ad7d9dfb7441efa8cb2d55fc
Reviewed-on: https://chromium-review.googlesource.com/423254
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2016-12-23 00:30:50 +00:00
Yuly Novikov a4ab58044a Remove libEGL dependency on libANGLE
libEGL should use libGLESv2 for EGL implementation,
to prevent libANGLE global variables being duplicated.

BUG=angleproject:1660

Change-Id: I84c1e22fcce8f4a21acfb1fcde0c84ebd77204f8
Reviewed-on: https://chromium-review.googlesource.com/422574
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
2016-12-22 00:53:39 +00:00
Jamie Madill 327ba857f6 Vulkan: Hook up loader code.
This integrates the build files for the loader SDK, and tests the
compilation by calling InitInstance. There's no current way to
test the runtime behaviour since there's no way for the tests to
initialize the Vulkan back-end, that will come in the next CL.

BUG=angleproject:1319

Change-Id: Ia8bf96ca068eaf40744c9753b59ffaaa5ada8a73
Reviewed-on: https://chromium-review.googlesource.com/367519
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2016-12-20 16:05:41 +00:00
Jamie Madill 120040e239 D3D: Move some HLSL-specific code to a new folder.
This code doesn't actually call any D3D runtime methods, so it can be
included in our cross platform unit tests. Just include the varying
packing code for now.

BUG=angleproject:1296
BUG=angleproject:1638

Change-Id: I5c0ccccb00e1c13ca98448256be048f7cd0968ce
Reviewed-on: https://chromium-review.googlesource.com/417116
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2016-12-08 20:49:31 +00:00
Corentin Wallez 64598b53ef Add the ANGLEPlatform entry points to eglGetProcAddress
Reland with a Windows build fix.

We want to move the Chromium initialization of the ANGLE platform from
being Windows-specific to being EGL-specific. Because the mechanisms by
which the ANGLE library is loaded are OS-specific, it is inconvenient to
use dlsym and friends to get the ANGLEPlatform entry points. Instead
we expose the through eglGetProcAddress which is readily available in the
EGL-specific part of Chromium.

BUG=angleproject:1621

Change-Id: I022a39493756a3b5d1ed626fd05e74af3f043211
Reviewed-on: https://chromium-review.googlesource.com/410066
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2016-11-15 18:04:00 +00:00
Yuly Novikov dfd7fb2ade Cleanup after merging translator_lib into translator
Rename a few references to translator_lib

BUG=angleproject:1596

Change-Id: Ib715fdd8a949dc46a5ef628ea2d7f71b1b771845
Reviewed-on: https://chromium-review.googlesource.com/410287
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
2016-11-11 22:32:37 +00:00
Yuly Novikov ea5865497e Cleanup after translator component removal
- Unite translator with translator_lib
- Remove flags and defines for shared library exports

BUG=angleproject:1596

Change-Id: Icd145a4b79e2472766a2b56017bb0f36f244482e
Reviewed-on: https://chromium-review.googlesource.com/410261
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
2016-11-11 19:45:51 +00:00
Corentin Wallez 7f07caa961 Rename the build/ directory.
GYP related files went in gypfiles/, and the gni went in gni/ this
changes frees up the build/ directory name for Chromium's build/
directory.

BUG=angleproject:1569

Change-Id: I76fe343d569239c2732ba87986fcf7debc21d417
Reviewed-on: https://chromium-review.googlesource.com/403029
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2016-11-08 14:48:42 +00:00
Yuly Novikov e653403bae Remove component translator target and keep static_library.
Rename translator_static to translator and use it everywhere.

BUG=angleproject:1596

Change-Id: I36c990d54979d2460b1513a65cca0b82f8d65c80
Reviewed-on: https://chromium-review.googlesource.com/406668
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
2016-11-03 17:07:18 +00:00
Geoff Lang d08f3b3df7 Add stubs for a NULL renderer.
BUG=angleproject:1468

Change-Id: I2ed2b65a4b6f6ea3dda61c0467aef95e407cd38c
Reviewed-on: https://chromium-review.googlesource.com/388844
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
2016-10-05 18:45:49 +00:00
Corentin Wallez 054f7ed0d6 preprocessor: Miscellaneous cleanups
- Use full header paths in includes
- Use ASSERT instead of assert
- Use angle::NonCopyable instead of PP_DISALLOW_COPY_AND_ASSIGN
- Use range-for in a couple places
- Remove pp_utils.h

BUG=angleproject:1522

Change-Id: If107fef89e8465bca65cf664926d1051c5d1e232
Reviewed-on: https://chromium-review.googlesource.com/387212
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2016-09-26 19:25:29 +00:00
Jamie Madill 1db8a26b56 Fix warning in standalone in new validation.
BUG=angleproject:1512

Change-Id: Ifdb8d4c38e3c90e03eee42ba9fd6390dffd61363
Reviewed-on: https://chromium-review.googlesource.com/388611
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2016-09-22 21:11:14 +00:00
Corentin Wallez a5615c69b1 BUILD.gn: Disable pool alloc on all translator dependents when fuzzing
It contains defines that need to be consistent between the header and
the implementation.

BUG=angleproject:1522
BUG=chromium:647807

Change-Id: Ica144c455b7366bd9939a07b171edffe5af8bf35
Reviewed-on: https://chromium-review.googlesource.com/386945
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2016-09-19 19:55:36 +00:00
Corentin Wallez 30e11ab241 BUILD.gn: make the translator fuzzer a source set
When we want to use GN standalone, the fuzzer_test template won't exist.
Instead make the fuzzer a source set that is used by a target in Chrome.

BUG=angleproject:1522

Change-Id: I347e633448d508eb124d0861b0fb28315923016c
Reviewed-on: https://chromium-review.googlesource.com/386636
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2016-09-16 15:47:10 +00:00
Corentin Wallez 28b6528ca2 Add a fuzzer for the shader translator.
BUG=angleproject:1522

Change-Id: Idbe8194ba478366e99c7460d403d03fe27dd89d0
Reviewed-on: https://chromium-review.googlesource.com/353153
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2016-09-15 20:03:53 +00:00
Yuly Novikov e3352f94a1 Change angle_util to be a shared library
So that there will be one instance of static thread synchronization variables
in AndroidWindow.
Previously there was one instance in lib_angle_deqp_gles2_tests__library
and one in libangle_deqp_libgles2, resulting in AndroidWindow::initialize
waiting forever.

Also make the change in GYP build to fix standalone build,
and fix rpath issues on Mac.

BUG=angleproject:1471
TEST=end2end and deqp tests on standalone Win10 and end2end on GN Mac 10.11

Change-Id: I731578459400bb47d269df129aabed9b67b555e6
Reviewed-on: https://chromium-review.googlesource.com/376202
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
2016-08-30 20:50:59 +00:00
Yuly Novikov 55033e583b Revert "Change angle_util to be a shared library"
This reverts commit 2f9b5e6f79.

Change-Id: I90a7ba0596e79795c9549bc268eabff69c96d572
Reviewed-on: https://chromium-review.googlesource.com/376079
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
2016-08-25 18:12:11 +00:00
Yuly Novikov 2f9b5e6f79 Change angle_util to be a shared library
So that there will be one instance of static thread synchronization variables
in AndroidWindow.
Previously there was one instance in lib_angle_deqp_gles2_tests__library
and one in libangle_deqp_libgles2, resulting in AndroidWindow::initialize
waiting forever.

BUG=angleproject:1471

Change-Id: Ia529c91e34960eb352730c1bb89a91ce6336c8a0
Reviewed-on: https://chromium-review.googlesource.com/368983
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2016-08-24 21:01:16 +00:00
Austin Kinross 91e71ed99f Misc minor WinRT fixes and cleanups
Change-Id: Ibf041e74d81ef266791e6b6a3bb43bf504b035b3
Reviewed-on: https://chromium-review.googlesource.com/374040
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2016-08-23 20:11:39 +00:00
Jamie Madill 509a1d4602 GN: Enable more MSVS warnings.
Some warnings were enabled only in standalone builds. Enabling them in
the GN config will prevent standalone build breakage and also make
some potentially harmful warnings more visible to non-Windows devs.

BUG=angleproject:1449

Change-Id: I11fe9bac957864d37af37b3860a22fcbd91946ac
Reviewed-on: https://chromium-review.googlesource.com/360961
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2016-08-04 19:16:22 +00:00
Jamie Madill ce1ed238a5 D3D11: Detect driver version for blit workaround.
Since the newer driver versions are required for WebGL 2 conformance,
we need a solution that can detect a driver version to know if we
should apply the workaround.

Use a modified copy of Chrome's Windows GPU driver detection code.
In the future we should extend this to a full module when we port
the command buffer workarounds.

BUG=angleproject:1452

Change-Id: I783d5726454671cc22585a2bf990c071d539aa9f
Reviewed-on: https://chromium-review.googlesource.com/361962
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2016-07-24 18:42:37 +00:00
Jamie Madill a8503cefdc Re-land "GN: Enable chromium_code config instead."
Using "no_chromium_code" is a bit less strict, but ANGLE should be
able to handle slightly stricter warnings.

Re-land with fix for Clang build.

BUG=angleproject:1449

Change-Id: I8988287d630a6258f2f9ee90e7bfef5f2d5799cd
Reviewed-on: https://chromium-review.googlesource.com/361331
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2016-07-18 20:44:10 +00:00
Jamie Madill 5bc93c4186 Revert "GN: Enable chromium_code config instead."
Seems to fail the Clang build:

../../third_party/angle/src/libANGLE/renderer/d3d/d3d11/StateManager11.cpp(35,60):  error: comparison of integers of different signs: 'UINT' (aka 'unsigned int') and 'int' [-Werror,-Wsign-compare]
            maxSrvMip          = (desc.Texture2D.MipLevels == -1) ? INT_MAX : maxSrvMip;
                                  ~~~~~~~~~~~~~~~~~~~~~~~~ ^  ~~

BUG=angleproject:1449

This reverts commit aeb477fbe5.

Change-Id: I01baaf082f282c9d80a9c17fd6ffc2b8911313b2
Reviewed-on: https://chromium-review.googlesource.com/361094
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2016-07-18 16:34:54 +00:00
Jamie Madill aeb477fbe5 GN: Enable chromium_code config instead.
Using "no_chromium_code" is a bit less strict, but ANGLE should be
able to handle slightly stricter warnings.

BUG=angleproject:1449

Change-Id: Ifaf77201085dd70cf5ff628b1aa02de55c5e96ba
Reviewed-on: https://chromium-review.googlesource.com/360940
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2016-07-18 15:29:24 +00:00
Dirk Pranke 313d944745 Stop linking a static_initializer into the Mac chromium build.
The :angle-image_util target was a source_set rather than a
static_library(), causing us to link in loadimage.cpp, which
pulled in mathutils.cpp, which contains a static initializer.
Switching :angle_image_util to a static library (which is what GYP
does) solved the problem.

R=rsesek@chromium.org, cwallez@chromium.org
BUG=628052

Change-Id: I63387b3fc9d799c92f7c1b49a1c7c7435e70a951
Reviewed-on: https://chromium-review.googlesource.com/360228
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
2016-07-14 18:34:44 +00:00
Frank Henigman e8d5c5c436 Check ozone_platform_gbm before doing gbm stuff.
Just checking use_ozone fails when building an ozone platform which
doesn't have gbm, e.g. chromecast.

BUG=angleproject:1439
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_gn_chromeos_rel;tryserver.chromium.android:android_compile_dbg

Change-Id: Idec14441ce30dd872b3bfddfe844abfeb910cc02
Reviewed-on: https://chromium-review.googlesource.com/358860
Reviewed-by: Luke Halliwell <halliwell@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
2016-07-07 21:55:31 +00:00
Geoff Lang 6e4cfceb80 Refactor ANGLE's image manipulation code into a static library.
Allows for chromium to make use of some of the functionality.

BUG=612205

Change-Id: Ib4435ca44775a3a554b0fb3bd384bd4d31d7952d
Reviewed-on: https://chromium-review.googlesource.com/351753
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
2016-07-04 22:06:07 +00:00
Frank Henigman 62ba96236e Require libdrm only if use_ozone=1.
This is more accurate, and doesn't break platforms with no pkgconfig,
e.g. Android.

BUG=angleproject:1297
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_gn_chromeos_rel;tryserver.chromium.android:android_compile_dbg

Change-Id: Iafbd66a5e81467d2a5431c3bb1ddd26a837888e7
Reviewed-on: https://chromium-review.googlesource.com/356481
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
2016-06-29 17:17:31 +00:00
Frank Henigman 77df676ea3 Add ozone display gn build.
Pick up ozone source when use_ozone = true.
Don't link X11 unless use_x11 = true.

BUG=angleproject:1297
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_gn_chromeos_rel

Change-Id: I94e6242189646c8a18b00436294bccdd4c5a8785
Reviewed-on: https://chromium-review.googlesource.com/352251
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
2016-06-23 18:02:48 +00:00
Robert Sesek db8ae83673 [Mac/GN] Properly set the install_name and rpath for shared_library targets and their consumers.
BUG=621932
R=cwallez@chromium.org

Change-Id: I10b0fd5a668d74b7062747002bc48ef0e0a6df9c
Reviewed-on: https://chromium-review.googlesource.com/354302
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2016-06-21 16:56:50 +00:00
Yuly Novikov a6426d6753 Android GL backend and end2end tests
Just the bare minimum implementation for end2end tests to run.

BUG=angleproject:1362
TEST=angle_end2end_tests on Nexus 5X

Change-Id: I92293e0f8bdc2ffaa5d4661927750d7cb3d931e6
Reviewed-on: https://chromium-review.googlesource.com/349353
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
2016-06-07 02:19:07 +00:00
Jamie Madill e2e406c3a4 Add base::numerics for safe math and conversions.
This replaces are "IsUnsignedXXXSafe" family of methods.
Also add overflow checks to unpack block sizes.

BUG=angleproject:1397

Change-Id: Ib47be149b0486c70f795b0d0f8899441faac9340
Reviewed-on: https://chromium-review.googlesource.com/348062
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2016-06-03 15:52:02 +00:00
Jamie Madill e31fd8753b Enable Release ASSERT in ANGLE.
This will mainly affect the Chromium bots.

BUG=angleproject:790

Change-Id: I0c4318e83eedba851f15b3b139551cdb6a2fde12
Reviewed-on: https://chromium-review.googlesource.com/346103
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2016-05-27 20:05:05 +00:00
Jamie Madill 9e54b5af89 Add Vulkan stubs.
Currently enabled for Windows by default.

BUG=angleproject:1319

Change-Id: I87921c579bee466465fb1e3f629bb3a40fdff659
Reviewed-on: https://chromium-review.googlesource.com/328730
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2016-05-25 20:05:11 +00:00
Yuly Novikov 87ae8cdf04 Fix Linux standalone compilation.
simple_texture_2d, hello_triangle, stencil_operations, simple_texture_cubemap
fail to compile after https://chromium-review.googlesource.com/342050.

BUG=angleproject:1319
TEST=ninja -C out/Release all

Change-Id: Ib70008036f8688b737f3f40b5224437a7afdea19
Reviewed-on: https://chromium-review.googlesource.com/346121
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
2016-05-20 00:48:21 +00:00
Nico Weber de44d3a43a gn/mac: Build GL code, and include CGL code.
BUG=chromium:431177

Change-Id: Id9c8ad68a9703591d6f576bfae3d7061526ed27f
Reviewed-on: https://chromium-review.googlesource.com/344740
Tryjob-Request: Nico Weber <thakis@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
2016-05-16 18:28:09 +00:00
John Bauman e271a7e4a1 Use data_deps to depend on :copy_compiler_dll
This should ensure that d3dcompiler_47.dll is saved into an isolate in
chromium, as it's used at runtime.

BUG=611235

Change-Id: I64801f00bf90f2be68c7a691724609bbf4d28dfa
Reviewed-on: https://chromium-review.googlesource.com/344351
Tryjob-Request: John Bauman <jbauman@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: John Bauman <jbauman@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
2016-05-12 03:00:53 +00:00
Steven Bennetts 369d03c191 Disable angle_enable_gl on chromeos
BUG=angleproject:1370

Change-Id: I63e3ee8fc6e08fcd2a908cdca3558af886526cbd
Reviewed-on: https://chromium-review.googlesource.com/342740
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2016-05-06 01:24:03 +00:00
Jeremy Roman 06feb81cb6 Make :angle_common depend on :commit_id.
BUG=chromium:601195
Change-Id: Ic90b8c8dbe07700e66c8fe973a3e620f439d2fbe
Reviewed-on: https://chromium-review.googlesource.com/337335
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
2016-04-07 13:48:45 +00:00
Corentin Wallez cc068e9385 Add DisplayGL::getDriverVersion and implementation on Linux NVIDIA
Some GPU driver bug workarounds should be active only for specific
driver version ranges. This adds NVIDIA Linux driver detection using
the XNVCtrl X11 extension.

BUG=590870

Change-Id: I8cbf692a0c8a6da7473169f29d720bdc2d07663d
Reviewed-on: https://chromium-review.googlesource.com/329637
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2016-03-26 01:17:51 +00:00
Corentin Wallez dbc9ccfb71 Remove the _ANGLE targets from the GN build.
They are no longer needed by Chromium.

BUG=522967

Change-Id: I187eed52378a58f3ea24c3e21082c6a93e56da7f
Reviewed-on: https://chromium-review.googlesource.com/325330
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2016-02-05 18:01:10 +00:00
Corentin Wallez adc5b0eb75 Fix translator having multiply defined symbols in GN builds.
This error was introduced in 82b5ab606f
where the translator's essl and glsl sources are compiled in both
the translator and translator_lib targets. As translator depends on
translator_lib this caused symbols to be defined multiple times.

BUG=angleproject:1250

Change-Id: I50bab7112d1460e14710f50250fa2417b2163236
Reviewed-on: https://chromium-review.googlesource.com/321770
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
2016-01-12 22:07:26 +00:00