src/tests/BUILD.gn


Log

Author Commit Date CI Message
Lingfeng Yang 13b708f2 2018-03-21T12:14:10 GLES1: glAlphaFunc BUG=angleproject:2306 Change-Id: I0bf229d3ab8a4a1217c12b434dcd8fa67d7cbadc Reviewed-on: https://chromium-review.googlesource.com/973897 Commit-Queue: Lingfeng Yang <lfy@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Luc Ferron 7a06ac1b 2018-03-15T10:17:04 Vulkan: Dynamic update of uniforms - This change enables us to update uniforms indefintely using VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC descriptor types. - Enables 219 new dEQP tests in the uniform_api namespace. - Creates a new white box test to validate new buffer allocation. Bug: angleproject:2392 Change-Id: I8146e6104a6b7727f63265a4671577d251a8fca8 Reviewed-on: https://chromium-review.googlesource.com/965929 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Yuly Novikov ad4f9642 2018-02-08T17:58:46 Allow ANGLE libs to have arbitrary suffix. In order to work with tools which intercept EGL and GLES calls. BUG=angleproject:2343 Change-Id: I63aec7a56648dc4b3e7f4aff7f7d1608709ba118 Reviewed-on: https://chromium-review.googlesource.com/920652 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Jamie Madill e2995cce 2018-03-09T17:43:45 Vulkan: Fix layers not being enabled on the bots. We were missing the data definition for the standard validation layer. This file was missing from the isolate, and the entire layer system was not working. Found this as a side-effect of working on depth stencil support. Also fixes a missing definition in the white_box_tests BUILD.gn. Also temporarily disables the ClearTest support for Vulkan because of an implementation bug on AMD. Unfortunately because of the failure mode it didn't work to just skip the test in the preamble. Bug: angleproject:2357 Change-Id: I4d06c54191b09e09a4ba68c24613db6f148b17e3 Reviewed-on: https://chromium-review.googlesource.com/956759 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Luc Ferron d50537a7 2018-02-07T17:02:08 Vulkan: Texture caps map We are generating the caps map using various bits from the results of vkGetPhysicalDeviceFormatProperties. This contains all the information required to fill out "renderable", "texturable" and "filterable". Later we'll need to read from vkGetPhysicalDeviceImageFormatProperties as well to get the sampleCounts. The tests for now are not very meaningful since they use the same logic as the caps code to build the expected results, however as soon as we'll add the hard-coded list of mandatory texture caps, the test will be a good validator that we are not breaking anything. We only check the optimal set of flags since it is the most restrictive set. isTexturable = flags contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT isFilterable = flags contain VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT isRenderable = flags contain VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT OR VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT Bug: angleproject:2348 Change-Id: I9da0712190d2678d7e377d6fcd4ca83d23eefd38 Reviewed-on: https://chromium-review.googlesource.com/908712 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 30414789 2018-02-12T15:16:02 Revert "GLES1: Link against angle_util_static instead of angle_util." This reverts commit da91c9a6d86c9ecd21c6ac724cf9576d7ee310d2. Reason for revert: Causes undefined behaviour in linker. Original change's description: > GLES1: Link against angle_util_static instead of angle_util. > > Attempting to work around missing .so on linux bots. > > BUG=angleproject:2303 > > Change-Id: I7fabad308afd420987369b460c13c00781113605 > Reviewed-on: https://chromium-review.googlesource.com/909028 > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Commit-Queue: Geoff Lang <geofflang@chromium.org> TBR=geofflang@chromium.org,lfy@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: angleproject:2303 Change-Id: I8d3f3d9bd618d9604cec0f02424f788cab25b3f9 Reviewed-on: https://chromium-review.googlesource.com/913550 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Lingfeng Yang <lfy@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang da91c9a6 2018-02-08T11:46:39 GLES1: Link against angle_util_static instead of angle_util. Attempting to work around missing .so on linux bots. BUG=angleproject:2303 Change-Id: I7fabad308afd420987369b460c13c00781113605 Reviewed-on: https://chromium-review.googlesource.com/909028 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang 15443eba 2018-01-31T16:41:53 Fix angle_gles1_conformance_tests compilation in Chromium. BUG=angleproject:2303 Change-Id: If22dd174d2a7b50b1416fa760494e99bbc813985 Reviewed-on: https://chromium-review.googlesource.com/894839 Reviewed-by: Lingfeng Yang <lfy@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Jamie Madill 5dd4ad89 2018-01-29T13:53:43 Vulkan: Add a perf test for the Pipeline cache. This micro-benchmark can be used to measure the performance impact of changing the Pipeline cache. For instance, we can check if changing the size of the hash key affects performance significantly. Also updates the build files so angle_perftests can see vulkan.h, and makes the Vulkan headers an explicit source set. This test currently shows that a lot of time is spent in PMurmurHash, with some time also spent in memcmp. Bug: angleproject:2163 Change-Id: Ie8bb3e31d58590f373d28cbbb59f7e372b80cc29 Reviewed-on: https://chromium-review.googlesource.com/884882 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Geoff Lang aba14ff5 2018-01-15T14:55:03 Add GLES1 conformance tests. BUG=angleproject:2303 Change-Id: I5955485e2392c573125bd8785ece103a9607f7d1 Reviewed-on: https://chromium-review.googlesource.com/867311 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Lingfeng Yang <lfy@google.com>
Corentin Wallez 9db70de8 2017-07-04T18:28:42 Reland: Implement EGL_ANGLE_iosurface_client_buffer Includes a fix for creating pbuffers with <buftype> EGL_D3D_TEXTURE with EGL_WIDTH and EGL_HEIGHT attributes. BUG=angleproject:1649 TBR=geofflang@chromium.org Change-Id: Id2974b8fab02c3218febfac708b9b034e65cbc53 Reviewed-on: https://chromium-review.googlesource.com/823248 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 7f5c3eb7 2017-12-12T14:54:17 Revert "Implement EGL_ANGLE_iosurface_client_buffer" This reverts commit c7abc08034a30a41748eefc5b628a76d4e2daa8a. Reason for revert: Might have broken Chromium Win10 composition due to validation changes. Original change's description: > Implement EGL_ANGLE_iosurface_client_buffer > > BUG=angleproject:1649 > > Change-Id: I1e72c31d7c9497ad14039a8d3fb97317ab193cb2 > Reviewed-on: https://chromium-review.googlesource.com/559107 > Reviewed-by: Corentin Wallez <cwallez@chromium.org> > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Commit-Queue: Corentin Wallez <cwallez@chromium.org> TBR=geofflang@chromium.org,cwallez@chromium.org Change-Id: I605b710b6d76056d6276b09822cd6ddca277bfd0 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:1649 Reviewed-on: https://chromium-review.googlesource.com/822172 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez c7abc080 2017-07-04T18:28:42 Implement EGL_ANGLE_iosurface_client_buffer BUG=angleproject:1649 Change-Id: I1e72c31d7c9497ad14039a8d3fb97317ab193cb2 Reviewed-on: https://chromium-review.googlesource.com/559107 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Jamie Madill 4f407ce2 2017-11-21T11:52:12 Fix Clang dEQP build on Win. Rolls the build/ repos from Chromium to include the fixed config. Also includes incidental improvements to platform-specific hooks. Bug: chromium:727437 Change-Id: Ia42a30acac1e800e593e304bfc59d86eb0a1e57c Reviewed-on: https://chromium-review.googlesource.com/782340 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 39644fee 2017-11-15T16:31:44 Fix Clang build with dEQP. This will require a Chrome-side patch to the build/ folder to enable the new path, with appropriate Chrome-side changes. Bug: chromium:727437 Change-Id: Iae8d8f4caeead703b322abce75c97c7c9d9e1619 Reviewed-on: https://chromium-review.googlesource.com/773021 Reviewed-by: Frank Henigman <fjhenigman@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 163965d5 2017-10-11T11:38:55 BUILD.gn: prepare dEQP test support on Mac BUG=angleproject:1569 Change-Id: I703f4739726c849950ba103049fa39498a4ff1df Reviewed-on: https://chromium-review.googlesource.com/744361 Reviewed-by: Frank Henigman <fjhenigman@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez aa9c396b 2017-10-27T14:54:39 Revert "BUILD.gn: prepare dEQP test support on Mac" This reverts commit 4b8b650c8e4586c14466faa9527175755860cd6b. Reason for revert: causes build failure on the Mac dEQP builder. Original change's description: > BUILD.gn: prepare dEQP test support on Mac > > BUG=angleproject:1569 > > Change-Id: I77aa55d28b884fa648ff52aedddf3a23fe6e4a8c > Reviewed-on: https://chromium-review.googlesource.com/713194 > Commit-Queue: Corentin Wallez <cwallez@chromium.org> > Reviewed-by: Frank Henigman <fjhenigman@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> TBR=fjhenigman@chromium.org,jmadill@chromium.org,cwallez@chromium.org Change-Id: Idc08cf12294505600890d1c6e43f62c0261631a5 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:1569 Reviewed-on: https://chromium-review.googlesource.com/741881 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 4b8b650c 2017-10-11T11:38:55 BUILD.gn: prepare dEQP test support on Mac BUG=angleproject:1569 Change-Id: I77aa55d28b884fa648ff52aedddf3a23fe6e4a8c Reviewed-on: https://chromium-review.googlesource.com/713194 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Frank Henigman <fjhenigman@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Frank Henigman d0ef13a2 2017-08-28T22:53:24 Stand-alone build with gn. This should do the same things as the stand-alone gyp build, but with gn. You should switch to gn as gyp support will go away. You need a recent enough version of gn. If yours is too old try this one: ./buildtools/linux64/gn If "gclient sync" or anything fails with an ImportError on gyp stuff, try running it with the following PYTHONPATH in the environment: PYTHONPATH=tools/gyp/pylib BUG=angleproject:1569 Change-Id: I56d19bec2d8b649a7bd65062c656cbfc69ea3dd8 Reviewed-on: https://chromium-review.googlesource.com/642588 Reviewed-by: Frank Henigman <fjhenigman@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Yuly Novikov 359487c8 2017-10-03T16:58:06 Build angle_perftests on Android BUG=chromium:675997 Change-Id: Ib6690f9f25a4ba4510cf6e18ba2054a9936dc574 Reviewed-on: https://chromium-review.googlesource.com/706455 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Corentin Wallez af01602e 2017-09-11T17:22:51 Allow compiling dEQP on Mac in Chromium checkout. BUG=angleproject:2137 Change-Id: I5d840fcd7fda85d7c33a2f261586e8c3733b9781 Reviewed-on: https://chromium-review.googlesource.com/661419 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez e98e16ea 2017-08-25T14:55:20 Update gpu_test_expectations and use angle_gpu_info_util This is to have the new "OS" for MacOS Sierra. Several types were introduced in angle_config.h to minimize the angle-mods.patch to make it easier to update in the future. BUG=angleproject:2137 Change-Id: I7a98c5cb48d424f83eb39763eba0e51852a9b98f Reviewed-on: https://chromium-review.googlesource.com/636202 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tom Anderson 802a73ba 2017-06-29T18:20:25 [ANGLE] Add missing dependency on exe_and_shlib_deps BUG=chromium:593874 Change-Id: I025f31e422cf3eb5db1730710cca26587c283839 Reviewed-on: https://chromium-review.googlesource.com/557350 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill 5ea762a6 2017-06-07T14:59:51 Consolidate base:: imports. This merges the mrucache and numerics into one folder, to prevent having to make two identical versions of logging. BUG=angleproject:2044 Change-Id: Iba6dab05b21eb9ba0de44f27a90579c590a9a7fd Reviewed-on: https://chromium-review.googlesource.com/522870 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Andrew Grieve 949e0700 2017-01-16T09:44:49 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>
Jamie Madill 037340d7 2017-01-09T14:22:10 perftests: Make into white box tests. By using the static libGLESv2 and libEGL, perftests can correctly test ANGLE internals (like the Index Data Manager) without having to export across shared object boundaries. This also will simplify invoking the perftests on the bots because we don't have to configure a special rpath to find the various shared objects it would otherwise need. BUG=angleproject:1660 BUG=chromium:675997 Change-Id: I114abb0756cf6f83e15025a0bcf292faf0064f5e Reviewed-on: https://chromium-review.googlesource.com/425712 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill dcab56a1 2017-01-05T14:47:34 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>
Jamie Madill 80ab03c5 2017-01-03T11:03:23 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>
Jamie Madill b8a580a3 2016-12-21T14:14:20 Enable building angle_perftests on Linux. BUG=chromium:675997 Change-Id: I3058892b80ccf61664d023419651fd4aa1dfec2a Reviewed-on: https://chromium-review.googlesource.com/423111 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Yuly Novikov d0239396 2016-10-31T20:01:54 Fix angle_deqp_egl_tests compilation on Android BUG=angleproject:1657 Change-Id: I5afb28485bd5ca7bdf7015f5fdcaa84ec3c02b95 Reviewed-on: https://chromium-review.googlesource.com/418710 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Corentin Wallez 7f07caa9 2016-10-25T07:43:33 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>
Yuly Novikov e653403b 2016-11-01T18:19:06 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>
Yuly Novikov e3352f94 2016-08-12T20:40:14 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>
Yuly Novikov 55033e58 2016-08-25T17:32:12 Revert "Change angle_util to be a shared library" This reverts commit 2f9b5e6f79cd576bd3b7110272d58f143801bf0f. 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>
Yuly Novikov 2f9b5e6f 2016-08-12T20:40:14 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>
Yuly Novikov ca05a081 2016-08-12T14:46:30 Compile deqp_gles2 on Android Add some missing functions, modify preprocessor conditions and build files to include some other missing functions when building for Android. BUG=angleproject:1471 Change-Id: Iadc0a0b9fed2444b8bc9a894ee65c8b66ea7f3c9 Reviewed-on: https://chromium-review.googlesource.com/368982 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Olli Etuaho b741c761 2016-06-29T15:49:22 Support precision emulation on HLSL Re-submit with missing virtual destructor and angle::NonCopyable added. Add precision emulation support to HLSL 4.1 output. This makes it possible for developers to test their shaders for precision issues easily on Chrome on Windows without having to use the GL backend. The patch has been verified with Chrome on Windows to reproduce some precision bugs in real-world WebGL content, including old versions of the babylon.js library. The EmulatePrecision AST transformation still relies on writing out raw shader code for the rounding functions, with raw HLSL code added alongside pre-existing GLSL and ESSL code. In some ways it would be nicer to do the EmulatePrecision step as a pure AST transformation, but on the other hand the raw code is much more readable and easier to optimize. To better support multiple output languages in EmulatePrecision, add a RoundingHelperWriter class that has different subclasses for writing the rounding functions in different languages. The unit tests are expanded to cover the HLSL output of precision emulation. The parts of the tests that require the HLSL output are only active on Windows where ANGLE_ENABLE_HLSL define is added to the unit tests. Putting the HLSL tests in an entirely separate file is a worse alternative, since it would require either a lot of code duplication or add a lot of boilerplate to the individual tests. BUG=angleproject:1437 TEST=angle_unittests Change-Id: I47d501037c206f4bd8b976d3acab9b21c717084c Reviewed-on: https://chromium-review.googlesource.com/360152 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
Martin Radev 28ff4fd8 2016-07-06T11:54:21 Add deqp gles 3.1 tests to the build files BUG=angleproject:1442 Change-Id: I2ef27478573ec362bff57b532f7fee5731333b06 Reviewed-on: https://chromium-review.googlesource.com/360121 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
Olli Etuaho 3fdaf6f2 2016-07-13T15:07:41 Revert "Support precision emulation on HLSL" Forgot to add virtual destructors. BUG=angleproject:1437 This reverts commit a42e8b2cb9d0857f53c0490b5be3bf25b4e1f827. Change-Id: If33fecfeca9947deedf4668c64dbadf25a5dc5eb Reviewed-on: https://chromium-review.googlesource.com/360122 Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Olli Etuaho a42e8b2c 2016-06-29T15:49:22 Support precision emulation on HLSL Add precision emulation support to HLSL 4.1 output. This makes it possible for developers to test their shaders for precision issues easily on Chrome on Windows without having to use the GL backend. The patch has been verified with Chrome on Windows to reproduce some precision bugs in real-world WebGL content, including old versions of the babylon.js library. The EmulatePrecision AST transformation still relies on writing out raw shader code for the rounding functions, with raw HLSL code added alongside pre-existing GLSL and ESSL code. In some ways it would be nicer to do the EmulatePrecision step as a pure AST transformation, but on the other hand the raw code is much more readable and easier to optimize. To better support multiple output languages in EmulatePrecision, add a RoundingHelperWriter class that has different subclasses for writing the rounding functions in different languages. The unit tests are expanded to cover the HLSL output of precision emulation. The parts of the tests that require the HLSL output are only active on Windows where ANGLE_ENABLE_HLSL define is added to the unit tests. Putting the HLSL tests in an entirely separate file is a worse alternative, since it would require either a lot of code duplication or add a lot of boilerplate to the individual tests. BUG=angleproject:1437 TEST=angle_unittests Change-Id: Ia4ba0374cd415908f16f34752321af1cb93525a5 Reviewed-on: https://chromium-review.googlesource.com/358473 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
Yuly Novikov a6426d67 2016-06-03T00:18:38 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>
Nico Weber 2a9358cc 2016-05-16T20:16:11 gn: Add a missing test. BUG=chromium:604060 Change-Id: I7e9b8c1bd7cb14daa15575cfcfe9ba3e8a1e6d1b Reviewed-on: https://chromium-review.googlesource.com/344701 Tryjob-Request: Nico Weber <thakis@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 3f16afd3 2016-02-05T10:20:59 Add in GN the data dependencies required by the dEQP tests. BUG=580045 Change-Id: I3424568c6b200d6b6eb9921c6c09a3b3c974d710 Reviewed-on: https://chromium-review.googlesource.com/326320 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez ae786455 2016-02-01T16:23:34 Tell GN about the dependecy of dEQP tests on expectations Without this, gn-built isolates do not include the test expectations file in the isolate, causing the test suite to bail out at startup. Also rename target_name to api_name as target_name is a special variable name when inside a target definition. BUG=580045 Change-Id: I20be39c7e50e24757a0828f9056613e171f0002f Reviewed-on: https://chromium-review.googlesource.com/325040 Tested-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Jamie Madill bc69f3be 2016-01-29T09:48:08 Build GN dEQP iff "build_angle_deqp_tests==true" BUG=580045 Change-Id: Id19f843e8a04d38938b6827a7a64970eb088bcc6 Reviewed-on: https://chromium-review.googlesource.com/324760 Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 6fd7472f 2016-01-20T10:59:34 Disable dEQP in GN. Change-Id: If2b3097f976a4433625b393c8562ea5d22c0c070 Reviewed-on: https://chromium-review.googlesource.com/322211 Reviewed-by: Nico Weber <thakis@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 1fae3556 2016-01-07T14:33:48 Add dEQP Linux GN integration. BUG=angleproject:1272 Change-Id: I20cb8968221c25bb374b3cc71d7ca619a35f1a2f Reviewed-on: https://chromium-review.googlesource.com/320781 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill edbc2449 2016-01-04T11:25:00 Add dEQP GN integration. This is Windows-only for now, but will be expanded to Linux. Also do a bit of refactoring in our deqp.gypi file. BUG=angleproject:1272 Change-Id: I526a99fe3b91a2d9e8901c7e033a4916a06780be Reviewed-on: https://chromium-review.googlesource.com/320800 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Kenneth Russell 539146e1 2016-01-06T19:34:18 Add rpath for GN build of angle_end2end_tests. This fixes the static library build of this target on Linux. BUG=angleproject:1270 Change-Id: Id65bd9b7136918829f385920b540a4df83650c6f Reviewed-on: https://chromium-review.googlesource.com/320615 Tested-by: Kenneth Russell <kbr@chromium.org> Tryjob-Request: Kenneth Russell <kbr@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Peter Kotwicz 27460dfc 2015-10-15T23:48:34 Do not attempt to compile angle_end2end_tests or angle_perftests on Android BUG=507294 Change-Id: Ied198a26f5eecab1dc608a06c2cc5e3be08cc28c Reviewed-on: https://chromium-review.googlesource.com/306460 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Peter Kotwicz <pkotwicz@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Peter Kotwicz <pkotwicz@chromium.org>
Jamie Madill 5a85bee2 2015-10-02T14:06:06 Add angle_perftests to GN. Also clean up the formatting a bit with gn format. BUG=537008 Change-Id: I23337e634f20f611aaae7d17ef47b5784738bbe8 Reviewed-on: https://chromium-review.googlesource.com/303793 Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez beb81589 2015-09-02T10:30:55 Make the end2end tests compile in the GN build. BUG=angleproject:929 Change-Id: Ifc5ad03579c3e187721842f7585f3f06b69cbf45 Reviewed-on: https://chromium-review.googlesource.com/296682 Reviewed-by: Dirk Pranke <dpranke@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez d4bcfa2c 2015-09-01T10:32:30 Make the unittests compile in the GN build. This changes angle_unittests.gypi to use a variable per list of files so that we can grab the list of files in conditions in BUILD.gn BUG=angleproject:929 Change-Id: I7fc73fd84d8efc1ea545fe672b1dba1c429b317f Reviewed-on: https://chromium-review.googlesource.com/296443 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>