util


Log

Author Commit Date CI Message
Jamie Madill 9fc3682c 2015-11-18T13:08:07 D3D: Rework varying packing code. In D3D we pack varyings by making a register map, and using the recommended GLSL ES algorithm to reserve register space. We use this map to assign row and column slots to each varying and then produce a semantic index value. The existing scheme had a number of bugs, and was failing several angle_end2end_tests. The new design cleans up the code somewhat and uses a different counting scheme for the semantic indexes: just sort the varyings in packing order and use a simple incrementing semantic index per varying. In SM4+, the HLSL compiler sorts and packs the varyings correctly itself, and in SM3, handle the cases we don't support by returning an error instead of a D3D compiler link error. Also refactor how we store varying information for TF Feedback/ StreamOut. Only store the necessary D3D information, instead of extra information like the name and type. This fixes several tests in GLSLTest/*. This also will allow us to fix interpolation qualifier packing and the structure packing in HLSL, which seems to work differently than the rest of the varying types. BUG=angleproject:1202 TEST=bots,dEQP-GLES3.functional.transform_feedback.* Change-Id: Ie5bfbb4f71d8bf97f39115fc46d2e61b131df639 Reviewed-on: https://chromium-review.googlesource.com/311241 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez b0228e18 2015-10-14T16:05:03 OSXWindow fix a use after free of the WindowDelegate This use after free was triggered when a window was made key and destroyed, then another window was made key. dedResignKey was called on the former's WindowDelegate which had already been freed, causing a crash. BUG=angleproject:891 Change-Id: If47e88419f9a407a6a77c5cd9853b7b4860dc698 Reviewed-on: https://chromium-review.googlesource.com/305817 Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 8fc63104 2015-09-30T13:17:34 OSXWindow release the tracking area instead of deallocing it The Mac AMD GPU FYI bots were crashing on end2end tests exit because the NSView was trying to deallocated an NSTrackingArea that had been previously deallocated. BUG=angleproject:891 Change-Id: I933e437254cad65f18cb0518a401b8b8e9dc59a0 Reviewed-on: https://chromium-review.googlesource.com/303302 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Jamie Madill ad60e8ee 2015-09-22T12:40:31 Move more sample_util sources to util. These sample utils can also be useful for writing perf tests. BUG=angleproject:1164 Change-Id: I44b5d63b57bfce7a541442fd02cd729a1bab17f0 Reviewed-on: https://chromium-review.googlesource.com/301468 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tryjob-Request: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Austin Kinross 9f2fd2b4 2015-09-02T12:29:07 Add WinrtWindow.cpp and WinRT version of angle_util Change-Id: If4ff4b966f5bd388d32c72a2d1bcf9cf29e6032d Reviewed-on: https://chromium-review.googlesource.com/297308 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Austin Kinross <aukinros@microsoft.com>
Corentin Wallez 27593e05 2015-09-15T08:19:09 Implement missing util/ functions on Mac SetLowPriorityProcess's implementation can be shared between Mac and Linux so even though it isn't using a Posix API, it lives in the posix file. CreateOSPixmap needed to be implemented but will never be used by dEQP as our Mac EGL backend doesn't expose configs supporting pixmaps. Reland with a Linux compilation fix (forgot to delete SetLowPriorityProcess). BUG=angleproject:891 Change-Id: If8145501e1787d08d82402a6baa60a5404cac6b1 Reviewed-on: https://chromium-review.googlesource.com/299773 Tested-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Corentin Wallez 83634d6b 2015-09-16T20:12:42 Revert "Implement missing util/ functions on Mac" This reverts commit 959e197c84065267811b0a28e1d8e4aa5f98cf82. BUG= Change-Id: I71ea2894c74be8fda80a59c99bc53f4fcb7e9115 Reviewed-on: https://chromium-review.googlesource.com/299873 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 959e197c 2015-09-15T08:19:09 Implement missing util/ functions on Mac SetLowPriorityProcess's implementation can be shared between Mac and Linux so even though it isn't using a Posix API, it lives in the posix file. CreateOSPixmap needed to be implemented but will never be used by dEQP as our Mac EGL backend doesn't expose configs supporting pixmaps. BUG=angleproject:891 Change-Id: I7b53b44b3465045954ec8e5997f703525ece92d0 Reviewed-on: https://chromium-review.googlesource.com/299851 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tryjob-Request: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Geoff Lang ee48376c 2015-09-15T13:12:07 Update to the latest versions of the GL and EGL headers. Add GLES 3.1 and 3.2 headers. Remove GLES 3.0 extension headers and entry point files. Re-land fixes double define from different style defines in libGLESv2.gypi and other projects. Re-land fixes missing defines in angle_util project in gn. Change-Id: I1952413cd4390e6f5450df809f8f5867bf6f49e2 Reviewed-on: https://chromium-review.googlesource.com/299771 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 0393310f 2015-09-15T16:59:59 Revert "Update to the latest versions of the GL and EGL headers." Issues with GN build. This reverts commit 8284436798dd184afe61cbb586185cb68e503d6f. Change-Id: I99d186019135bbbe250e95c9567854108d31c556 Reviewed-on: https://chromium-review.googlesource.com/299870 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Corentin Wallez 2f29d78b 2015-09-14T12:15:53 Use SDKROOT in the paths to OSX framework to match Chromium BUG=angleproject:891 Change-Id: I458a12bd6b4be3b262d76184c51bde1f2b803c67 Reviewed-on: https://chromium-review.googlesource.com/299730 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez f0ca9a0c 2015-09-14T11:53:10 Remove the usage of some c++11 library features That were causing compilation error in Chromium Mac builds BUG=angleproject:891 Change-Id: I45777451b300928e8c8d232a5b7ecffa7f1c3cbe Reviewed-on: https://chromium-review.googlesource.com/299721 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 178e5974 2015-09-14T11:52:44 In Chromium Mac builds do not find cstdint, use stdint.h instead BUG=angleproject:891 Change-Id: Idf2a89ad26955df3579bb2c1883137589f68f573 Reviewed-on: https://chromium-review.googlesource.com/299720 Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez b3c6a992 2015-09-14T11:54:17 OSXWindow::setMousePosition add a workaround for OSX 10.6 SDK -[NSWindow convertRectToScreen] was introduced in OSX 10.7, use convertBaseToScreen instead for OSX 10.6 BUG=angleproject:891 Change-Id: I255a71d98bc9bf22735a7cb8b9ce1ea24061742f Reviewed-on: https://chromium-review.googlesource.com/299722 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Geoff Lang 82844367 2015-09-11T13:52:12 Update to the latest versions of the GL and EGL headers. Add GLES 3.1 and 3.2 headers. Remove GLES 3.0 extension headers and entry point files. Re-land fixes double define from different style defines in libGLESv2.gypi and other projects. Change-Id: I6204dc767bd83b7aa7e4d6e2fa338b2ce7f304d8 Reviewed-on: https://chromium-review.googlesource.com/299401 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang e12150fe 2015-09-11T20:06:27 Revert "Update to the latest versions of the GL and EGL headers." Linux compile failures to do gyp defines. This reverts commit 8bbeabc1795473f7b3141219be3970fea3b95a71. Change-Id: Icb31dd817414b3a9ab36e88cedab9c725af26b6b Reviewed-on: https://chromium-review.googlesource.com/299173 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 8bbeabc1 2015-09-11T13:52:12 Update to the latest versions of the GL and EGL headers. Add GLES 3.1 and 3.2 headers. Remove GLES 3.0 extension headers and entry point files. Change-Id: Icaa444efa52f3b9d1497189da92bc364545a6e3a Reviewed-on: https://chromium-review.googlesource.com/299172 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 7aef6020 2015-09-11T19:04:00 Revert "Update to the latest versions of the GL and EGL headers." Broke the Clang compile. In file included from ../../third_party/angle/include/GLSLANG/ShaderLang.h:28: ../../third_party/angle/include/KHR/khrplatform.h:282:30: error: no newline at end of file [-Werror,-Wnewline-eof] #endif /* __khrplatform_h_ */ Several other similar errors. BUG=None This reverts commit aac2035d851fc92b159dc8e01cfd2ebb86e99e4a. Change-Id: I407e7e65bb6a46d1d941c54cdf14a14758e22d96 Reviewed-on: https://chromium-review.googlesource.com/298834 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang aac2035d 2015-09-11T13:52:12 Update to the latest versions of the GL and EGL headers. Add GLES 3.1 and 3.2 headers. Remove GLES 3.0 extension headers and entry point files. Change-Id: I8e9df6262dc1b2536a409c5791734e4a4d63b115 Reviewed-on: https://chromium-review.googlesource.com/299341 Tryjob-Request: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Corentin Wallez 86f8dd7c 2015-08-12T12:37:48 Implement a minimal EGL -> CGL backend This succesfully renders HelloTriangle and some samples but fails on a lot of tests. In particular it doesn't handle resizing the window and doesn't have depth or stencil buffers. BUG=angleproject:891 Change-Id: I16356471b470f764acb38e8dd3589e9c0129829d Reviewed-on: https://chromium-review.googlesource.com/290770 Tested-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Geoff Lang 5ade8459 2015-09-02T11:00:30 Properly check for EGL_KHR_create_context before creating ES3 context. Mark EGL_KHR_create_context as supported in the DisplayGLs. BUG=angleproject:1149 Change-Id: I20671535680eb2c3b9c08205cee243b3aa5c5821 Reviewed-on: https://chromium-review.googlesource.com/297080 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Geoff Lang <geofflang@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>
Jamie Madill ca03b35c 2015-09-02T12:38:13 Re-land "Compute packed varyings in ProgramD3D only." Instead of storing varying information in the shader, use a temporary set when linking a D3D program. This also means we won't have to modify information in the Shader object when linking a D3D program. This completes the refactoring for PackedVaryings. Re-land with fix for missing init of PackedVarying::vertexOnly. BUG=angleproject:1123 Change-Id: If110809c3817d88b0370ac575d739d7385b067d9 Reviewed-on: https://chromium-review.googlesource.com/296731 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill c437046f 2015-09-01T17:27:40 Revert "Compute packed varyings in ProgramD3D only." Likely the cause of Windows bot failures. BUG=angleproject:1123 This reverts commit 532061bbfb160586a06f0e47b6bbb5350e735203. Change-Id: Ia4f0161b97bfbf2adb4cafaa5fa5484f04fad245 Reviewed-on: https://chromium-review.googlesource.com/296710 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 532061bb 2015-08-31T15:16:45 Compute packed varyings in ProgramD3D only. Instead of storing varying information in the shader, use a temporary set when linking a D3D program. This also means we won't have to modify information in the Shader object when linking a D3D program. This completes the refactoring for PackedVaryings. BUG=angleproject:1123 Change-Id: I241610e87f7d14f3e18b0d8bd84f1a3509c05dfd Reviewed-on: https://chromium-review.googlesource.com/295193 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 254fceac 2015-08-25T15:11:07 Fix two leaks and a delete vs delete[] reported by ASAN BUG=angleproject:1137 Change-Id: Ic654b79aa56ae0c0a24097b85ab48f5af53ca1f7 Reviewed-on: https://chromium-review.googlesource.com/295154 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Cooper Partin 4d61f7ed 2015-08-12T10:56:50 Reland Fixed compiler warning C4267 'conversion from 'size_t' to 'type', possible loss of data' Additional warnings found with more testing and added C4267 warning disable only for angle_libpng BUG=angleproject:1120 Change-Id: Ic403dcff5a8018056fa51a8c408e64207f3362eb Reviewed-on: https://chromium-review.googlesource.com/293028 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Cooper Partin 8168b4bd 2015-08-07T16:02:10 Fixed compiler warning C4838 'conversion from size_t to LONG requires a narrowing conversion'. BUG=angleproject:1119 Change-Id: I2c879193dc122e6c45d0462abc91f39f5d332506 Reviewed-on: https://chromium-review.googlesource.com/292156 Tested-by: Cooper Partin <coopp@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez b2e33b90 2015-07-28T13:06:35 X11Window::initialize remove a small code redundancy BUG= Change-Id: Id5f98332129b3cc854254187b494bf6a97921dbd Reviewed-on: https://chromium-review.googlesource.com/289272 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Daniel Cheng 5bb9af2a 2015-07-24T09:56:59 Fix a -Wswitch warning in ANGLE. BUG=505308 Change-Id: I34ae3aa65ce55c4e04eecfef3c9cde9841e47140 Reviewed-on: https://chromium-review.googlesource.com/288245 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Daniel Cheng <dcheng@chromium.org>
Corentin Wallez f3357ee2 2015-07-22T14:10:19 EGLWindow: remove the unused width and height EGLWindow does nothing with it per se, but some code was relying on it to store it. Add width and height to ANGLETest and SampleApplication instead. Also fix a typo in PerfTestParams, widowWidth -> windowWidth. BUG=angleproject:1105 Change-Id: I26da607a2e6342864b508a50ee3cf8944608f868 Reviewed-on: https://chromium-review.googlesource.com/287379 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Geoff Lang 63046e2b 2015-07-21T12:43:50 Add helpers for checking EGL extension availablity in tests. Also make sure that EGL_EGLEXT_PROTOTYPES is always defined so that extension functions can be used without loading them. BUG=angleproject:970 Change-Id: I33fa3e8ed68aeda55ad69e1bc7826646f5e3ce29 Reviewed-on: https://chromium-review.googlesource.com/287161 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Corentin Wallez a6d4e601 2015-07-16T17:19:07 X11Window::resize wait for the window to be resized before returning This will help address a bug in glReadPixels performed after a resize. BUG=angleproject:1050 Change-Id: Ie204dec229582ec0e990c6f7fa22cfd44048d46e Reviewed-on: https://chromium-review.googlesource.com/286250 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 40888aab 2015-07-13T15:53:23 EGLWindow: correctly retrieve mAlphaBits BUG=angleproject:1065 Change-Id: I1e396d1bd4d1c65edc3ad07bb32f895135d59474 Reviewed-on: https://chromium-review.googlesource.com/285180 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 31658f92 2015-07-15T12:57:34 Implement OSXWindow. BUG=angleproject:891 Change-Id: If8aefa4a37ba7d1b6b08921bee61463bb20550af Reviewed-on: https://chromium-review.googlesource.com/285834 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 0dce07bc 2015-07-15T13:00:05 X11Window: Add missing handling of Keypad's '5' key. BUG=angleproject:891 Change-Id: Icb0dc3449db6982979a93a394fb9e0c58413a256 Reviewed-on: https://chromium-review.googlesource.com/285836 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez b29690a6 2015-07-15T12:59:28 OSWindow: small fix to the formatting of key event debugging BUG= Change-Id: I09ab785311ec0fa7f3eecb6484a965378a1fef0d Reviewed-on: https://chromium-review.googlesource.com/285835 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 3ebfcd62 2015-07-06T23:35:20 OSWindow: add KeyEvent debugging BUG=angleproject:892 Change-Id: I35288ff43fb7a50a327047eacb8f41ca91e2b441 Reviewed-on: https://chromium-review.googlesource.com/283471 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 2be6405d 2015-07-06T23:35:53 X11Window: handle key presses and releases BUG=angleproject:892 Change-Id: I66690ba49789faa672f6ed58e9eb8a2482eb4f6d Reviewed-on: https://chromium-review.googlesource.com/283472 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@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>
Sam McNally fa2f73fd 2015-06-29T18:45:33 Fix a tautological comparison. BUG=505309 Change-Id: I0e93139693206e766b91a5998d6e284c7a29fd14 Reviewed-on: https://chromium-review.googlesource.com/282450 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Corentin Wallez 87bef77c 2015-06-19T15:42:09 Compile end2end tests on MacOS This includes an implementation of OSX timer and path_utils. BUG=angleproject:891 Change-Id: Id5440a8321bcfd4a61f3fe35b4a3fc0c651f564f Reviewed-on: https://chromium-review.googlesource.com/278211 Reviewed-by: Jamie Madill <jmadill@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>
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 dd323e95 2015-06-09T15:16:31 Only run tests that the current hardware can support. For each config, determine if a context can be created at test instantiation time. This allows skipping of ES3 tests when the hardware does not support ES3. Updated the perf_tests to use the EGLPlatformParameters struct so that they can be filtered in the same way. Change-Id: If664604b057cec4005eb4b63bebd83cd4964b7b2 Reviewed-on: https://chromium-review.googlesource.com/276460 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 39fcf263 2015-06-08T14:39:07 Use both null and real renders for draw call perf. Introduce a "null" GL renderer for this specific benchmark, which does not do any work on drawArrays and drawElements. We could use the same kind of trick for buffer and texture updates, if we need it. This gives us a good baseline for comparing GL and D3D perf. BUG=angleproject:1040 Change-Id: I4bf7c75df01932de45ddd0a4e42e8fc82f15e37e Reviewed-on: https://chromium-review.googlesource.com/276192 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill ce232678 2015-05-28T13:26:02 Add a perf test for eglInitialize. Also shutdown performance, since it's not easy to only test one. BUG=angleproject:1014 Change-Id: I9d06426788ed336031271f8876589b111f1294b7 Reviewed-on: https://chromium-review.googlesource.com/273974 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org>
Geoff Lang 4031b994 2015-05-29T10:57:55 Don't enable opengl on linux unless x11 is also available. BUG=493682 Change-Id: I10d5b710fcc9b51160c3aff169d1af839212003c Reviewed-on: https://chromium-review.googlesource.com/273976 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Corentin Wallez 51e2ad14 2015-05-26T11:32:58 Do not always use X11 for Linux builds, inherit Chromium's settings This fixes project generation for Chromium for non-X11 builds BUG=angleproject:1011 Change-Id: If528f63fb186d834d56a43ca379497d99e74777e Reviewed-on: https://chromium-review.googlesource.com/273163 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 5c798fe9 2015-05-25T10:03:35 Enable OcclusionQueriesTest on Linux This includes an implementation of a cross platform Sleep function BUG=angleproject:892 Change-Id: I1087a00ab204b37bafc5e95a9766962b194d97ef Reviewed-on: https://chromium-review.googlesource.com/273133 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez db39e7f5 2015-05-25T09:51:24 Rename path_utils to system_utils For inclusion of Sleep BUG=angleproject:892 Change-Id: I1a9491102e9943d945eef0ba372a6779c30cd311 Reviewed-on: https://chromium-review.googlesource.com/273131 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez fb28d3c5 2015-05-21T18:02:02 X11Window: handling of ConfigureNotify, work when reparented BUG=angleproject:892 Change-Id: Ib201a5fbf4fca39c90464ed76434dac5e5ded381 Reviewed-on: https://chromium-review.googlesource.com/272683 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 5b2545bf 2015-05-21T15:26:15 Correct LinuxTimer time calculations Changes to CLOCK_MONOTONIC as CLOCK_PROCESS_CPUTIME counts only user time and not kernel time. BUG=angleproject:892 Change-Id: I3d5aee26ee2bacd7449fdd7795ad8c2b289d7324 Reviewed-on: https://chromium-review.googlesource.com/272652 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 91c2fadf 2015-05-15T10:34:14 Fix more warnings in samples and tests These warnings are currently disabled because these files are not with angle_code set to 1 in the gyp files to avoid gtest's code warnings. We hope to either fix warnings in gtest or change our build system to not use warnings for gtest. BUG=angleproject:1003 Change-Id: I281781b77f92ef8c394dd53fbbd50d525e4da5c9 Reviewed-on: https://chromium-review.googlesource.com/271412 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 4b6945a4 2015-05-14T15:30:36 Add -lrt and -ldl to link flags on Linux builds BUG=angleproject:892 Change-Id: Ic06b493cbfdc061565d94d98aabfc3b1f2d882c6 Reviewed-on: https://chromium-review.googlesource.com/271275 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 3730f644 2015-05-14T11:44:53 Make X11Window::setVisible block until the window is mapped. That way the code calling setVisible knows it can safely create a framebuffer for this window without having its content be undefined. BUG=angleproject:830 Change-Id: Ia694f50ac20e1d510d0c0f899226ed241d9a5a3a Reviewed-on: https://chromium-review.googlesource.com/271156 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 1f67547b 2015-05-14T11:47:33 EGLWindow: remove redundant EGL_NONE to finish attrib list. Only one EGL_NONE is needed to signal the end of the list. BUG=angleproject:892 Change-Id: I7de349bef9d674344ccd1b2c4801d8b42c801299 Reviewed-on: https://chromium-review.googlesource.com/271157 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 43b0c221 2015-05-12T10:37:01 X11Window: implement event handling and modifiers BUG=angleproject:892 Change-Id: I65f251abdd28b273e2d3d574825f20bba8bb2532 Reviewed-on: https://chromium-review.googlesource.com/270452 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 938f1ca3 2015-05-12T10:21:17 OSWindow: add optional debugging of events received BUG=angleproject:830 Change-Id: Icd854ee152f15ec1de4293b5ed2ed49cb1a5fc2b Reviewed-on: https://chromium-review.googlesource.com/270451 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 12fe4dc8 2015-05-04T12:50:08 Fix pointer to int conversion warning in EGLWindow.cpp BUG=angleproject:892 Change-Id: Ic40f29c811d18efea0e081c269ca43d0170488a4 Reviewed-on: https://chromium-review.googlesource.com/269122 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/270125
Jamie Madill fa05f607 2015-05-07T13:47:11 Use value-paramaterized tests instead of by type. This should fix our non-standard template use, which causes compile errors for the tests on GCC/Clang. BUG=angleproject:997 Change-Id: Id1bb15231eda445f37e53a5b33d4684ec6618d8e Reviewed-on: https://chromium-review.googlesource.com/269858 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 2cf30bd0 2015-05-07T13:55:14 Fix GetExecutablePath on Linux It was using lstat to get the size of /proc/self/exe but it always returns 0, so we just use a big buffer on the stack instead. BUG=angleproject:892 Change-Id: I6d88efeb4ec5de7a78cb3668e3d78520203ad1d5 Reviewed-on: https://chromium-review.googlesource.com/269990 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez bf9e4050 2015-05-06T15:13:05 EGLWindow: specify the device type only on d3d platform BUG=angleproject:892 Change-Id: I0406e26910f5a012ccb9e533af18e831522161b1 Reviewed-on: https://chromium-review.googlesource.com/269666 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/269827
Corentin Wallez ec0b1362 2015-05-06T10:47:11 Make util/win32 follow ANGLE conventions better BUG=angleproject:892 Change-Id: I1ad366e16b135649fe1b0351081f9971db84df50 Reviewed-on: https://chromium-review.googlesource.com/269665 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Jamie Madill 4ea209f1 2015-05-07T15:32:26 Revert "EGLWindow: specify the device type only on d3d platform" Causing failures in EGLSurfaceTest.MakeCurrentTwice on Windows BUG=angleproject:892 This reverts commit 118e7195fdaa76a1f3aa52bbed30fdb97cc3fd4a. Change-Id: Ifbb17d1c9bc0390abadbfb8f78cf14dbf1bb8e83 Reviewed-on: https://chromium-review.googlesource.com/269950 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 118e7195 2015-05-06T15:13:05 EGLWindow: specify the device type only on d3d platform BUG=angleproject:892 Change-Id: I2dda3a8d15e58d15a401258a5a64c5783ea1a132 Reviewed-on: https://chromium-review.googlesource.com/269666 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez fe2f3d63 2015-05-05T17:37:39 Add a basic support for Linux for utils/ * Timer and path utils are done. * Window only implements initialize and setVisible BUG=angleproject:892 Change-Id: I3f49b68ef9ec5be324b25e211199bac2953ae11e Reviewed-on: https://chromium-review.googlesource.com/269520 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Jamie Madill c07c43e4 2015-05-04T18:20:24 Revert "Fix pointer to int conversion warning in EGLWindow.cpp" Causes a compile error. BUG=angleproject:892 This reverts commit d424da4a4c5f9eb08632738c53ca4604c3b808f1. Change-Id: Ieb8bb99d02f7050306974db5dab72d26474891ac Reviewed-on: https://chromium-review.googlesource.com/268996 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 72196b74 2015-05-04T12:50:53 Add missing trailing newline before EGLWindow.cpp EOF BUG=angleproject:892 Change-Id: Iaf175a310ce2acb5a8715902b3d367aa3dae8e2c Reviewed-on: https://chromium-review.googlesource.com/269124 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 75af569c 2015-05-04T12:50:30 Add missing include in EGLWindow.cpp BUG=angleproject:892 Change-Id: I23cfbd9cfbe7d41e048a2b2a4eea048f5de72d12 Reviewed-on: https://chromium-review.googlesource.com/269123 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez d424da4a 2015-05-04T12:50:08 Fix pointer to int conversion warning in EGLWindow.cpp BUG=angleproject:892 Change-Id: If6f0eb13bca10f9328faeaab35665a67e7ef6e44 Reviewed-on: https://chromium-review.googlesource.com/269122 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez fc692934 2015-05-04T12:53:10 Fix signed to unsigned integer conversion warning in EGLWindow.h Change-Id: I7b4249e04c8fb76b60b4c837266b144fbd64cbf6 Reviewed-on: https://chromium-review.googlesource.com/269128 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 9946a61e 2015-05-04T12:52:32 Fix text trailing after preprocessor macro warning in util/Event.h Change-Id: Ie977e6fce0e5e0efeb16f0387bf653bbd2d1cd93 Reviewed-on: https://chromium-review.googlesource.com/269127 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 8eb2d14c 2015-05-04T12:52:05 Fix 'not all switch case are handled' warning in OSWindow.cpp Change-Id: Ib4d1e4b04c73e5eb5e0e4f6c56212e99723d2ce0 Reviewed-on: https://chromium-review.googlesource.com/269126 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 6ba699a2 2015-05-04T12:51:23 Add missing include in OSWindow.h Change-Id: Ie1fd40c308ed9d0d90756e31dfe153f44510defa Reviewed-on: https://chromium-review.googlesource.com/269125 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 96de96b7 2015-05-04T12:46:33 Initialize Win32Timer::mRunning as a bool Change-Id: I1770684217239bcbdf2bb07f4867e1427577a01f Reviewed-on: https://chromium-review.googlesource.com/269121 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Geoff Lang 681ad9d1 2015-04-23T12:27:56 Add a sample that uses multiple windows. BUG=angleproject:521 Change-Id: I50858193518b4d07edcb2073caaa99ce37fcc4c3 Reviewed-on: https://chromium-review.googlesource.com/267000 Reviewed-by: Brandon Jones <bajones@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 77a72f6e 2015-04-14T11:18:32 Release Surface when calling makeCurrent with null. Refactorings to egl::Surface to enable ref-counting were causing a situation where we could have two Window surfaces alive at the same time. This would confuse the window procedure logic in SurfaceD3D. Releasing the surface fixes this issue and conforms closely to the wording on the spec on when Surfaces should be deleted. Also add a test for message loops and surfaces. BUG=475085 BUG=angleproject:963 Change-Id: Icdee3a7db97c9b54d779dabf1e1f82a89fefc546 Reviewed-on: https://chromium-review.googlesource.com/265064 Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Cooper Partin 97d61eb5 2015-04-14T09:08:16 Add extension EGL_ANGLE_device_d3d Access to the D3D device is needed for some advanced scenarios. New entry points eglQueryDisplayAttribANGLE and eglQueryDeviceAttribANGLE have been added in this change to implement this extension. BUG=angleproject:935 Change-Id: Ie39e86a2b6c6d8d05a08964b2907fb9fba5dec13 Reviewed-on: https://chromium-review.googlesource.com/265591 Tested-by: Cooper Partin <coopp@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 1ea8284d 2015-04-14T15:28:56 Revert "Add extension EGL_ANGLE_device_d3d" Compile error on clang: src/libANGLE/Display.cpp:259:23: error: allocation of incomplete type 'egl::Device' mDevice = new Device(this, impl); ^~~~~~ src/libANGLE/Display.h:36:7: note: forward declaration of 'egl::Device' class Device; ^ In file included from src/libANGLE/Display.cpp:11: In file included from src/libANGLE/Display.h:17: In file included from src/libANGLE/Error.h:80: In file included from src/libANGLE/Error.inl:9: src/common/angleutils.h:66:5: error: deleting pointer to incomplete type 'egl::Device' may cause undefined behavior [-Werror,-Wdelete-incomplete] delete resource; ^ ~~~~~~~~ src/libANGLE/Display.cpp:209:5: note: in instantiation of function template specialization 'SafeDelete<egl::Device>' requested here SafeDelete(mDevice); ^ src/libANGLE/Display.h:36:7: note: forward declaration of 'egl::Device' class Device; ^ 2 errors generated. This reverts commit 6dacaff4e03d4f6b4c444a3fff018c1297cd25ba. Change-Id: Ide348e156324a5af668604362c0b249ea73b6083 Reviewed-on: https://chromium-review.googlesource.com/265626 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Cooper Partin 6dacaff4 2015-02-19T16:31:57 Add extension EGL_ANGLE_device_d3d Access to the D3D device is needed for some advanced scenarios. New entry points eglQueryDisplayAttribANGLE and eglQueryDeviceAttribANGLE have been added in this change to implement this extension. BUG=angleproject:935 Change-Id: Id1560b0887fa5882b9858af7bad9043ada67038d Reviewed-on: https://chromium-review.googlesource.com/251610 Tested-by: Cooper Partin <coopp@microsoft.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Minmin Gong 794e0009 2015-04-07T18:31:54 Fix and enable warning C4244 (Conversion from 'type1' to 'type2', possible loss of data) Change-Id: Id0e06d7d6600344d858f00dabc219d79289bbc82 Reviewed-on: https://chromium-review.googlesource.com/265020 Tested-by: Minmin Gong <mgong@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill b3584fb4 2015-04-09T17:34:21 Revert "Fix and enable warning C4244 (Conversion from 'type1' to 'type2', possible loss of data)" Causing a build failure on Mac/Clang: ./Tokenizer.cpp:551:7: error: extra tokens at end of #else directive [-Werror,-Wextra-tokens] #else if defined(_MSC_VER) http://build.chromium.org/p/chromium.gpu.fyi/builders/GPU%20Mac%20Builder/builds/29136 This reverts commit 3b26e231d99154814eb428f75a67bbe7a21adadc. Change-Id: I2d11ddcc18130d908fd2ec3d6f5ab890cfccd5e7 Reviewed-on: https://chromium-review.googlesource.com/264983 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Minmin Gong 3b26e231 2015-04-07T18:31:54 Fix and enable warning C4244 (Conversion from 'type1' to 'type2', possible loss of data) Change-Id: I73d9a2b9ad16f032be974b9c819de0dc1247c2ea Reviewed-on: https://chromium-review.googlesource.com/264533 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Nico Weber 51a1db16 2015-04-06T09:02:37 Give Timer a virtual destructor as it's deleted polymorphically. Found by clang: ..\..\third_party\angle\src\common/angleutils.h(66,5) : error: delete called on 'Timer' that is abstract but has non-virtual destructor [-Werror,-Wdelete-non-virtual-dtor] delete resource; ^ ..\..\third_party\angle\src\tests\perf_tests\ANGLEPerfTest.cpp(26,5) : note: in instantiation of function template specialization 'SafeDelete<Timer>' requested here SafeDelete(mTimer); ^ BUG=chromium:82385 Change-Id: I69033b1802b5dffbdf2d80889aca7019d710d481 Reviewed-on: https://chromium-review.googlesource.com/264061 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Gregoire Payen de La Garanderie 68694e99 2015-03-24T14:03:37 Add UBO offset support for D3D11.1. Also fixes the uniform count upper limit in glGetActiveUniformsiv, as well as an assert hit with used but unbound uniform buffer. BUG=angleproject:507 BUG=angleproject:962 Change-Id: I096fe1c9b4f0f398f3a638cd8311278987dfb7dc Reviewed-on: https://chromium-review.googlesource.com/263404 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com>
Geoff Lang 90a09b56 2015-04-01T18:21:24 Revert "Add UBO offset support for D3D11.1." Failed on 32-bit builds. See: https://build.chromium.org/p/chromium.gpu.fyi/builders/GPU%20Win%20Builder/builds/24828/steps/compile/logs/stdio angle\src\libangle\validationes.cpp(1461) : error C2220: warning treated as error - no 'object' file generated angle\src\libangle\validationes.cpp(1461) : warning C4018: '<' : signed/unsigned mismatch This reverts commit 381f969315c0c70bacf183e58de7194f42486112. Change-Id: I05f09f19e40046994d34809c5b79095458f56148 Reviewed-on: https://chromium-review.googlesource.com/263474 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Gregoire Payen de La Garanderie 381f9693 2015-03-24T14:03:37 Add UBO offset support for D3D11.1. Also fixes the uniform count upper limit in glGetActiveUniformsiv, as well as an assert hit with used but unbound uniform buffer. BUG=angleproject:507 BUG=angleproject:962 Change-Id: I263b14df41d4e45a67304c1d145646398721cf0a Reviewed-on: https://chromium-review.googlesource.com/263412 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Gregoire Payen de La Garanderie 3917f578 2015-04-01T15:17:21 Revert "Add UBO offset support for D3D11.1." Was ignoring the uniform block bindings. This reverts commit 7159ea6778eb73c233736cc2fa59ae9177b75e4b. Change-Id: Ie7d2b40d3fb2adedd309f1162fb6fd33ab0b4c3c Reviewed-on: https://chromium-review.googlesource.com/263420 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 2d1eea09 2015-03-27T09:46:41 Remove shared_utils.h, use angle_common instead. *re-land with fix for Chromium compile* This saves us from needing to replicate the same code in two places. BUG=angleproject:956 Change-Id: I68dffee715df03bd25685e3ed5c0506ffc41c3b9 Reviewed-on: https://chromium-review.googlesource.com/263258 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org>
Jamie Madill 61a5b338 2015-03-31T15:35:09 Revert "Remove shared_utils.h, use angle_common instead." Causing a build conflig with Chromium's DISALLOW_COPY_AND_ASSIGN. http://build.chromium.org/p/chromium.gpu.fyi/builders/GPU%20Win%20Builder/builds/24738 This reverts commit 3ad467df2817df60ae90a84aae68dc37b46b2b34. Change-Id: I0cf13e3bc3af90303a123813052cced0ba086515 Reviewed-on: https://chromium-review.googlesource.com/263159 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 3ad467df 2015-03-27T09:46:41 Remove shared_utils.h, use angle_common instead. This saves us from needing to replicate the same code in two places. BUG=angleproject:956 Change-Id: Ibc80997eec184d0d5aa9c6c076c9d4507fbf8caa Reviewed-on: https://chromium-review.googlesource.com/262776 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Gregoire Payen de La Garanderie 7159ea67 2015-03-24T14:03:37 Add UBO offset support for D3D11.1. Also fixes the uniform count upper limit in glGetActiveUniformsiv. BUG=angleproject:507 Change-Id: Icfc90ed64cf94b1bab2d4cc93a8fb5e11b28d666 Reviewed-on: https://chromium-review.googlesource.com/261874 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 19a43dbe 2015-03-20T16:14:04 Add a perf test for draw call overhead. These perf tests use the D3D NULL renderers to measure pure CPU time, with no GPU limitations. Also fix our D3D9 SwapChain code to skip creating a SwapChain for NULLREF D3D9 devices, and the vertex decl code to reinitialize the formats when finding a mismatch with the previous value. BUG=angleproject:955 Change-Id: I449e63177b48afd1559c36244de0bc252814e813 Reviewed-on: https://chromium-review.googlesource.com/262208 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang f1e85927 2015-02-23T14:40:04 Add test for very basic operations to enable as GL functionality is added. Add OpenGL and OpenGLES platform types for the ANGLE tests. Comment out some UNIMPLEMENTEDs that tests using OpenGL trigger. BUG=angle:882 Change-Id: I7f85eed184f7cebd25e2521d793fc9c394b704ce Reviewed-on: https://chromium-review.googlesource.com/252252 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 7825f619 2014-11-26T16:19:41 Update ANGLE_platform_angle_d3d to use a device type enum instead of WARP bool. BUG=angle:490 Change-Id: I1555e7f09b23138753e52ddf720d088587f7cadb Reviewed-on: https://chromium-review.googlesource.com/232104 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 15dc05fc 2015-01-22T13:31:46 Only request PostSubBuffer support when the extension is available. BUG=angle:658 Change-Id: I6828290ef89c57e8c794f0fca6e5991c492b67aa Reviewed-on: https://chromium-review.googlesource.com/242572 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Austin Kinross fcbf345b 2015-02-03T09:29:43 Add testfixturetypes.h to util.gyp Change-Id: I562bdca2c5c693155333a0ce168310be05b37531 Reviewed-on: https://chromium-review.googlesource.com/245741 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Austin Kinross <aukinros@microsoft.com>