- 04 Apr, 2018 1 commit
-
-
Mustafa Çamurcu authored
Windows implementation for FrameBuffer needs priority over Ozone. When building Chrome for Windows using Ozone, since use_ozone=true, some required windows definitions don't get defined. Change-Id: I6b8475c036dc88f7e3cb118a7db286afc75857fe Reviewed-on: https://swiftshader-review.googlesource.com/17968Tested-by:
Mustafa Çamurcu <camurcu@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 29 Mar, 2018 1 commit
-
-
Nicolas Capens authored
Bug chromium:825545 Change-Id: I37d6192bf65115938943f45d43e153196a7d569a Reviewed-on: https://swiftshader-review.googlesource.com/18128Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 27 Mar, 2018 2 commits
-
-
Alexis Hetu authored
It seems like SwiftShader already supports surfaceless contexts properly in eglMakeCurrent, so we might as well expose the extension strings. Change-Id: I3c1b85296c46536df9a8bd754856d825307181d0 Reviewed-on: https://swiftshader-review.googlesource.com/17948Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
This reverts commit 9869bedb. It broke 32-bit builds on Windows because GLsizeiptr and GLintptr are defined as different types (int vs. long) in gl2.h and glcorearb.h. See also https://github.com/KhronosGroup/OpenGL-Registry/issues/162 Change-Id: Ia7bd4accb1671529ce6da6849a1df76dceddcdee Reviewed-on: https://swiftshader-review.googlesource.com/18068Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 26 Mar, 2018 8 commits
-
-
Nicolas Capens authored
Change-Id: Ifeee2d5c637586e6b843080aaceb446bd0b5af11 Reviewed-on: https://swiftshader-review.googlesource.com/18048Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
Convert packed types to the next greater non-packed component type. Specifically, when the red component has fewer than 8 bits, use the corresponding sized internal format with 8-bit components. Note that this is still not fully compliant. The OpenGL ES 3.0 spec section 3.8.5 states that: If internalformat is unsized, the internal format of the new texel array is determined by the following rules, applied in order. If an effective internal format exists that has 1. the same component sizes as, 2. component sizes greater than or equal to, or 3. component sizes smaller than or equal to those of the source buffer’s effective internal format (for all matching components in internalformat), that format is chosen for the new image array, and this is also the new texel array’s effective internal format. This means that in theory when copying an RGBA4 framebuffer into an RGB texture, the effective internal format should be RGB565, not RGB8. However, dEQP does not enforce this, and ANGLE always assumes UNSIGNED_BYTE components. Change-Id: Id243b963779108e205c275499ddfb6e041a873d6 Reviewed-on: https://swiftshader-review.googlesource.com/17969Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
Change-Id: I5be0cc629477b6cfb3ede6b4484f067d1c30b0ec Reviewed-on: https://swiftshader-review.googlesource.com/17929Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
When a pixel unpack buffer is bound, glTexImage calls interpret the <pixels> parameter as an offset into the pixel buffer. We weren't validating that the accessed data falls within the buffer, when taking the offset into account. Bug chromium:822976 Change-Id: I3ab23e3b135fd4ad1e55555eec95d584684f5d82 Reviewed-on: https://swiftshader-review.googlesource.com/17928Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
Fixing https://github.com/KhronosGroup/OpenGL-Registry/pull/149 enabled including desktop OpenGL headers without conflicts, so we no longer have to define enums for ARB extensions ourselves. Change-Id: Ifa05112f1e1d21bb8a22b83519babbbb3e4d6462 Reviewed-on: https://swiftshader-review.googlesource.com/17909Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
Using revision https://github.com/KhronosGroup/OpenGL-Registry/commit/6565c242fbdad6258a73f506b0baa61f62edd67c Change-Id: I0e48ff5d700a2f21c9b52f992e90ca37b9800630 Reviewed-on: https://swiftshader-review.googlesource.com/17908Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Alexis Hetu authored
When the external buffer is the one that is dirty, avoid a useless copy from external to internal before fast clearing the buffer by clearing the external buffer directly. Change-Id: I469243ba8a2b8617f9a0f8b6e2a089f667b8ae63 Reviewed-on: https://swiftshader-review.googlesource.com/18033Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Alexis Hetu authored
When clearing a multisampled buffer, the reactor blitter was only clearing the first sample. This cl makes the reactor blitter effectively clear all samples of a multisampled buffer. Change-Id: I7ce1af401bf537fe85e1c8393a2c57144641ad8e Reviewed-on: https://swiftshader-review.googlesource.com/18032Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 21 Mar, 2018 1 commit
-
-
Nicolas Capens authored
Bug swiftshader:99 Bug chromium:820461 Change-Id: I2232c27d57aedff03293b37607f97ead56c056c9 Reviewed-on: https://swiftshader-review.googlesource.com/17808Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
- 20 Mar, 2018 5 commits
-
-
Alexis Hetu authored
On MacOS, libraries have a couple of minor issues and, as a safety, let's make sure no other library than the required library is loaded. Change-Id: I376b77b3cf3f635ff57c12ccde2b9e84d4105adc Reviewed-on: https://swiftshader-review.googlesource.com/17888Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
Change-Id: Ib6e656a7913cf245c73c096376241f6e1f567b6b Reviewed-on: https://swiftshader-review.googlesource.com/17869Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
Change-Id: I7388b3f5d17e35e55726797ba40631fd8590fb24 Reviewed-on: https://swiftshader-review.googlesource.com/17868Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
Change-Id: I501b72e5d33b26075488c0af999713c192c4ac0b Reviewed-on: https://swiftshader-review.googlesource.com/17848Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
Bug b/75778024 Change-Id: Idf17c094ef858b3712839ffe335dc943cd0bd084 Reviewed-on: https://swiftshader-review.googlesource.com/17828Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 16 Mar, 2018 1 commit
-
-
Nicolas Capens authored
Change-Id: I92c4c203433c8dc92887c5470631926c3cac1d27 Reviewed-on: https://swiftshader-review.googlesource.com/17788Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
- 15 Mar, 2018 1 commit
-
-
Nicolas Capens authored
GL_HALF_FLOAT_OES and GL_HALF_FLOAT have different enum values, and we weren't handling the case where a half-float texture was already created (e.g. with an effective internal format of GL_RGBA16F) and then updated with a glTexSubImage call using GL_HALF_FLOAT_OES type. In other words, we assumed the OpenGL ES 3.0 sized internal format could only be used with the OpenGL ES 3.0 half-float type, but this hasn't been true since we started storing only the effective internal format for all versions. Note that GL_OES_texture_half_float, which defines GL_HALF_FLOAT_OES, does not clarify whether HALF_FLOAT images can be updated using FLOAT, or vice-versa. We're assuming the equivalent combinations of OpenGL ES 3.0 table 3.3 are valid. That is, FLOAT can be used to update, HALF_FLOAT, but not the other way around. Bug b/74609191 Change-Id: Ib8548cd37065820eb59a0943fd39647edc5e9f1b Reviewed-on: https://swiftshader-review.googlesource.com/17748Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 14 Mar, 2018 1 commit
-
-
Alexis Hetu authored
GL_CHROMIUM_color_buffer_float_rgba (OpenGL ES 2.0) is a subset of GL_EXT_color_buffer_float (OpenGL ES 3.0), which SwiftShader already supports. Fixes 1 webgl conformance tests: conformance/extensions/oes-texture-float.html Change-Id: Ic1451187db219af74ba41fa7634bd5bcb6fb0b44 Reviewed-on: https://swiftshader-review.googlesource.com/16470Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 13 Mar, 2018 1 commit
-
-
Nicolas Capens authored
We weren't checking the return status of an XGetWindowAttributes() call while checking for a resized window. It appears that it can start to fail possibly due to an out-of-memory situation or the window being destroyed before the EGL surface. Note that the EGL spec does not have a recommendation on how to handle this situation. Generating EGL_BAD_ALLOC is intended for eglCreate* call failures, while EGL_BAD_NATIVE_WINDOW appears to be reserved for calls that take a native window as a parameter. eglSwapBuffers is neither. Bug chromium:819481 Change-Id: I270730567b5179ee43b814e8bd017b601dfbe079 Reviewed-on: https://swiftshader-review.googlesource.com/17708Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 08 Mar, 2018 2 commits
-
-
Alexis Hetu authored
- Added EXPECT_GLENUM_EQ to solve signed/unsigned comparisons - Added createProgram and drawQuad utility functions to reduce code duplication Change-Id: I8a62110346de501a1a77ec9688cf06b321385661 Reviewed-on: https://swiftshader-review.googlesource.com/17668Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Alexis Hetu authored
Being able to sample from sampler2DRect using the "texture" function is required for Chromium on Mac. Change-Id: Iea8970aaec29734a251bcfc19a03223d0ebfbc7e Reviewed-on: https://swiftshader-review.googlesource.com/17572Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
- 07 Mar, 2018 3 commits
-
-
Nicolas Capens authored
Change-Id: If560b8b41b869458ff4b3a6a314f389c8e7a22f9 Reviewed-on: https://swiftshader-review.googlesource.com/17648Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
Chih-Hung Hsieh authored
Suppress existing warnings. Bug b/66996870 Change-Id: I9b78f840638a57c2559ccc4dbc583cc6a6e21c14 Reviewed-on: https://swiftshader-review.googlesource.com/17630Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
Jiyong Park authored
This is using cutils/log.h which is deprecated in O (in favor of log/log.h) and this is causing build error when building with BOARD_VNDK_VERSION=current set. However, since SwiftShader should be able to be built with older versions Android some of which don't have log/log.h, we can't simply change cutils/log.h to log/log.h. Instead, liblog_headers is added to the header lib dependency (only for O and beyond) so that log/log.h can be correctly included via cutils/log.h Bug b/63135587 Change-Id: I763250e7410025b1dcd7ae210693e3d6bffdb6f1 Reviewed-on: https://swiftshader-review.googlesource.com/17629Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
- 06 Mar, 2018 1 commit
-
-
Nicolas Capens authored
This fixes a regression caused by https://swiftshader-review.googlesource.com/14489 Context::applyVertexBuffer() expects a valid program, so we need to check for it sooner. Not having a current program is not an error and makes the draw call a no-op, but dEQP-GLES3.functional.negative_api.vertex_array.* still expects validation to happen before leaving the function. In particular, the framebuffer completeness check has to be performed. Note that ConvertPrimitiveType() should never return an error because we already check the primitive type in the entry function, sampler validation can only be done when we have a valid program, and likewise applyVertexBuffer() requires a program, so these validations can still happen after the early-out. Change-Id: I7036ca59d37ea0385f79bf87afd1eeeb9728f7af Reviewed-on: https://swiftshader-review.googlesource.com/17228Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Lingfeng Yang <lfy@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 02 Mar, 2018 2 commits
-
-
Nicolas Capens authored
Change-Id: I85886ea83f4d748dce98d79acff204bf855da1ad Reviewed-on: https://swiftshader-review.googlesource.com/17569Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
Also remove traces of cube texture support for OpenGL ES 1.1. We don't support the OES_texture_cube_map extension, and it would be non-trivial due to requiring reflective texture coordinate generation. Change-Id: I5c224f925fc9c03053acaf33e126dae4f3ffe4d9 Reviewed-on: https://swiftshader-review.googlesource.com/16750Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
- 01 Mar, 2018 5 commits
-
-
Nicolas Capens authored
Change-Id: I491411ba77addcb514944717b19918e4d1b98898 Reviewed-on: https://swiftshader-review.googlesource.com/16228Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Alexis Hetu authored
The surface set during bindTexImage should be unset during releaseTexImage. Failing to do so may keep a dangling pointer to the surface, which can cause a crash later on (this was hit during the testing of new unit tests which will be added soon). Change-Id: Ic258fff8c880d449add825c5e9185435cc4ea419 Reviewed-on: https://swiftshader-review.googlesource.com/17548Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
The spec mentions them as color-renderable, but our IsColorRenderable() function only handles sized internal format, and adding them there might hide bugs in our renderbuffer implementation since they can only be constructed using sized internal formats. dEQP also has a note about this inconsistency, and consequently these formats are not part of the 'mustpass' set for dEQP-GLES3.functional.state_query.internal_format. So it might be a spec oversight. Change-Id: I08ca3dad4c0b5686536dafd3ade1e855e3968aa0 Reviewed-on: https://swiftshader-review.googlesource.com/16410Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
Tomasz Wiszkowski authored
Current build system assumes single arch targets to be 32bit and produces 64bit libraries in an incorrect folder. The change allows build system to determine proper location of the libraries. Change-Id: Ic95a36f7108fcae8e6f120f0853ee00e9a8926c1 Reviewed-on: https://swiftshader-review.googlesource.com/17188Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
GL_APPLE_texture_format_BGRA8888 specifies that when using the BGRA_EXT format, it "must have an RGBA internal format". Note that GL_EXT_texture_format_BGRA8888 also allows BGRA_EXT as internalformat. Change-Id: I27e032054240efe96c32e27ebbdfb3c28213b1d8 Reviewed-on: https://swiftshader-review.googlesource.com/16248Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
- 28 Feb, 2018 2 commits
-
-
Nicolas Capens authored
We were expecting R or RG internal formats, instead of L, A, or LA. Change-Id: I6ee145341819460dda262b017db6d8105860f49a Reviewed-on: https://swiftshader-review.googlesource.com/17508Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Alexis Hetu authored
Imported texture rectangle tests from angle and fixed all texture rectangle related failures: - Rectangle textures can be rendered to - Rectangle textures only support level 0 - Rectangle textures can't be compressed - glTexStorage2D can no longer create a texture larger than the maximum size allowed Change-Id: I089291c94aad79e244782a8d56dd224c7510d237 Reviewed-on: https://swiftshader-review.googlesource.com/16908Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
- 27 Feb, 2018 3 commits
-
-
Nicolas Capens authored
This makes it easier to use a different address, in particular the port. Also add a missing header for std::max. Change-Id: I454dd6f4a92b5d8b97625e4cb50796e9f0940009 Reviewed-on: https://swiftshader-review.googlesource.com/16668Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
glBindRenderbufferOES() doesn't require anything except a non-zero renderbuffer to create a new Renderbuffer object (it is not required to use GenRenderbuffers before using BindRenderbuffer). This had been fixed for GLES 3.0 and 2.0, but the same also applies to GLES 1.1. Note that the Context already properly handles the case where renderbuffer is zero. Bug b/25983901 Change-Id: If5e97be8027fca7c97cce5c44d063cd054443700 Reviewed-on: https://swiftshader-review.googlesource.com/17490Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
When sampling from an incomplete texture, the OpenGL spec states that (0, 0, 0, 1) will be returned to the shader from the texture lookup function. Swizzling is only described for filtered texture values. Change-Id: Ie8a02b3b0b9e571fd2f86302e777a4ff985da022 Reviewed-on: https://swiftshader-review.googlesource.com/17488Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-