|
5bf9ff4a
|
2016-02-01T11:13:03
|
|
Fix leak with binding Framebuffers directly.
Using BindFramebuffer(1) then GenFramebuffers would return 1.
This leads to a memory leak and was something that was obscuring
debugging a bug in my ReadPixels fix for ES3.
This also fixes a bug where running the texture tests along produces
some random failures.
BUG=angleproject:1290
BUG=angleproject:1299
Change-Id: If11e8c743d2ddde725b12749ac012f670cd290e1
Reviewed-on: https://chromium-review.googlesource.com/324820
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
541591d5
|
2016-01-28T14:27:50
|
|
Fix some override related warnings.
BUG=
Change-Id: I9e67ba2165ac87959f319fd2485fe385c60a8ea0
Reviewed-on: https://chromium-review.googlesource.com/324461
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
07fd1aaa
|
2016-02-01T11:13:03
|
|
Updated a few new passing tests in dEQP-GLES3.
Unknown when these started passing, but they seem to be OK locally
and on the bot.
BUG=angleproject:1095
BUG=angleproject:1097
BUG=angleproject:1101
Change-Id: Icf6102792b356cd23bf39414f75e796fe7e81879
Reviewed-on: https://chromium-review.googlesource.com/324940
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
7c41df13
|
2016-02-01T08:55:14
|
|
DisplayGLX: fix a SwapControl copy-paste error
BUG=angleproject:1304
Change-Id: If0ec8682b1d519bc6460cd6ed82f42c4c1ceb952
Reviewed-on: https://chromium-review.googlesource.com/324930
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
bc69f3be
|
2016-01-29T09:48:08
|
|
Build GN dEQP iff "build_angle_deqp_tests==true"
BUG=580045
Change-Id: Id19f843e8a04d38938b6827a7a64970eb088bcc6
Reviewed-on: https://chromium-review.googlesource.com/324760
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
f2523eb7
|
2016-01-28T14:25:04
|
|
DisplayGLX: disable the GLES backend on Intel and NVIDIA
This is to fix failures in the automated testing while we work on them.
BUG=angleproject:1303
Change-Id: I0813b5cf1dca1e329504704c70b9d2b0c34d003b
Reviewed-on: https://chromium-review.googlesource.com/324460
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
3ffd78bc
|
2016-01-22T16:09:42
|
|
Add initial support for EXT_disjoint_timer_query.
Basic timer queries are supported and tested in the OpenGL backend
but are not enabled by default. A good portion of the existing query
code was also refactored for improved validation - specifically for
validating that the appropriate extensions are available.
BUG=angleproject:1265
Change-Id: Iebae994cd7a8d3ed3e9fc3776fe2f3d99caa9237
Reviewed-on: https://chromium-review.googlesource.com/323450
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Ian Ewell <ewell@google.com>
Tested-by: Ian Ewell <ewell@google.com>
|
|
89853e84
|
2016-01-28T10:36:36
|
|
Clean up unused variable macros.
We might want UNUSED_ASSERTION as a special case but the unused trace
variable macro was being abused in places.
BUG=angleproject:1290
Change-Id: I5f9252b3ff0484d2e859b9fcf68d5d060b28f1fc
Reviewed-on: https://chromium-review.googlesource.com/324290
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
eaaeb7fb
|
2016-01-27T16:07:07
|
|
Disable support for OpenGL ES targets with WGL on Intel drivers.
BUG=angleproject:1145
Change-Id: I9f3a8926eaad88076026f58922289487f90518c7
Reviewed-on: https://chromium-review.googlesource.com/324270
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
b3844843
|
2016-01-27T15:03:06
|
|
Remove the now unused _ANGLE targets.
BUG=522967
Change-Id: I9a5c1793b089920273c74ab43fd5464d0aea7adb
Reviewed-on: https://chromium-review.googlesource.com/324022
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
4c06817a
|
2016-01-25T15:50:20
|
|
Add support for targetting GLES with DisplayGLX.
BUG=angleproject:1145
Change-Id: I3072c31f2f743943b2ed9a3b1a020529112d5f71
Reviewed-on: https://chromium-review.googlesource.com/324091
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
2e5dd41c
|
2016-01-27T13:16:35
|
|
Fix warnings from shadowed variables in DXGISwapChainWindowSurfaceWGL.
BUG=540829
Change-Id: I3595f316afa1897224ad95d6f9a3da3685aa0831
Reviewed-on: https://chromium-review.googlesource.com/324032
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
3e1b4f80
|
2016-01-27T12:39:27
|
|
Refactor ReadPixelsTest.
Split the test into several categories based on what fixture types
they need.
BUG=angleproject:1290
Change-Id: Ia25a022d90a0571e03d86c8e38f6243189968149
Reviewed-on: https://chromium-review.googlesource.com/324020
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
a15472a3
|
2015-08-11T11:48:03
|
|
Fix bugs with drawbuffer state.
* IsAttachmentEnabled was checking the wrong draw buffer state. Instead
of checking that drawbuffer[colorAttachment] is in use, it should have
been scanning for a drawbuffer state that points to colorAttachment.
* Allow for maxDrawBuffer != maxColorAttachments. Tested by the GL
backend on some systems that don't have the draw buffers extension.
Fixed by updating the helpers and adding a new getDrawBuffer helper.
BUG=angleproject:1121
Change-Id: Idd1b0a9ec4a3f944d332c708364408bf5d59e1fd
Reviewed-on: https://chromium-review.googlesource.com/292740
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
722b0d31
|
2015-12-08T11:46:28
|
|
Add a WGL Surface implementation that renders to a DXGI swap chain.
This avoids sandbox issues when calling SetPixelFormat on windows from
other processes while in a sandboxed process.
BUG=540829
Change-Id: I012168531d8c2e5b189671533cea9f57ec713538
Reviewed-on: https://chromium-review.googlesource.com/296340
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0dfa807f
|
2016-01-22T15:27:21
|
|
Tests: Prettify output for EXPECT_PIXEL_EQ.
Previously our output would spam multiple lines by checking equality
for each color component. Instead, use a helper struct with a stream
operator to clean up the output. This makes it much more legible.
New output style:
Expected: (0, 255, 0, 255)
Actual: angle::MakeGLColor(255, 0, 127, 255)
Which is: (255, 0, 127, 255)
BUG=angleproject:1290
Change-Id: Ieea018ab6c149a20b5fd74d74c972118b63a4b5e
Reviewed-on: https://chromium-review.googlesource.com/323441
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
f83cbc65
|
2016-01-22T15:27:21
|
|
Use std::random functions for test and samples RNG.
These standard functions are much more powerful than the C random()
routines. Use them to improve the random utils, and use a class
to clean things up further.
This fixes a problem I was having using random_utils where I was
having trouble generating random 32 bit unsigned integers.
BUG=angleproject:1290
Change-Id: I5081764053d0667a4e323553b7dea531256aa778
Reviewed-on: https://chromium-review.googlesource.com/323440
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
436e32ae
|
2016-01-15T15:53:12
|
|
GLX backend: check for child window resizes on eglWaitNative
This is the standard way, if not often used, for application to notify
the driver of window size changes. Chromium uses it to resize when it
is done rendering and swapping so that drivers do not clobber the
backbuffer.
This fixes black flickering appearing when resizing the Chromium
windows with --use-gl=angle.
BUG=angleproject:1281
Change-Id: Ic76f3c3ef453eae07eb59122135290411f86764d
Reviewed-on: https://chromium-review.googlesource.com/322390
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
c1069a08
|
2016-01-22T15:27:20
|
|
D3D11: Add a TextureHelper class to wrap 2D+3D reads.
In some cases in our code we had hard-coded ID3D11Texture2D, where
the code should handle 2D and 3D textures. This happens in ReadPixels,
where we have to handle 3D textures when the user binds a layer of a
3D textures with FramebufferTextureLayer.
This is a refactoring patch only, which makes the error cleaner.
Tests and the bug fix to come in a follow-up patch.
BUG=angleproject:1290
Change-Id: Ie1c293dead4d5b6b4dd6ce24ba2a9146619b141d
Reviewed-on: https://chromium-review.googlesource.com/322680
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
5103f4c0
|
2016-01-26T11:40:18
|
|
Supress AMD OpenGL failures in angle_end2end_tests.
BUG=angleproject:1291
Change-Id: I4fc8cc152bb5ef18fff78bf312a14691e9de0243
Reviewed-on: https://chromium-review.googlesource.com/324030
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
69accbd1
|
2016-01-25T16:22:32
|
|
Supress Mac OpenGL AMD angle_end2end_test failures.
BUG=angleproject:1291
Change-Id: I7fe6a6203c71c893dad97d6e9bc8272164d44f58
Reviewed-on: https://chromium-review.googlesource.com/323790
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
60ec6ea7
|
2016-01-22T15:27:19
|
|
Implement dirty bits for Framebuffer.
The dirty bits set the stage for performance improvements in D3D, but
don't actually reduce any of the redundant work just yet.
BUG=angleproject:1260
Change-Id: Ib84e6a9b7aa40c37c41790f492361b22faaf4742
Reviewed-on: https://chromium-review.googlesource.com/318730
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
e0cc2a4a
|
2016-01-20T10:58:17
|
|
Enable all angle_end2end_tests targeting OpenGL and OpenGL ES backends.
Added failure supressions and filed bugs for failing tests.
BUG=angleproject:1145
BUG=angleproject:1289
BUG=angleproject:1291
BUG=angleproject:1292
BUG=angleproject:1293
BUG=angleproject:1296
Change-Id: Ida78ba855500fe8a6ce6154d43ee01520330e3b1
Reviewed-on: https://chromium-review.googlesource.com/322695
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
9d81989d
|
2016-01-22T16:56:04
|
|
Add GL_OES_EGL_image functions.
Needed to work on Chrome OS.
BUG=angleproject:1297
Change-Id: I78e18472780745f73257c8954f263d236ff92180
Reviewed-on: https://chromium-review.googlesource.com/323470
Tryjob-Request: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Frank Henigman <fjhenigman@chromium.org>
|
|
82e3f3de
|
2016-01-22T17:55:44
|
|
Cast display parm for eglGetPlatformDisplayEXT.
The native display parameter to eglGetPlatformDisplayEXT has type void*.
When building with -DUSE_OZONE the native display type is intptr_t so
a cast is needed.
BUG=angleproject:1297
Change-Id: I947f5f9016926b6e3d590a2e29b5ee1fc883384d
Reviewed-on: https://chromium-review.googlesource.com/323471
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Tested-by: Frank Henigman <fjhenigman@chromium.org>
|
|
33db61d1
|
2016-01-20T10:54:49
|
|
Add support for targetting GLES with DisplayWGL.
BUG=angleproject:1145
Change-Id: I5a0a667621aceedb4662cfb2356d7dbd0d9f7718
Reviewed-on: https://chromium-review.googlesource.com/285557
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
451ed25a
|
2016-01-21T21:16:45
|
|
Fix packSnorm2x16.
Casting -32767.0f to uint16_t on Android resulted in 0.
According to C99 6.3.1.4 footnote 50 this kind of cast behavior is unspecified
BUG=angleproject:913
TEST=build/android/test_runner.py gtest -s angle_unittests --release
Change-Id: I136386fe0aa618c17f07f99d8e1ca72fa407d36a
Reviewed-on: https://chromium-review.googlesource.com/323230
Tryjob-Request: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Yuly Novikov <ynovikov@chromium.org>
|
|
a8e3494e
|
2016-01-20T10:51:40
|
|
Don't force using sized internal texture formats for OpenGL ES.
* LUMA formats don't have sized versions without specific extensions.
* This allows a more direct translation, the driver should do the right
thing.
BUG=angleproject:884
BUG=angleproject:1145
Change-Id: I2ad13db7216eb7c715621a237b13ae9e3035310a
Reviewed-on: https://chromium-review.googlesource.com/322694
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
b2d9ab67
|
2016-01-20T10:50:09
|
|
Update FunctionsGL to load OpenGL ES entry points.
BUG=angleproject:1145
BUG=angleproject:879
Change-Id: I04eb900df28909f97469691a6c05a6af775d7465
Reviewed-on: https://chromium-review.googlesource.com/322693
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
924b7de2
|
2016-01-21T13:54:28
|
|
Always write to gl_Position when compiling shaders with
SH_GLSL_COMPATIBILITY_OUTPUT.
BUG=angleproject:1277
Change-Id: Ib820a46151637e8c61e94b966b970de46ccca6b9
Reviewed-on: https://chromium-review.googlesource.com/323160
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Ian Ewell <ewell@google.com>
|
|
d544cc9f
|
2016-01-11T15:26:42
|
|
Fail any ANGLE test if it outputs D3D11 SDK message in debug mode
Also:
- Disable some Feature Level 9_3 tests that trigger SDK messages
- Fix a debug object name issue. If you try to assign a debug name
to an object twice then you get an SDK warning message. This can
occur if you 'create' two objects (e.g. Rasterizer States) with
identical DESCs on the same device, since D3D11 can optimize
this and return the same object both times.
- Disable the message checks in Line Loops tests, since the tests
trigger incorrect D3D11 SDK messages on Win7 machines
BUG=angleproject:667;angleproject:1282
Change-Id: I7284fb3a11377afde24e0014e21dbcea80ebb126
Reviewed-on: https://chromium-review.googlesource.com/321393
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Austin Kinross <aukinros@microsoft.com>
Tested-by: Austin Kinross <aukinros@microsoft.com>
|
|
fc7cf8e9
|
2016-01-20T15:57:46
|
|
Fixed validation errors in teximage3d and friends.
BUG=angleproject:1169
BUG=angleproject:1101
Change-Id: I3770335d04cafd652c2f3839afca3e4a854e6e76
Reviewed-on: https://chromium-review.googlesource.com/322381
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Ian Ewell <ewell@google.com>
|
|
b9deac1c
|
2016-01-20T10:47:50
|
|
Fix version check for GL_MAX_VARYING_COMPONENTS with OpenGL ES.
BUG=angleproject:1145
Change-Id: Ibd5dab0fe54516427e6f7697559fb0ef670e1035
Reviewed-on: https://chromium-review.googlesource.com/322692
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
70c27e8e
|
2016-01-20T14:41:42
|
|
Revert "Revert "WindowSurfaceCGL: unregister the SwapLayer on destruction""
This reverts commit 10277159570e987a02a112fa994a4b82845786d3.
Change-Id: I9ecf977845c6ee01d7c3e3791c23673407cfb91a
Reviewed-on: https://chromium-review.googlesource.com/322213
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
dd46e643
|
2016-01-20T15:13:10
|
|
Suppress ProvokingVertexTest.FlatTriWithTransformFeedback on Mac AMD
BUG=
Change-Id: Ia6e7c67aaed40cca70be5522e0b9edff2610b63a
Reviewed-on: https://chromium-review.googlesource.com/322212
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
|
|
c9d442d7
|
2016-01-20T11:17:24
|
|
Sync dirty objects at the GL layer.
The dirty bit system currently puts dirty objects in line with the
rest of the dirty state. This means at the Renderer level, the sync
manager code would call back to the GL layer to sync the specific
objects that are dirty. This is a bit of a layering violation (impl
layer mutating top-level objects) and also a bit of repeated boiler-
plate code.
Fix this by treating dirty objects in a separate dirty bit set, called
the dirty objects. This also has the benefit of allowing us to re-
implement the dirty object set at a later date, if we want to store
them in a list, or other structure.
Also don't skip the state sync at the GL level if there are no GL
dirty bits. The Impl might have some dirty bits locally, and it's
better to call syncState and do the no-op check in the Impl than it
is to also sync local state at every sync point (draw call, read, etc)
in each Impl.
BUG=angleproject:1260
Change-Id: Id5d4beb2a1c4e3ad351edf54e3f32e828d5f5da3
Reviewed-on: https://chromium-review.googlesource.com/318790
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
6fd7472f
|
2016-01-20T10:59:34
|
|
Disable dEQP in GN.
Change-Id: If2b3097f976a4433625b393c8562ea5d22c0c070
Reviewed-on: https://chromium-review.googlesource.com/322211
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
c29968bb
|
2016-01-20T11:17:23
|
|
Refactor FBO related entry points.
Change the validation to the consistent style for easy auto-generation
and make the context itself implement the entry points. This will more
easily allow us to sync state without passing the Context to the
Texture methods, or doing work in the entry point.
BUG=angleproject:1260
BUG=angleproject:747
Change-Id: I7ed6ec5418b7f51d9e59529267b14b76b87743fb
Reviewed-on: https://chromium-review.googlesource.com/319823
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
45838e33
|
2016-01-15T11:40:56
|
|
WindowSurfaceGLX: ignore X11 when destroying windows
Chromium seems to destroy the parent window before calling asking to
destroy the EGL surface. We don't want to generate a BadWindow X11
error in this case so we ignore errors when calling XDestroyWindow.
BUG=angleproject:1281
Change-Id: Ie63d188b6206c0ff3b5ac6a5a874e7d6018489e4
Reviewed-on: https://chromium-review.googlesource.com/322361
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
07651e24
|
2016-01-20T10:45:08
|
|
Fix OpenGL ES extension checks for floating point textures.
BUG=angleproject:1145
BUG=angleproject:884
Change-Id: I1ab16a187155573989f0605dbdd06f73ad8c8c58
Reviewed-on: https://chromium-review.googlesource.com/322691
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0e7fe675
|
2016-01-20T10:41:05
|
|
Don't expose OES_texture_float_linear without OES_texture_float.
Due to our extra logic that only exposes OES_texture_float if the format
is renderable, it's possible that the OES_texture_float_linear can be
exposed without OES_texture_float. Make sure that can't happen.
BUG=angleproject:1145
Change-Id: I9b1262a39872abf4654d4e4751706679e24926f3
Reviewed-on: https://chromium-review.googlesource.com/322690
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
45095581
|
2016-01-14T16:53:36
|
|
Enable resource sharing for D3D11 devices created with WARP
ANGLE currently blocks resources sharing if ANGLE was initialized using
EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE. This is to prevent applications
from trying to share resources between hardware D3D devices and WARP.
However, this prevents developers from deliberately initializing ANGLE
to run on WARP, and then sharing resources with an external WARP device.
ANGLE should support that scenario.
BUG=angleproject:1283
Change-Id: I86681355bf34f7fe3367261dd76c434a9fa60739
Reviewed-on: https://chromium-review.googlesource.com/317318
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Austin Kinross <aukinros@microsoft.com>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
88829e84
|
2016-01-12T13:04:41
|
|
Don't compile D3D geometry shader when using instanced point emulation
If ANGLE is using instanced point sprites (e.g. on Feature Level 9_3) then it
still tries to compile the point sprite geometry shader. It shouldn't do this.
Change-Id: I6e7753dd337c385893fc4bea6c8438aeaf5e8427
Reviewed-on: https://chromium-review.googlesource.com/321397
Tryjob-Request: Austin Kinross <aukinros@microsoft.com>
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a433388d
|
2016-01-14T17:24:50
|
|
Implement eglWait*
This mostly does nothing except on X11 where it calls the equivalent
glXWait*. eglWait* are needed because they are used by Chromium and
were triggering an UNREACHABLE().
BUG=angleproject:1281
Change-Id: Iff9c127b16841bc27728304a5ba2caff49ff11b5
Reviewed-on: https://chromium-review.googlesource.com/322360
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
10277159
|
2016-01-19T13:22:48
|
|
Revert "WindowSurfaceCGL: unregister the SwapLayer on destruction"
This reverts commit da66ed625901c1ec2df324aa9563ee275130be4f.
Change-Id: Ifcef6e06d1f3f30c14f4397d659df6bab857d05d
Reviewed-on: https://chromium-review.googlesource.com/322392
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
986d09df
|
2016-01-07T11:23:21
|
|
Improved performance of RefCountObject
Drop virtual specifier on addRef() and release(). There are no derived
classes which re-implement these functions.
Inlined implementation of constructor and destructor. Destructor is
still virtual, but empty implementation is now visible for derived
classes. Destructor is now protected to make sure that object is
destructed through release().
BUG=angleproject:1263
Change-Id: I744430c1d99b917f3d7b63d47305d937be323ee7
Reviewed-on: https://chromium-review.googlesource.com/320861
Tryjob-Request: Tibor Ouden, den <tibordenouden@gmail.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
46e6c7a5
|
2016-01-18T14:42:30
|
|
Add stubs for no_error extension.
In some cases ANGLE flushes state for FBOs during validation. For
testing of the state synching code for FBOs, this makes end-to-end
testing impossible.
Solve this by partially implementing a hidden no_error extension,
hidden to the user by not exposing the extension string, but allowing
us to skip validation of some of the FBO methods that require checking
for complete FBOs.
BUG=angleproject:1280
BUG=angleproject:1260
Change-Id: I708f348ccec6697b974c48cd890ec75a703abe21
Reviewed-on: https://chromium-review.googlesource.com/322210
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
e5df3066
|
2015-11-18T13:45:19
|
|
D3D: Run applyTextures before applyShaders
applyShaders will update uniform data by uploading the constant buffer.
In the future uniform data will contain the base level of textures so
that shaders can use it to adjust results of texture functions. The most
natural place to set the base level in uniform data is applyTextures, so
it needs to be run before applyShaders.
updateSamplerMapping needs to be called before applyTextures, but
genericDraw* functions already do that. Remove redundant
updateSamplerMapping call from ProgramD3D::applyUniforms.
BUG=angleproject:596
BUG=angleproject:1092
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: I1828f7bdc75999872a26941a02cb4b6c6a66094d
Reviewed-on: https://chromium-review.googlesource.com/322121
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
a7416ff7
|
2016-01-18T12:22:55
|
|
Fix texture completeness check when base level > 0 is used
ANGLE would previously treat a texture as incomplete whenever its base
level was above 0. This was because the base level wasn't being taken
into account correctly when determining what size the image at a specific
mip level should be. Fix this by taking the base level into account when
determining the expected size.
BUG=angleproject:596
TEST=angle_end2end_tests
Change-Id: I4b05514aed2858797ea46cf3570c3c40e5efc508
Reviewed-on: https://chromium-review.googlesource.com/322132
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
da66ed62
|
2016-01-08T13:35:02
|
|
WindowSurfaceCGL: unregister the SwapLayer on destruction
Previously the SwapLayer was kept in the CALayer hierarchy after
WindowSurfaceCGL's destruction which caused SwapLayer's callbacks to be
called after the shared data was freed, causing a segfault.
BUG=angleproject:1233
Change-Id: I71dce45330e6b7d5f06a41198c10890b1d8d520e
Reviewed-on: https://chromium-review.googlesource.com/320711
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
c8c99a0a
|
2016-01-14T16:47:22
|
|
Add a texture test with a mix of different sampler types
This test makes sure that even if sampler / texture registers get
grouped together based on type in the HLSL backend of the shader
translator, the D3D renderer still has the right register index
information for each ESSL sampler.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: Id09f96cfa903cd20c8e7229980fa363bb07b6045
Reviewed-on: https://chromium-review.googlesource.com/322200
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8ff8da52
|
2016-01-14T17:42:23
|
|
Create DirectComposition backbuffers as SHADER_INPUT
With EGL_ANGLE_surface_orientation this is now necessary.
Change-Id: I92a20a128640f7f30b8d1d18173336d40fdad187
Reviewed-on: https://chromium-review.googlesource.com/322265
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: John Bauman <jbauman@chromium.org>
|
|
1a679900
|
2016-01-14T12:21:47
|
|
Test shadow sampler + 3D sampler in the same shader
Shadow samplers use a different sampler object type in D3D11 HLSL than
other ESSL samplers. They need to be able to coexist in the same shader.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: I960f6a41c0237ed912b072527e14aebeca98cf7c
Reviewed-on: https://chromium-review.googlesource.com/322120
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
51f1c0f0
|
2016-01-13T16:16:24
|
|
Add a workaround for default framebuffer sometimes being SRGB
On some GL driver/window system combinations the default framebuffer may
do SRGB conversion, which affects the values written there by draw
operations and read by readPixels. This is known to happen at least on
some Intel systems. For this reason, use an FBO with a known format
instead in the texture end2end tests.
This enables turning on most TextureTest cases on the OpenGL backend.
Tested on Intel HD 4600.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: I5a39bd1dadf15b7c52793a0f66d67e9f61618b83
Reviewed-on: https://chromium-review.googlesource.com/321612
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
eb316923
|
2016-01-12T10:22:09
|
|
Include function in EVENT macro on non-MSVS.
Adding the function is very helpful for diagnostic messages. Also
change the name of the debug trace capture file to the more distinct
angle_debug.txt from debug.txt.
Change-Id: I59b3d61568fd3917cd8c4a8125ee1c28d608aa30
Reviewed-on: https://chromium-review.googlesource.com/321871
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
5fc4e56d
|
2016-01-11T10:10:50
|
|
Remove two unused methods in BlockLayoutEncoder.
Using these methods to compute block offsets instead of the block
layout info could lead to some confusion.
Change-Id: Iaa3b91bdb517632107923076e3ece7efeab278c2
Reviewed-on: https://chromium-review.googlesource.com/321250
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Alexis Hétu <sugoi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
19d48db1
|
2016-01-13T14:43:21
|
|
Fix incorrect delete function call in TextureTest
The test must call glDeleteBuffers to delete a buffer instead of
glDeleteTextures. This was one reason behind the texture tests failing
on the GL backend.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: I67042f6948146f3c3fca9e01231b0c4935a6f08d
Reviewed-on: https://chromium-review.googlesource.com/321611
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8000a99e
|
2015-12-15T14:11:59
|
|
WindowSurfaceCGL: make resizing work correctly.
Previously the code didn't resize the depth buffer. Also adds a magic
setNeedsDisplay call when resizing a CALayer.
BUG=angleproject:1233
Change-Id: Id1906312f58d474e95a1b5ebfc15eff4344cd126
Reviewed-on: https://chromium-review.googlesource.com/318450
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
5faa15bf
|
2016-01-11T13:32:48
|
|
Fix null sampler warning in TextureTest.TextureNPOT_GL_ALPHA_UBYTE
The test deliberately tries to render a scene using an invalid texture.
ANGLE rendered this correctly, but when it bound the dummy 1x1 black texture
that's used instead of invalid textures, it didn't bind a sampler state. This meant
that D3D had no pixel shader samplers bound, and outputted a debug warning.
Also, technically the test should have been setting GL_UNPACK_ALIGNMENT=1,
but that wasn't impacting the result of the test.
BUG=angleproject:1248
Change-Id: I871706d518077ea840a585ae0df8f9176e130cb1
Reviewed-on: https://chromium-review.googlesource.com/321391
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
2173db3d
|
2016-01-12T13:55:14
|
|
Add sampler array tests
This adds some coverage for samplers that is missing from dEQP.
The shaders in the added tests both have a sampler array with two
samplers. The test shaders sample both textures, add up the results,
and the tests then check that the results of the shaders are correct.
Only constant indexing is used to access the sampler arrays.
One test accesses the sampler array in the main function, another one
first passes the array as a parameter to a user-defined function.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: I9a0100705ac0da4905d50da37c0149fdbdd24c42
Reviewed-on: https://chromium-review.googlesource.com/321623
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
4644a20b
|
2016-01-12T15:12:53
|
|
Add a test for sampler as a function parameter
This adds some coverage for samplers that's missing from dEQP.
The test shader passes a sampler to an user-defined function, samples
the texture there and sets the returned sample to gl_FragColor. The
test then checks that the shader result is correct.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: I2cc511e591a4af01515c6fb38fd43c5f15337bcb
Reviewed-on: https://chromium-review.googlesource.com/321622
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
53a2da13
|
2016-01-11T15:43:32
|
|
Test drawing with a shader with two different sampler types
This adds some test coverage that's missing from dEQP.
The test uses two different samplers in a shader, a cube map sampler
and a 2D texture sampler, adds the sampling results together and checks
if the result is correct.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: If21e24c964fc208b5d1ccd446834dabf13194944
Reviewed-on: https://chromium-review.googlesource.com/321621
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
4a8329f2
|
2016-01-11T17:12:57
|
|
Refactoring: Split TextureTest to multiple classes
This removes the cube map setup and the draw scale parameter from the
tests that don't need them, and reuses the code for setting up the window
and the shader program for most of the texture tests. The tests are now
structured as follows:
TexCoordDrawTest: Test class that sets up a shader program for drawing
with texture coordinates. Vertex shader source can be overridden in
subclasses, and fragment shader source must be specified in subclasses.
Texture2DTest: Inherits TexCoordDrawTest, sets up a 2D texture and a
shader for drawing from it.
Texture2DTestWithDrawScale: Inherits Texture2DTest, adding a scale
parameter that scales the quad that gets drawn.
TextureCubeTest: Inherits TexCoordDrawTest, sets up a cube map and a 2D
texture and a shader for drawing from them.
Texture2DArrayTestES3: Inherits TexCoordDrawTest. Reserves a texture ID
and sets up an ESSL3 shader for drawing from a 2D texture array.
Also add a few comments about where things being tested are specified.
Also, ANGLETest::drawQuad parameter names are renamed to make their
meaning clearer. The parameters affect the vertex shader attribute
values, which the shader may use for other things besides setting the
vertex position.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: Id673e36d5883aaaf47f2f830c2a1ad0ca293d578
Reviewed-on: https://chromium-review.googlesource.com/321620
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
c89df2ba
|
2015-12-07T13:05:17
|
|
Add loadable_module versions of libEGL and libGLESv2.
Reland with a link fix for Clang on Windows
In order to implement the --use-gl=angle Chrome flag on Linux, we need
to have the ANGLE .so directly in the build directory however GYP
places shared_libraries under lib/ on Linux. On the contrary loadable_modules
cannot be linked against so we need to keep the shared_library targets.
This commit adds _ANGLE versions of the libEGL and libGLESv2 targets as
loadable module that depend on their respective shared library.
BUG=522967
Change-Id: Iad968ab786b94b6041c279921de99633d23b48a7
Reviewed-on: https://chromium-review.googlesource.com/318470
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
1fae3556
|
2016-01-07T14:33:48
|
|
Add dEQP Linux GN integration.
BUG=angleproject:1272
Change-Id: I20cb8968221c25bb374b3cc71d7ca619a35f1a2f
Reviewed-on: https://chromium-review.googlesource.com/320781
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
5f80d016
|
2016-01-11T11:16:01
|
|
Disallow invariant(all) pragma in ESSL 3.00 fragment shaders
ESSL 3.00.4 section 4.6.1 says that using #pragma STDGL invariant(all)
in a fragment shader is an error, so make it an error. This spec
language is not found in ESSL 1.00, and it's been removed in ESSL 3.10.
BUG=angleproject:1276
TEST=angle_unittests
Change-Id: I2022f35475f867304b55dfb142f8568f6df28830
Reviewed-on: https://chromium-review.googlesource.com/321240
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
edbc2449
|
2016-01-04T11:25:00
|
|
Add dEQP GN integration.
This is Windows-only for now, but will be expanded to Linux. Also do
a bit of refactoring in our deqp.gypi file.
BUG=angleproject:1272
Change-Id: I526a99fe3b91a2d9e8901c7e033a4916a06780be
Reviewed-on: https://chromium-review.googlesource.com/320800
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
82b5ab60
|
2015-12-11T09:30:15
|
|
Compile out GLSL/ESSL translator output code if it's not needed
In WinRT we only use the HLSL code, so the GLSL/ESSL output code
is not necessary and is only adding to our binary size.
BUG=angleproject:1250
Change-Id: I9363ca3981bde50a230f8353c1bcc09f6ea209cb
Reviewed-on: https://chromium-review.googlesource.com/317358
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Austin Kinross <aukinros@microsoft.com>
Tested-by: Austin Kinross <aukinros@microsoft.com>
|
|
ff318af1
|
2015-12-22T15:34:45
|
|
Fix BlendMinMaxTest.RGBA16F on D3D11 Feature Level 9_3
This test checks for OES_texture_half_float, but it's trying to use a
16F texture as a color buffer so it should be checking for
EXT_color_buffer_half_float.
Since EXT_color_buffer_half_float requires more format support (e.g.
R16F, RG16F, RGB16F) than OES_texture_half_float, it's possible for an
implementation to support one extension and not the other. D3D11 Feature
Level 9_3 does this.
Change-Id: I40fb38aa3f419be2606464bd0476cd064afe90fa
Reviewed-on: https://chromium-review.googlesource.com/319642
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
9a866453
|
2016-01-08T10:35:55
|
|
Fix compilation error on Linux
BUG=574909
Change-Id: I6dc4b010b67a9c7f3b64215a168e6ed5e894989b
Reviewed-on: https://chromium-review.googlesource.com/320635
Commit-Queue: Byungseon Shin <xingri@gmail.com>
Tested-by: Byungseon Shin <xingri@gmail.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
|
|
539146e1
|
2016-01-06T19:34:18
|
|
Add rpath for GN build of angle_end2end_tests.
This fixes the static library build of this target on Linux.
BUG=angleproject:1270
Change-Id: Id65bd9b7136918829f385920b540a4df83650c6f
Reviewed-on: https://chromium-review.googlesource.com/320615
Tested-by: Kenneth Russell <kbr@chromium.org>
Tryjob-Request: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8d8b108a
|
2016-01-04T16:44:57
|
|
Disallow local function prototypes
Function prototypes should not be allowed inside other functions
according to ESSL 3.00.4 section 4.2.4.
BUG=angleproject:1068
TEST=angle_unittests,
dEQP-GLES*.functional.shaders.functions.invalid.local_function_proto*
Change-Id: I54160da4d49b92a6cd7cbee020e67733963d4e10
Reviewed-on: https://chromium-review.googlesource.com/320091
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
5d653186
|
2016-01-04T14:43:28
|
|
Disallow multiple function prototypes in ESSL 1.00
The same function can't be declared twice in ESSL 1.00. In ESSL 3.00 this
is allowed.
A function prototype following the definition of that function is not
interpreted as redeclaration, and the shader compiler continues to allow
this.
BUG=angleproject:1067
TEST=angle_unittests,
dEQP-GLES2.functional.shaders.functions.invalid.double_declare*
Change-Id: I6d2ddafd456d378d92839600f19069ad1cd19aff
Reviewed-on: https://chromium-review.googlesource.com/320082
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
ee63f5d9
|
2016-01-04T11:34:54
|
|
Move function parsing code to ParseContext
This change is pure refactoring. It will make it easier to fix bugs
related to function declarations.
BUG=angleproject:911
BUG=angleproject:1067
BUG=angleproject:1068
TEST=angle_unittests
Change-Id: I031783dc02612d9cf3ff7a9c8291cf8ab33577aa
Reviewed-on: https://chromium-review.googlesource.com/320081
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
e1743f37
|
2016-01-06T05:24:22
|
|
Clang warning fixes
This fixes member initialization order and unused private member
warnings that broke the Clang build after the last Angle roll.
BUG=82385
Change-Id: If866f352bda6d66093c180fdbec6c16bf902b628
Reviewed-on: https://chromium-review.googlesource.com/320466
Reviewed-by: Nico Weber <thakis@chromium.org>
Tryjob-Request: Nico Weber <thakis@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Tested-by: Nico Weber <thakis@chromium.org>
|
|
ce95d05b
|
2015-12-20T22:20:14
|
|
Fixed memory leak in egl::Error and gl::Error
Move assignment operator of both classes contained a memory leak.
Changed type of mMessage from mutable std::string *to mutable
std::unique_ptr<std::string>
BUG=angleproject:1264
Change-Id: I7d1419b2e9f385b36afebfd6371983be33ee9e61
Reviewed-on: https://chromium-review.googlesource.com/319520
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Tibor Ouden, den <tibordenouden@gmail.com>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
69bbc98e
|
2016-01-05T13:25:05
|
|
Fix case of #includes in DisplayCGL.mm
Building libGLESv2 on Mac currently results in
.../DisplayCGL.mm:9:10: fatal error: 'libANGLE/renderer/gl/CGL/DisplayCGL.h' file not found
Other files in libANGLE/renderer/gl/cgl are using lowercase `cgl`
for #includes. DisplayCGL.mm should do the same.
Change-Id: I03b68041ef3194eb14d65738e4e4fb12711b1b20
Reviewed-on: https://chromium-review.googlesource.com/320155
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
ca311ddb
|
2015-12-07T15:07:48
|
|
Enable and fix the -Wshorten-64-to-32
BUG=angleproject:635
Change-Id: If09014508d5f4dfeb17ac946672a76a98b8ad175
Reviewed-on: https://chromium-review.googlesource.com/316580
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
7ee40d1a
|
2016-01-04T08:37:00
|
|
Fix compilation failures on OSX standalone builds
BUG=
Change-Id: Ifd40ae30d601227caf550546fcffc286cf533a73
Reviewed-on: https://chromium-review.googlesource.com/320290
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
ce8045dc
|
2016-01-04T19:40:47
|
|
Fix EGL_ANGLE_flexible_surface_compatibility string
The extension string was misspelled.
Change-Id: Ic44dfe7340696e7e49c4924db068e9454927d5c4
Reviewed-on: https://chromium-review.googlesource.com/320371
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0d53c400
|
2016-01-05T03:30:51
|
|
Revert "Ignore clang -Wall warning."
This was not working as intended. The correct fix was implemented in
444922662a59a45ad8f86ec9480b180571337f4e
This reverts commit 74b92323c9a210178ab97cc9418d6bf639cb9d8c.
Change-Id: Ib2bc3861bcdb49555b59981ca95f1c1c1e924d7d
Reviewed-on: https://chromium-review.googlesource.com/320480
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
465b3a5f
|
2015-12-15T12:08:24
|
|
Add texture sampling perf test
The test generates a texture containing random data and then blurs it in
a fragment shader using nearest neighbor sampling. The test is
specifically designed to test overhead of GLSL's builtin texture*()
functions that may result from how ANGLE translates them on each backend.
BUG=angleproject:1261
TEST=angle_perftests
Change-Id: I188fa8c07e609b7f371e587358f913b506bd7d44
Reviewed-on: https://chromium-review.googlesource.com/319382
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
9b6b351e
|
2016-01-05T14:16:22
|
|
Fix build issue in direct composition patch
MSVS2013 was warning about implicit conversion from EGLint to bool.
Fix this by making the conversion explicit like another similar
conversions.
The issue got introduced by the recent patch "Implement
EGL_ANGLE_direct_composition extension". Since the issue only affects
some particular build varieties, it's simpler to fix it rather than
revert the patch.
Change-Id: I120d34fddb48278856cbb0339ce25c49e57eb781
Reviewed-on: https://chromium-review.googlesource.com/320530
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
49ae88ba
|
2015-12-09T16:44:29
|
|
Implement EGL_ANGLE_direct_composition extension
On D3D11, if dcomp.dll can be loaded then EGL_ANGLE_direct_composition
is exposed. Setting EGL_DIRECT_COMPOSITION_ANGLE as an attrib on a
surface will force it to use DirectComposition to draw to the screen,
possibly saving power.
BUG=524838
Change-Id: I3ea175a97bbca1a3388ffe52fdd1587a2f0c2ce7
Reviewed-on: https://chromium-review.googlesource.com/319214
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: John Bauman <jbauman@chromium.org>
|
|
44492266
|
2016-01-04T13:04:08
|
|
Disable virtual destructor warning in dEQP.
This small error in dEQP triggers a warning that was recently
enabled in Chromium builds. We should remove the suppression once
we fix dEQP.
BUG=angleproject:1271
Change-Id: I9df3a304043b6decc00440103d105c9de76dc2db
Reviewed-on: https://chromium-review.googlesource.com/320320
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
c22cf238
|
2016-01-04T13:58:38
|
|
Fix missing virtual destructor warning.
This only showed up on Linux/standalone builds for me. The error
was added during the Debug extension patch.
Change-Id: Ibfcbdb61a71f30e863a10719c552ce662f835256
Reviewed-on: https://chromium-review.googlesource.com/320330
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
7f448b58
|
2015-12-16T13:31:57
|
|
Add an EGL_ANGLE_surface_orientation extension.
BUG=angleproject:1262
Change-Id: Ifbb0f5302311a68a0c6f02baaea706cbb7055a52
Reviewed-on: https://chromium-review.googlesource.com/320011
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
666cb828
|
2016-01-04T17:44:09
|
|
Revert "Add an EGL_ANGLE_surface_orientation extension."
Compilation warnings on clang.
This reverts commit 18cc14b5951842ede85c06dcbc0bba230bcedc45.
Change-Id: If58047486116e34ef30c4b317d3fb47cd2349d15
Reviewed-on: https://chromium-review.googlesource.com/319822
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
18cc14b5
|
2015-12-16T13:31:57
|
|
Add an EGL_ANGLE_surface_orientation extension.
BUG=angleproject:1262
Change-Id: I863c46c8557604da045447550f7d69831c9f06b5
Reviewed-on: https://chromium-review.googlesource.com/318780
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
329af698
|
2016-01-04T11:12:12
|
|
Make generate_parser.sh run from any working directory
The script used to have partial support for specifying complete paths to
the files it referenced, but the patch command didn't work if the
working directory wasn't src/compiler/translator. It's simplest to fix
the script by just changing the working directory in the script.
Change-Id: If3642cbe11436d8c7553cd1812ee0f6c19fe990b
Reviewed-on: https://chromium-review.googlesource.com/320270
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
66641c61
|
2016-01-04T15:31:15
|
|
Fix typo in shader test
The only error in the test should be the non-integer index. gl_FragColor
should be used correctly.
BUG=angleproject:1254
TEST=angle_unittests
Change-Id: I0b7a36be5485661cc03bf2c476aaacae5d3b6e76
Reviewed-on: https://chromium-review.googlesource.com/320280
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d8cd6f2c
|
2016-01-02T12:44:33
|
|
Fix clang warning in Buffer.cpp
BUG=angleproject:520
Change-Id: I3ee9e61a6a25eb6f16cf7d68d6da27ba1eec752d
Reviewed-on: https://chromium-review.googlesource.com/320240
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
70d0f499
|
2015-12-10T17:45:46
|
|
Implement GL_KHR_debug.
BUG=angleproject:520
Change-Id: I9ced3e7ab1515feddf2ec103c26b2610a45b1784
Reviewed-on: https://chromium-review.googlesource.com/319830
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
74b92323
|
2016-01-02T09:58:25
|
|
Ignore clang -Wall warning.
Change-Id: I76e3cd5038457a7d978497ef9a5ebee60b05e34d
|
|
66988745
|
2015-12-22T19:39:19
|
|
Revert "Implement GL_KHR_debug."
This reverts commit 6c521b7a70a53b1c9f7762e53e34b5a8146b0f7b.
Change-Id: I6ff981198e31f34d3e405edea6277ee75516d6ee
Reviewed-on: https://chromium-review.googlesource.com/319820
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
6c521b7a
|
2015-12-10T17:45:46
|
|
Implement GL_KHR_debug.
BUG=angleproject:520
Change-Id: I78d14cc8c94f5cef58604220f0ca847473b25bf8
Reviewed-on: https://chromium-review.googlesource.com/317820
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
8047f065
|
2015-12-15T17:54:42
|
|
Improve perf testing framework
The ANGLERenderTest subclasses have a parameter "iterations". Previously
most of these tests would perform iterations^2 iterations, since the
looping was done both in ANGLERenderTest and in the individual test
classes. Do the looping only in the individual test classes instead.
This enables getting rid of separate beginDrawBenchmark() and
endDrawBenchmark() functions.
Some other unused code is also removed:
1. stepBenchmark function
2. unused parameters to step()
This makes the core loop of running tests simpler.
The perf testing framework also now has shared logic for deciding when
to end a given test.
The score calculation for tests is also changed. Instead of reporting
just the number of operations done, it is reported relative to the actual
run time of the test. This should make the test results more accurate,
since run time of the tests may have some variation. It also enables
changing the run time of the tests without rebaselining them.
In the tests that use GPU, GPU operations are also waited to finish
before stopping the timer.
BUG=angleproject:1261
TEST=angle_perftests
Change-Id: I69e9aad8afd2d9dedd60e144f0a5d4203618feef
Reviewed-on: https://chromium-review.googlesource.com/319381
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
add0ef14
|
2015-12-17T15:43:31
|
|
Remove deprecated ShShaderOutput versions.
These aren't referenced from Chromium code any more.
BUG=chromium:550487
Change-Id: Ie4094667ec5f739efd9f1253ffdb779deaf3cebc
Reviewed-on: https://chromium-review.googlesource.com/319162
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Kenneth Russell <kbr@chromium.org>
|
|
5aeed4cc
|
2015-12-09T13:36:43
|
|
Using dirty bit notification for D3D9 viewport state
BUG=angleproject:1249
This is a continuation of D3D dirty bit refactor for D3D9 performance
enhancements
Change-Id: Iedd7eb003981cac7f81a58560cb326760f01c06a
Reviewed-on: https://chromium-review.googlesource.com/317313
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Dian Xiang <dianx@google.com>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
fecbed9f
|
2015-12-17T12:01:12
|
|
Fix code style in perf tests
1) Format switch/case with git cl format
2) Change NULL -> nullptr
3) Change int to GLint where appropriate
4) Use more appropriate variants of asserts
BUG=angleproject:1261
TEST=angle_perftests
Change-Id: I97d6260dbd72ef3897fff145682b7043bf323b76
Reviewed-on: https://chromium-review.googlesource.com/319380
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|