src


Log

Author Commit Date CI Message
Arun Patole 56eee79f 2015-07-01T15:23:54 Move Float16ToFloat32 implementation to common Float16ToFloat32 is now required by constant folding of float pack/unpack built-ins as well, moving it to commom so that it is available in libangle_common instead of libANGLE. BUG=angleproject:913 TEST=angle_unittests Change-Id: I1e23bb98c1b725c79f933a66ddb9986133fec19c Reviewed-on: https://chromium-review.googlesource.com/282961 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Ben Wells e6e8c7c5 2015-07-01T16:48:31 Fix 'unused private field' warnings for clang. BUG=505317 Change-Id: I731b6e5ae5d5eba50f556314eeeebc6a3d29fc7a Reviewed-on: https://chromium-review.googlesource.com/282932 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Cooper Partin 1bd7dd45 2015-06-11T08:58:53 Added 16-bit formats to GLConfigs to reduce offscreen texture memory usage. BUG=angleproject:1042 Change-Id: I7024bd47601a21b08cafbf6460d512151b53d035 Reviewed-on: https://chromium-review.googlesource.com/277002 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 54c34e06 2015-07-02T15:06:55 Fix compilation on Linux BUG=angleproject:892 Change-Id: I135e356e1ec78c95e69a260bd0576e5285e759b5 Reviewed-on: https://chromium-review.googlesource.com/283225 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Cooper Partin 558f2b5a 2015-06-02T09:34:11 Added emulated indexed pointsprite rendering support. This emulation is for renderers that do not support Geometry Shaders. BUG=angleproject:949 Change-Id: I7acf003e83ea6661f10a703486e6d07eb28786f8 Reviewed-on: https://chromium-review.googlesource.com/274851 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Cooper Partin <coopp@microsoft.com>
Corentin Wallez ccda698b 2015-07-02T08:26:22 Remove redundant chdir in angle_deqp_test_main Fixes the tests not running directly from the VS UI. BUG=angleproject:1051 Change-Id: Ia299d8e7ad676330902725c114e8f5766db49d82 Reviewed-on: https://chromium-review.googlesource.com/283158 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez c491e0fb 2015-07-02T10:41:11 Fix command line being ignored in non-gtest dEQP tests BUG=angleproject:1051 Change-Id: If10abaea31ad29af9f8d438403f67b9dfbfd7e45 Reviewed-on: https://chromium-review.googlesource.com/283167 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez f5cb6aa5 2015-06-30T11:31:54 Port gpu_test_expectations and angle_deqp_googletest to Linux BUG=angleproject:1051 Change-Id: I46c3a5651d36750558735eb626ed5c9424b250b4 Reviewed-on: https://chromium-review.googlesource.com/282596 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Jamie Madill 2c70e64b 2015-07-02T15:09:58 Revert "D3D11: Refactor InputLayout cache." Seems to be failing maps_pixel_test on the bots. BUG=angleproject:959 This reverts commit 53fd1552ba7dbf91a726fce139d748860bd8a5f5. Change-Id: I1f2593caca58f701d284993d2ee313846806491b Reviewed-on: https://chromium-review.googlesource.com/283157 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 53fd1552 2015-07-02T07:26:19 D3D11: Refactor InputLayout cache. Using a much more compact input layout structure allows us to save quite a bit of time comparing input layouts, or computing hashes. A subsequent patch shrinks the size of the structure further. BUG=angleproject:959 Change-Id: I7a0f10428cc7e96967e60cc085ff2e8779718978 Reviewed-on: https://chromium-review.googlesource.com/277288 Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 03260faa 2015-06-22T13:57:22 D3D11: Optimize checks for active UBOs. We can reduce the amount of iterations we use by using std::vectors for storing UBO indexes, and resizing them to the max active index. This allows us to skip inactive ranges. Reduces draw call overhead. BUG=angleproject:959 Change-Id: I2577e5dbdce0e5ab102ca916eb7f1f35cf03f9ad Reviewed-on: https://chromium-review.googlesource.com/277287 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Daniel Cheng f33ab835 2015-06-30T19:08:16 Fix some clang warnings with -Wmissing-braces in ANGLE. Clang warns if there are missing braces around a subobject initializer. The most common idiom that triggers this is: STRUCT s = {0}; which can be more simply written as: STRUCT s = {}; BUG=505297 Change-Id: Ib4513ee195d43e7c4a4a2f46c328866f0023a2a5 Reviewed-on: https://chromium-review.googlesource.com/282921 Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Kenneth Russell <kbr@chromium.org>
Dmitry Skiba 7f17a50c 2015-06-22T15:08:39 Store TFunction::returnType by a const pointer. On 32-bit Android this change saves ~30KiB per compiler instance. BUG=492725 Change-Id: I8bea48d57ee7eac0a0ee417035085c0d335aea09 Reviewed-on: https://chromium-review.googlesource.com/281047 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Dmitry Skiba <dskiba@google.com>
Dmitry Skiba efa3d8eb 2015-06-22T14:52:10 Change TSymbolTable::insertBuiltIn() TType* pointers to const. Const types make it possible to implement caching and other optimizations. BUG=492725 Change-Id: I64398bb9effcc909dd052a038acbb5ec0ca730e8 Reviewed-on: https://chromium-review.googlesource.com/281046 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Dmitry Skiba <dskiba@google.com>
Jamie Madill 517ccdf8 2015-06-30T11:02:55 Rename DeferredShader to LazyShader. Deferred rendering is a shading technique, and "lazy" is the more correct term. Also rename a few methods so we can use a shared interface for other types of lazy D3D11 resources. BUG=angleproject:1014 Change-Id: I2fd2c823291d414003690066eaec063f1cd0bc4c Reviewed-on: https://chromium-review.googlesource.com/282550 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> Reviewed-by: Brandon Jones <bajones@google.com>
Corentin Wallez a55e4b7a 2015-06-09T13:30:25 Enable compilation of dEQP tests on Linux BUG=angleproject:1051 Change-Id: I158e59ca581b580825848e831d05064cdcc30d96 Reviewed-on: https://chromium-review.googlesource.com/276202 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Minmin Gong d3e7aa33 2015-06-29T12:25:24 Allow calling HandleAllocator::reserve with MAX_UINT. BUG=angleproject:1052 Change-Id: I03883799ef334f39c9e855a0a4b7af1ab02d5da9 Reviewed-on: https://chromium-review.googlesource.com/282414 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Minmin Gong <mgong@microsoft.com>
Jamie Madill 006909d6 2015-06-30T12:33:22 Update failing WebGL test expectations. Change-Id: I8c469dad3e6a084e5b37a76ea3a1f86b9a99d613 Reviewed-on: https://chromium-review.googlesource.com/282624 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Austin Kinross 137b1517 2015-06-17T16:14:53 Improve D3D GetProgramBinary chipset validation - Check chipset identifying info before trying to compile shaders - Check device feature level when loading a binary - Use chipset VendorID/DeviceID etc instead of LUID so that program binaries remain valid across system reboots Change-Id: I88ba4543bb990956d1d8fb324abf9784d72950cd Reviewed-on: https://chromium-review.googlesource.com/280428 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Austin Kinross 5a6dec50 2015-06-12T14:53:53 Ensure FencSyncTests::BasicOperations can't get stuck in an infinite loop BUG=angleproject:1053 Change-Id: If6661ce3d87cdf44b1d45911418ecf78b5e6175a Reviewed-on: https://chromium-review.googlesource.com/277370 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 476682e6 2015-06-30T10:04:29 Use std::vector for TranslatedAttribs. This allows us to cache a std::vector between calls, and avoids us calling allocation/constructors for locals, which saves us some time. It also allows us to use the vector's size to limit the range of attribs we look at. BUG=angleproject:959 Change-Id: I799ed6c92fa8fca96e92e235b125a11d2d551aab Reviewed-on: https://chromium-review.googlesource.com/277286 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 46565a42 2015-06-22T13:57:21 Small optimization to VertexDataManager. Avoid calling a getter repeatedly in a loop, when we can instead store a local reference to an array. BUG=angleproject:959 Change-Id: I507ad1a6cf3bb6183dd3499df024dfec6950a6c8 Reviewed-on: https://chromium-review.googlesource.com/277285 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Sam McNally 5a0edc62 2015-06-30T12:36:07 Change intializer list order to match field order. BUG=505304 Change-Id: I38149e72732f0b4eb7d398f90b5d11660e2a7fbc Reviewed-on: https://chromium-review.googlesource.com/282465 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill fdee4112 2015-06-26T14:27:31 Roll dEQP 554adf..92f7752. Includes updated Licences. https://android.googlesource.com/platform/external/deqp/+log/554adf..92f7752 BUG=angleproject:998 Change-Id: If2da8719addeef25ec46adc105cf63c8b861f55a Reviewed-on: https://chromium-review.googlesource.com/282271 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@google.com> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez ac2582d3 2015-06-26T13:18:18 WindowSurfaceGLX: swap before resizing the child window BUG=angleproject:892 Change-Id: I9b27777547624959fce6e045f9aac2652f139b9b Reviewed-on: https://chromium-review.googlesource.com/282058 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 9de512e2 2015-06-26T13:16:50 WindowSurfaceGLX: Fix child window creation size This makes Chrome on ANGLE work on Linux without obvious bugs. BUG=angleproject:892 Change-Id: I595ac00a6646cb407941932b0d4f9f020d4cd059 Reviewed-on: https://chromium-review.googlesource.com/282057 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Geoff Lang e6d4e12c 2015-06-29T13:33:55 Add remaining ES3 caps queries. BUG=angleproject:1049 Change-Id: Ib5076380c692f4fa94921692baa7da14440556d1 Reviewed-on: https://chromium-review.googlesource.com/282386 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Jamie Madill 27c08917 2015-06-22T13:57:20 Cache active attribute lists in VertexDataManager. This saves us re-creating vector memory every iteration, and allows us to iterate over much smaller lists of attributes. In the future it could allow us to update the cache more efficiently with state change updates. BUG=angleproject:959 Change-Id: Ie8ae7a31726468dc2184165380f1f3e5e0152936 Reviewed-on: https://chromium-review.googlesource.com/277284 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 3d72cc79 2015-06-22T13:57:19 Pass current value type instead of the object. This allows us to simplify the logic in VertexDataManager enough that we can start to cache attribute information. BUG=angleproject:959 Change-Id: I7b53a137d73f40f86e3acb9caebb66f9cacf8b6f Reviewed-on: https://chromium-review.googlesource.com/277283 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 2a46b4e8 2015-06-29T15:06:49 Remove the PackUnpackHalfOverflow test. Different drivers handle overflow differently. The overflow case is not defined in the spec. BUG=angleproject:1044 Change-Id: I9e3883af147c6c1a4fcdcddea3ff70c62f859c56 Reviewed-on: https://chromium-review.googlesource.com/282540 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 8273e006 2015-06-15T13:40:19 Add new GLSL target versions. Test the emulated GLSL functions against multiple GL versions. BUG=angleproject:1044 Change-Id: I1e12523301042f0d541ab2f4e73f02319d1584ef Reviewed-on: https://chromium-review.googlesource.com/277702 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 83ab236f 2015-06-23T13:18:03 Improve the test precision in PackUnpackTest. * Output to floating point framebuffers so that results are not truncated to 8 bit normalized values. * Tighten the epsilon from 1/255 to 0.0005. May need further tweaking as more GPUs are tested. * Explicitly check for -inf and inf values when they were previously rounded to 0 and 255. * Explicitly check for clamping of overflowed normalized floats by providing the expectations instead of computing them. BUG=angleproject:1044 Change-Id: I8410cf61fe79a9919fb0db7e415bf97b2d0abd9e Reviewed-on: https://chromium-review.googlesource.com/281191 Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang b3a6a8f3 2015-06-23T16:10:14 Error when encountering non-preprocessor tokens before #extension in ESSL3. BUG=angleproject:1047 Change-Id: I4a548270f651e35b2c8d1ab5d0f46185230c5f74 Reviewed-on: https://chromium-review.googlesource.com/281216 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 34d719b5 2015-06-26T15:28:06 Revert "Revert "dEQP: Compile dEQP targets in Chromium."" Should be fixed now with latest patches. BUG=angleproject:998 BUG=500736 This reverts commit d0071dd9c39d0ada72292d476d8e8e081731c953. Change-Id: I3a611bfa10429a1f97d18e9aa1f316eabb67d114 Reviewed-on: https://chromium-review.googlesource.com/282055 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 4d06a24c 2015-06-26T11:12:24 dEQP: Extend GoogleTest support. *re-land after rebase on top of Chrome build fix* This patch will enable a Chromium-side CL to build dEQP/ANGLE with GoogleTest. BUG=angleproject:998 BUG=500736 Change-Id: Id02c66a260b0a7bab3de9cda624fe097322b2d3c Reviewed-on: https://chromium-review.googlesource.com/281824 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@google.com> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill 86bc3a66 2015-06-26T11:12:23 dEQP: Move the DEPS dirs to mirror Chromium. This avoid us needing to replicate gyp variables in both Chromium's and ANGLE's common.gypi files. BUG=angleproject:998 Change-Id: Iba1938fd37eb4bee28ae7daad31bf85a2d3bd692 Reviewed-on: https://chromium-review.googlesource.com/282145 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@google.com> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Arun Patole 7fa3355f 2015-06-10T15:15:18 Add constant folding support for matrix built-ins This change adds constant folding support for following matrix built-ins: - matrixCompMult, outerProduct, transpose, determinant and inverse. BUG=angleproject:913 TEST=angle_unittests(new: MatrixUtilsTest, ConstantFoldingTest.*Matrix*), dEQP Tests: dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.* (All 54 tests started passing with this change) Change-Id: I7b9bf04b9a2cbff72c48216cab04df58c5f008d6 Reviewed-on: https://chromium-review.googlesource.com/276574 Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 9e582b93 2015-06-22T11:18:32 perf_tests: Normalize MS counts in EGL init test. The un-normalized values depend on the number of frames rendered, so if we optimize down one time, the other ms values all increase, because we are rendering more frames. This generates spurious perf alerts from the perf dashboard. BUG=None Change-Id: I1bc480141a8cad7eee96bcdf4d6747a3cbae30f2 Reviewed-on: https://chromium-review.googlesource.com/280980 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 7d112bb9 2015-06-22T13:57:19 Refactor source pointer math out of VertexBuffer9/11. This math can live in a single place in the VertexDataManager. This cleans up the code and paves the way for future optimizations. BUG=angleproject:959 Change-Id: I7138c6e080d9c3d6507b55d981bfb62c2590a2a8 Reviewed-on: https://chromium-review.googlesource.com/277282 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 9c38580b 2015-06-22T13:57:18 Refactor VertexDataManager to store translated attrib. Refactoring patch only. Reduces the number of parameters we need to pass around in internal functions. Clears the way for future optimization work. BUG=angleproject:959 Change-Id: Ic98ab5a07189eaa053dffce994546666bb07cede Reviewed-on: https://chromium-review.googlesource.com/277281 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Kenneth Russell 3b345ebd 2015-06-24T17:24:20 Fix ANGLE build on Chrome OS ARM. These builders set use_x11=1 but don't have GLX headers. Avoid trying to compile ANGLE's GL, GLX and X11 sources on Chrome OS at all. BUG=503173,angleproject:892 Change-Id: I7f5862bb83b33f6ce302244fa5668295789a3a41 Reviewed-on: https://chromium-review.googlesource.com/281778 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Kenneth Russell <kbr@chromium.org>
Kenneth Russell 0eb0a816 2015-06-19T20:18:16 Fix seg fault in IsPlatformAvailable. Some GLX implementations can't handle having libGL.so.1 dlclose'd out from under them while there's any X window still open against which a GLXWindow was ever created. Load the library once per process rather than once per FunctionsGLX instance. This showed up as a crash in X11Window::destroy, during XCloseDisplay. BUG=angleproject:892 Change-Id: I0da2674786a952865e5bea2513259c0a32d4453c Reviewed-on: https://chromium-review.googlesource.com/280902 Tested-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Corentin Wallez <cwallez@google.com>
Jamie Madill 57cdc69c 2015-06-23T21:03:06 Revert "dEQP: Extend GoogleTest support." Causing runhooks failures: gyp: Undefined variable deqp_path in C:\b\build\slave\GPU_Win_Builder\build\src\third_party\angle\src\tests\tests.gyp BUG=angleproject:998 BUG=500736 This reverts commit 8edd75d1bb6680e7c2018ece9f5c81e3b87bf938. Change-Id: I8cd83bb5871dea81abea61554b182825145298e6 Reviewed-on: https://chromium-review.googlesource.com/281208 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill d0071dd9 2015-06-23T21:01:01 Revert "dEQP: Compile dEQP targets in Chromium." Causing runhooks failures: gyp: Undefined variable deqp_path in C:\b\build\slave\GPU_Win_Builder\build\src\third_party\angle\src\tests\tests.gyp BUG=angleproject:998 BUG=500736 This reverts commit 3018c206abd1fbfb94ab049326ff89f1f8cf3be4. Change-Id: I8c0402fb7465101a9331cbb2020693469d644e7e Reviewed-on: https://chromium-review.googlesource.com/281194 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez eed29ebb 2015-06-23T12:43:38 Simplify the assignment of use_x11. Hopefully fixes the flaky compile errors in ChromeOS BUG=angleproject:892 BUG=503173 Change-Id: Ifd79f1e382c12be3aecd9efb4860287df7d43060 Reviewed-on: https://chromium-review.googlesource.com/281180 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Jamie Madill 3018c206 2015-06-22T15:35:54 dEQP: Compile dEQP targets in Chromium. This switches the primary targets for dEQP into the non-standalone namespace, so we can build dEQP ANGLE tests on Windows with Chrome. BUG=angleproject:998 BUG=500736 Change-Id: I2ae25f31ab123c49965412445f661b6b69d19109 Reviewed-on: https://chromium-review.googlesource.com/281020 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 8edd75d1 2015-06-22T15:35:53 dEQP: Extend GoogleTest support. This patch will enable a Chromium-side CL to build dEQP/ANGLE with GoogleTest. BUG=angleproject:998 BUG=500736 Change-Id: Ie480e3319c1bd77dd1de2c964f78ef97297fcfe9 Reviewed-on: https://chromium-review.googlesource.com/280856 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Geoff Lang e148f3d3 2015-06-17T11:41:28 Fix lots of compilation errors in generated GLSL functions. Reformatted to improve readability. BUG=angleproject:angleproject:947 Change-Id: I467f0396a0318b7a51d5cafce3f11e55d929c369 Reviewed-on: https://chromium-review.googlesource.com/278250 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 7b9b284b 2015-06-15T11:02:49 Refactor GLSL version calculations for emulated functions. Pass the target GLSL version to InitBuiltInFunctionEmulatorForGLSL so that it can be updated to generate emulated functions for multiple versions. BUG=angleproject:1044 Change-Id: I34c408df52fd0f7d6c2f66d0579ac854afd93b87 Reviewed-on: https://chromium-review.googlesource.com/277700 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 12425d25 2015-06-22T15:35:52 dEQP: Rename deqp_dir to deqp_path. The same for the other dEQP gyp path vars. BUG=angleproject:998 Change-Id: I7c123dbd8983e032dc9339bf289259e6d8ec654b Reviewed-on: https://chromium-review.googlesource.com/281009 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill 8e8a1c68 2015-06-22T15:35:51 dEQP: Move libtester sources to a gyp variable. This keeps the target definition cleaner and will enable GN, if we ever get to that point. BUG=angleproject:998 Change-Id: I8692c93155a6bada9b1b0c05a1dd34af64a3b400 Reviewed-on: https://chromium-review.googlesource.com/280992 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill b3f4e8d1 2015-06-22T13:57:17 Refactor VertexDataManager's current value cache. This clears the way for future optimizations. BUG=angleproject:959 Change-Id: Ief9077159e1e5fed5670862454a6f0b41d630551 Reviewed-on: https://chromium-review.googlesource.com/277280 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill f9327d33 2015-06-22T13:57:16 D3D11: Optimize ProgramD3D::sortAttributesByLayout. We can use pointer math here, instead of copying values. BUG=angleproject:959 Change-Id: I3b87956224d0846c9011f5d8edb811bc5e4f2b85 Reviewed-on: https://chromium-review.googlesource.com/277119 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 9bbfdd63 2015-06-22T18:38:09 Try setting use_x11 to 0 when doing a linux chromeos build. BUG=503173 Change-Id: I31c09a1d0849de14cc72ba3a357e482c7e329a46 Reviewed-on: https://chromium-review.googlesource.com/281025 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Cooper Partin 1acf438b 2015-06-12T12:38:57 Added define to enable/disable uniform precision validation for shaders. This feature was requested by developers to allow non-conformant shaders to be used which contain mismatched precisions. Change-Id: I57899efe064f7ffed1c0e43a508930ac70f6aa03 Reviewed-on: https://chromium-review.googlesource.com/277340 Tested-by: Cooper Partin <coopp@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Cooper Partin a0b8a41c 2015-06-12T16:24:52 Updated libEGL to have correct application revision type for winrt project generation. Change-Id: Ifc4ffda8a80d2317dda70f5bf2add53ea91df961 Reviewed-on: https://chromium-review.googlesource.com/277420 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill aa9e9971 2015-06-22T13:57:16 D3D11: Reduce overhead of clearing unused textures. *re-land with compile fix* We would spend a fair bit of time iterating over the unused textures, setting them to null one-by-one, and updating our cache. We can reduce this time by smarter caching, and skipping unmodified ranges. BUG=angleproject:959 Change-Id: I4de20bc131c4a568108ad670a2ef491cfd4c50ed Reviewed-on: https://chromium-review.googlesource.com/280916 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill d4898490 2015-06-22T17:56:18 Revert "D3D11: Reduce overhead of clearing unused textures." Compile error on Windows: error C2561: 'rx::Renderer11::clearTextures' : function must return a value BUG=angleproject:959 This reverts commit 475e5b7f91f8ed9688b5a46efe54f15357096e3e. Change-Id: Id34ff9530a71ce43549e2eb78d2d927084d46a47 Reviewed-on: https://chromium-review.googlesource.com/280915 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 475e5b7f 2015-06-22T13:12:45 D3D11: Reduce overhead of clearing unused textures. We would spend a fair bit of time iterating over the unused textures, setting them to null one-by-one, and updating our cache. We can reduce this time by smarter caching, and skipping unmodified ranges. BUG=angleproject:959 Change-Id: I92f11cf63542c55bb3adbbb8276a54bcfe848f61 Reviewed-on: https://chromium-review.googlesource.com/277118 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Austin Kinross bb579f8c 2015-06-18T13:31:49 In WinRT, prevent too many calls to DXGIGetDebugInterface1 Change-Id: Id0ec9eb40566f7c2169b228394fb3afe9f32e6f5 Reviewed-on: https://chromium-review.googlesource.com/280551 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Corentin Wallez e2adce1b 2015-06-19T23:06:32 Workaround for some STLs not parsing floats with a suffix BUG=angleproject:1046 BUG=angleproject:891 Change-Id: I01c3f024142e573385a5f40d721171ad752ffd19 Reviewed-on: https://chromium-review.googlesource.com/278210 Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 52445286 2015-06-09T09:15:54 Add a OSPixmap class to have cross platform pixmaps This will help make the deqp support code platform agnostic. BUG=angleproject:892 Change-Id: I6f8c738ed8125057db87afea2079583f8feac977 Reviewed-on: https://chromium-review.googlesource.com/276201 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez ce991cf6 2015-05-27T15:07:33 Add OSWindow::takeScreenshot to be used by some dEQP egl tests This helps make dEQP support platform agnostic BUG=angleproject:892 Change-Id: Ifd9436caa8c79018a053c27e32b514ef9ebee707 Reviewed-on: https://chromium-review.googlesource.com/273596 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 3c85635d 2015-05-27T12:50:55 Add SetLowPriorityProcess to utils and use it in dEQP support This provides a cross-platform way to make sure dEQP runs in a low priority process. BUG=angleproject:892 Change-Id: I0d12f1eacb78be43edcdb6622f945734c0b377ff Reviewed-on: https://chromium-review.googlesource.com/273595 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 774c66f3 2015-05-27T12:37:42 dEQP support: use OSWindow instead of tcuWin32Window This is to help dEQP support become cross platform. BUG=angleproject:892 Change-Id: I4480b64a33b1725fb42769bf7dddef1b4ee27c83 Reviewed-on: https://chromium-review.googlesource.com/273594 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez f0c1d029 2015-06-18T18:37:09 Fix compilation errors and Mac and some try bots BUG=angleproject:892 Change-Id: I9a449889109b7df9c69776573b0fc2098cd06199 Reviewed-on: https://chromium-review.googlesource.com/280565 Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 4ffd7790 2015-06-11T15:28:33 DisplayGLX: add error checking for the dummy pbuffer creation BUG=angleproject:892 Change-Id: I7a15f2be19a598e40d4fa5a7c70d879cdbc6d32a Reviewed-on: https://chromium-review.googlesource.com/277011 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez e1a5518e 2015-06-18T19:20:55 Fix defines being exported outside of ANGLE This should fix a build failure on a GPU try bot so we can Roll ANGLE BUG=angleproject:892 Change-Id: I86cb0135dc71b003f691633e339d5d0527eaace4 Reviewed-on: https://chromium-review.googlesource.com/280396 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Kenneth Russell 62342590 2015-06-18T17:29:52 Revert "Add workaround for flushing before readPixels." This reverts commit 46c13a15fa90130eca14301a4ef6deed12315037. Seems to have introduced significant flakiness on the Windows AMD FYI bot. Reverting while investigating. Change-Id: I9cfdb09a4a0d792a0c5db76c8b0b9d3285c0695a Reviewed-on: https://chromium-review.googlesource.com/280365 Tested-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Kenneth Russell 46c13a15 2015-06-17T16:33:50 Add workaround for flushing before readPixels. This has been found necessary on the D3D11 backend on AMD GPUs, and on the D3D9 backend on all GPUs. Tested an earlier version of this patch overnight on one of the affected Windows AMD bots; it eliminated the flakiness observed on one of the WebGL conformance tests. BUG=491419 Change-Id: I668493eb5ec109b5e0650c154dc97b786e0745bd Reviewed-on: https://chromium-review.googlesource.com/278265 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Kenneth Russell <kbr@chromium.org>
Corentin Wallez 322653bf 2015-06-17T18:33:56 Fix Chromium build of angle_end2end_tests BUG=angleproject:892 Change-Id: I9922046fc9e4d82d7034405f5952263f982c6529 Reviewed-on: https://chromium-review.googlesource.com/278159 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez fd0957d9 2015-06-17T18:26:24 Fix standalone compilation on Linux Use a "gyp trick" to define a default value for use_x11, thanks goes to kbr for remembering the other instance of this trick. BUG=angleproject:892 Change-Id: Ifb64af4e56d9eb90993760a495008d95dd31ae3d Reviewed-on: https://chromium-review.googlesource.com/278158 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Dmitry Skiba 2539fffa 2015-06-16T17:56:09 Add ShClearResults() for clearing last compilation results. This helps reclaiming memory used by the results when we don't need them anymore. BUG=492725 Change-Id: I4bc11be27b23589548120f0dc43e9979bf894089 Reviewed-on: https://chromium-review.googlesource.com/277808 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Dmitry Skiba <dskiba@google.com> Tested-by: Dmitry Skiba <dskiba@google.com> Reviewed-by: Dmitry Skiba <dskiba@google.com>
Jamie Madill e9e4c7f7 2015-06-12T11:40:33 Roll dEQP 9b4161..554adf1. Includes some tests for EXT_debug_marker https://android.googlesource.com/platform/external/deqp/+log/9b4161..554adf1 BUG=None Change-Id: I911fcb5577caefaa1fe3479445146a2b3f819124 Reviewed-on: https://chromium-review.googlesource.com/277140 Reviewed-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 3f6096b7 2015-06-17T09:11:31 Fix some markdown syntax that github had trouble parsing. Change-Id: I00f4409b7c6e12bb0cd6944a488fde3f6ef4054c Reviewed-on: https://chromium-review.googlesource.com/278055 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang ee09b58e 2015-06-16T15:13:52 Notify the VertexArrayImpl when a buffer is detached. Update VertexArrayGL to clear it's cached buffer binding when a buffer is detached to prevent name aliasing. Fixes: * DEQP standalone crashes. * WebGL Conformance DEQP tests. Change-Id: If21a617629e15873ddeae0368b5399616f2ca68b Reviewed-on: https://chromium-review.googlesource.com/278050 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang a80d4046 2015-06-15T11:44:30 Document ESSL3 builtin functions and which GLSL version they became core in. BUG=angleproject:1044 Change-Id: I1cd35f17a2d6cc384ac1bfae72a23a092ca50244 Reviewed-on: https://chromium-review.googlesource.com/277701 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Corentin Wallez <cwallez@google.com> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 3dc5d070 2015-06-16T13:25:55 Skip MaxAttribs test on all AMD/OpenGL configs. Change-Id: Ia1c4f230a51c49a48db2d12749b9a028a17168e3 Reviewed-on: https://chromium-review.googlesource.com/277727 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 8e695edb 2015-06-15T17:00:44 Fix support for GL_MAX_ATTRIBS attributes. *re-land with fix for AMD/ES2/OpenGL.* An off-by-one bug slipped in that broke support for these edge case shaders. Bug introduced in https://chromium-review.googlesource.com/#/c/266928/ BUG=angleproject:1045 BUG=500116 Change-Id: If44f809d432221d1e17afc407d49e87e0cb7504c Reviewed-on: https://chromium-review.googlesource.com/277664 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 464a6b8b 2015-06-15T21:25:28 Revert "Enable point sprites in StateManagerGL." Speculative fix for failures on the AMD FYI bot. This reverts commit 67e04be12dda07ac9b37798558e842f50bd42776. Change-Id: Ia57e3c800a6ff9e81e31bf5b37a95e97460ceda4 Reviewed-on: https://chromium-review.googlesource.com/277681 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 588e7ed2 2015-06-15T20:59:24 Revert "Fix support for GL_MAX_ATTRIBS attributes." Breaks the AMD bot's OpenGL tests. VertexAttributeTest.MaxAttribs/3: shader compilation failed: Vertex shader failed to compile with the following errors: ERROR: error(#272) Implicit version number 110 not supported by GL3 forward compatible context ERROR: error(#273) 1 compilation errors. No code generated shader compilation failed: Fragment shader failed to compile with the following errors: ERROR: error(#272) Implicit version number 110 not supported by GL3 forward compatible context ERROR: error(#273) 1 compilation errors. No code generated BUG=angleproject:1045 BUG=500116 This reverts commit 3f3d75ea6c20826adb6240f1573fd7139939a986. Change-Id: I8cdd024fcf49f1ade553dae2cdbe8b02d8fba364 Reviewed-on: https://chromium-review.googlesource.com/277673 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 67e04be1 2015-06-08T11:05:40 Enable point sprites in StateManagerGL. Fixes: * conformance/rendering/point-size.html * conformance/rendering/point-with-gl-pointcoord-in-fragment-shader.html * PointSpritesTest * particle_system sample BUG=angleproject:883 Change-Id: Idb3352fa916cf08817496f0a8425c95ece9bfa49 Reviewed-on: https://chromium-review.googlesource.com/275860 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 3f3d75ea 2015-06-15T14:10:42 Fix support for GL_MAX_ATTRIBS attributes. An off-by-one bug slipped in that broke support for these edge case shaders. Bug introduced in https://chromium-review.googlesource.com/#/c/266928/ BUG=angleproject:1045 BUG=500116 Change-Id: Iddfe0c21bef3c3a61017ba56d9e1fc001c0a3703 Reviewed-on: https://chromium-review.googlesource.com/277476 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Austin Kinross 6ee1e786 2015-05-29T17:05:37 Implement GL_EXT_debug_marker in D3D9/D3D11 renderers BUG=angleproject:1043 Change-Id: I7f3bfb35050662520b901828d0478719fa8d11b3 Reviewed-on: https://chromium-review.googlesource.com/274054 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Austin Kinross <aukinros@microsoft.com>
Austin Kinross 9fc2e4c3 2015-06-10T10:23:58 Reduce hardcoded D3D11 assumptions in DrawBuffersTest Change-Id: I9b93cc6ee7218a92dda80dbc3f70aec6fef69ded Reviewed-on: https://chromium-review.googlesource.com/276598 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Cooper Partin ab4fd98f 2015-05-15T14:58:22 Small fixes for passing code analysis tools. BUG=angleproject:1005 Change-Id: I8f2a6c0a5a6157303e436b96cc4c4ff1c29cfe18 Reviewed-on: https://chromium-review.googlesource.com/271600 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 3975ddec 2015-06-10T18:56:12 Blit11: Defer loading some resources until we use them. We can also defer loading InputLayouts and other resources in Blit11 if we don't need them immediately. BUG=angleproject:1014 Change-Id: I859583e4696e5864dfd8d436143ed9ddbc2fd60d Reviewed-on: https://chromium-review.googlesource.com/275779 Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill e636e140 2015-06-10T18:56:11 Blit11: Defer built-in shader loads. Introduce a 'DeferredShader' utility class. Other classes can use DeferredShader to delay loading shader resources until we render with them, which saves on loading time as well as memory, if we aren't using particular shaders. BUG=angleproject:1014 Change-Id: Ic6767c3c422a7fedbf23cce5d0c9d822aaf2e652 Reviewed-on: https://chromium-review.googlesource.com/275778 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill 8eeb2bd1 2015-06-10T18:56:09 Add multisample render target info to DXGI tables. Saves us some time on startup. Also assume every multisample format can support 1x multisampling, and that if we support a higher format we support all lower sample counts (eg - if we support 16x we support 8x and 4x, etc) BUG=angleproject:1014 Change-Id: I62143e5db561b717edd1a0c96f5e3acd4de3d154 Reviewed-on: https://chromium-review.googlesource.com/275777 Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Austin Kinross 405f3471 2015-06-04T13:09:06 In D3D11, check for 16-bit texture support and use if possible BUG=angleproject:1002 The last patch added new tests which failed on some Intel Win7 machines. This was due to a driver bug. Windows Updates have been applied to the failing machine, and the tests now pass. Changes between second and current (third) failed 16-bit patch: - Reenable usage of 16-bit DXGI textures on all Intel cards - Disable 16bpp tests on Intel D3D11 until the bots are updated - Updated Win7 test machine. Tests now pass Changes between first and second failed 16-bit patch: - Disabled usage of 16-bit DXGI textures on all Intel cards - Added DXGI->GL conversion entries for 16-bit formats, which fixes FBO readback issues. The ES CTS and dEQP tests which failed with the last patch now pass. Change-Id: Id8ea89bfbc450beea54afdd398956bc97ecf3c01 Reviewed-on: https://chromium-review.googlesource.com/275082 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Austin Kinross <aukinros@microsoft.com>
Jamie Madill 3973c7e3 2015-06-10T14:54:11 Add DXGI format info for depth-stencil. This will save us some queries on D3D11 startup. BUG=angleproject:1014 Change-Id: I5aaeec43d3b9bc73d011de17e2abac902ac3b7b9 Reviewed-on: https://chromium-review.googlesource.com/275776 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill 187d4452 2015-06-10T14:54:10 Add DXGI RenderTarget info to the format tables. This will save us some time on D3D11 startup. BUG=angleproject:1014 Change-Id: Ic00b3dfd9f6230d2d54e6e9bb74be55b923697fe Reviewed-on: https://chromium-review.googlesource.com/275775 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill a986c834 2015-06-10T14:54:09 Implement DXGI shader sample format tables. This saves us some startup time in the D3D11 Renderer. BUG=angleproject:1014 Change-Id: I5d2607b58a86ee0a8932032a0f8a31b21d39b525 Reviewed-on: https://chromium-review.googlesource.com/275774 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill 7f165fd9 2015-06-10T16:46:11 dEQP: Hook up GPU test expectations code. With the list of failures, this gives a 100% passing GLES2 test suite. BUG=angleproject:998 Change-Id: I20985c729104d7a114352d156c238bca3ea1698c Reviewed-on: https://chromium-review.googlesource.com/274423 Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 6ffeb744 2015-06-10T14:54:06 Add more detailed captures to EGL init perf test. We can use the ANGLE platform to capture more specific information than total number of iterations. We can also capture time spent initializing DLLs, calling D3D11CreateDevice and allocating some default resources. BUG=angleproject:1014 Change-Id: If0f4965e7aac22eb09dfa0d2300ff449e7481f6e Reviewed-on: https://chromium-review.googlesource.com/276631 Reviewed-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill b76e350f 2015-06-11T16:01:45 Fix the broken draw call perf test. This was broken by the angle test platforms refactor patch, https://chromium-review.googlesource.com/#/c/276460/. It was leading to the wrong tests be executed for the perf tests, and also had bugs with supporting a default platform. BUG=None TEST=angle_perftests Change-Id: Ib99342d4189fd98bf93dce088d15afcecc4a7e37 Reviewed-on: https://chromium-review.googlesource.com/277036 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Olli Etuaho 7a1d9266 2015-06-11T20:04:32 Refactoring: use compileTestShader in PackUnpackTest TEST=angle_unittests Change-Id: I49f17444bf0fe6568ec4d3445421c27a562adf1b Reviewed-on: https://chromium-review.googlesource.com/277040 Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Corentin Wallez 44b07e94 2015-06-09T18:00:46 Fix compilation of libtester_main on Linux Replace usage of std::exception by std::runtime_error BUG=angleproject:892 Change-Id: I214fe6a93944dcfb39b0633f46caf3b1187bd5d3 Reviewed-on: https://chromium-review.googlesource.com/275815 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Jamie Madill 22cebb0a 2015-06-10T22:59:21 Revert "Revert "Add baked DXGI format info for 2D/3D/Cube textures."" Parent patch fixed. BUG=angleproject:1014 This reverts commit 79ae150ed273f4c5e94b89be5d913c6b252ff1dd. Change-Id: I6431d73e5a766d1937732ddb7964751d46465674 Reviewed-on: https://chromium-review.googlesource.com/276776 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 5d121e1e 2015-06-10T18:56:04 Add generated tables to mirror D3D11 format support. *re-land with fix for test build* These tables can save us on startup time. Instead of querying the tables, we can keep certain assumptions about texture formats because certain formats are guaranteed to be supported in various feature levels. Testing with angle_perftests indicates this patch series will save about 50% of the time we spend in Renderer11::initializeDevice. BUG=angleproject:1014 Change-Id: I5477eea3e8433d36119cd099fb0c08eea168489a Reviewed-on: https://chromium-review.googlesource.com/276758 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>