dcacca1449afecd0604a16c8dc97e2a67c47ce56 |
25-Apr-2017 |
bohu <bohu@google.com> |
Emulator: update opengl to bb8d138b Bug: 37302997 Test: Build and run sdk_google_aw_x86-userdebug emulator To commit bb8d138b3e83567d68810d059d69654fa5e8a303 Merge: 7c53152 bb1f88a Author: Josh Gao <jmgao@google.com> Date: Fri Apr 14 23:08:26 2017 +0000 Rename socket_loopback_server to _socket_loopback_server. Change-Id: Id602f0c1df3be423e37af5f6c91d037d713c3b7a (cherry picked from commit 588c0a94e384e07c8d38185710a1a968823594ba) (cherry picked from commit 1b5d5a70fe49f2826a225878ddcd8d6ad561c886)
cpStream.cpp
|
d3ae106098bc2338151971247dd182e7b88a5b0e |
18-Jan-2017 |
Lingfeng Yang <lfy@google.com> |
[WIP] ES 3.1 guestside changes Change-Id: Ie4619ee6e161274383b9f6b0d2922344da20f62f
ixedBuffer.h
LClientState.cpp
LClientState.h
LSharedGroup.cpp
lUtils.cpp
|
26a8b4be35290878c2f5f4adc2e0cfef6d4085d9 |
12-Jan-2017 |
Lingfeng Yang <lfy@google.com> |
[GLESv3] Fix build Change-Id: I1255b2505eec7ce032992b99c20df4a1dca4394f
LClientState.cpp
LSharedGroup.cpp
|
4a66b3129550b10aa4da55af08272f3dbeba87c4 |
09-Jan-2017 |
Lingfeng Yang <lfy@google.com> |
[GLESv3] Transform feedback state tracking Needed to pass some negative_api tests involving transform feedback. Change-Id: I7be230bb6432c32641de6bb9249fd00ba3dfe926
LClientState.cpp
LClientState.h
|
b3dc29ff8fd9541cdf567a8a6ef3229b2852f128 |
09-Jan-2017 |
Lingfeng Yang <lfy@google.com> |
[GLESv3] Shader state updates - Track program pipelines - Track separate shader programs - Track original shader source in guest Change-Id: I8f54089ddf12d03677275cde58ea7f267e410482
LClientState.cpp
LClientState.h
LSharedGroup.cpp
LSharedGroup.h
|
6b437bfe760a046d1aed3c03eaae7116218a816c |
09-Jan-2017 |
Lingfeng Yang <lfy@google.com> |
[GLESv3] glUtils update for ES 3.x Change-Id: Iaf9b5832af0822d9f663a5365e7ae9a7cee426cc
lUtils.cpp
lUtils.h
|
35d5f3bda31d60f2b9b18ba64eb43a76e72ee125 |
09-Jan-2017 |
Lingfeng Yang <lfy@google.com> |
[GLESv3] FBO state - Draw/read framebuffers - Multisampled render buffers - Multiple color attachments - GL_DEPTH_STENCIL attachment Change-Id: Ic0f51633a42a14d333b6dc3fb52c6fa9de0bfe17
LClientState.cpp
LClientState.h
|
f654f3ff3229303e684b7e0def4fe41781700f5e |
09-Jan-2017 |
Lingfeng Yang <lfy@google.com> |
[GLESv3] ES 3.x buffer state - VAOs - indexed buffers Change-Id: I743c3e22bdbb67ca0b6cecac6b231cd674a5061f
LClientState.cpp
LClientState.h
LSharedGroup.cpp
LSharedGroup.h
|
74e29295ec43efde4365f08f20d7e1515c182b99 |
10-Jan-2017 |
Lingfeng Yang <lfy@google.com> |
[GLESv3] Texture state tracking upgrades - TextureUtils to get the low down on all offset/size related calculations (ripped from SwiftShader) - This involves track of all PBO fields - Move TextureRec and friends to GLSharedGroup - Implement new encoder utils to use in encoder Change-Id: Ic6585f49d2928fe965181ec706d5fefa8713e0eb
ndroid.mk
LClientState.cpp
LClientState.h
LESTextureUtils.cpp
LESTextureUtils.h
LSharedGroup.cpp
LSharedGroup.h
extureSharedData.h
|
e6556dcf96ef0b859fe04d8caf7c40fdd6d8d254 |
09-Jan-2017 |
Lingfeng Yang <lfy@google.com> |
[GLESv3] versions, es > 2, encoder - Encoder with ES 3.x entry points - Allow ES versions > 2 depending on host capability Change-Id: I71e374f1685610bb0e4f9e04f4bba87b0cbaa02b
LClientState.h
odec_defs.h
l_base_types.h
|
b99406c86fcf4bf9e0eec5fc08d2f59515cf9e3f |
22-Nov-2016 |
Yahan Zhou <yahan@google.com> |
Fix glLinkProgram with invalid program name glLinkProgram might try setting up program attributes even when an invalid program name is passed to it. This patch fixes it. BUG: 33069416 Change-Id: I93ed140095b67df47b158ba837c4aac8eb9e8e50
LSharedGroup.cpp
LSharedGroup.h
|
ac0e8ca014917c8b87e50ad9873c7152cec86067 |
04-Nov-2016 |
Yurii Zubrytskyi <zyy@google.com> |
Improve ChecksumCalculator - Expose the checksum sizes through public constants to allow users to preallocate static arrays for those - Get rid of a slower memcpy() operations in checksum calculation Change-Id: Ieaa92fce7b32b75a5db0f94d505c917ecfa16f74
hecksumCalculator.cpp
hecksumCalculator.h
|
fa68c932b2bb05583a2d9905b27f035f0ba4e966 |
18-Oct-2016 |
Lingfeng Yang <lfy@google.com> |
Fix build Change-Id: Ib64555ca689cd514139d5a8b712f1266ee38ab49
ndexRangeCache.h
|
8e2b6e0293796100b62e451a7b6989e25682c8f3 |
14-Oct-2016 |
Lingfeng Yang <lfy@google.com> |
Speed up draw-call-bound apps with index range cache Previously, we were looping through the entire index buffer (can be 10^3-10^4+ items) on every draw call, in order to find min/max vertex index. This operation often consumes half or more of the time taken per draw call (from systrace). The min/max vertex index are required if: - we are in some "immediate array" mode where we got an array passed as "offset" argument of glDrawElements (i.e., index buffer 0 bound) - validation (dEQP tests, debugging draw calls where vertex buffer out-of-bounds is in question) ANGLE uses the concept of an "index range cache" in order to avoid recalculating index ranges that are known already. This CL incorporates the IndexRangeCache class from ANGLE, greatly improving glDrawElements run time by making it not depend on the size of the index buffer. It also makes a slight further tweak: if we do not flush every draw call, but instead every two draw calls, we have lower pipe overhead and can get about 1 FPS more. The performance improvement: ~10-20% FPS on non-draw-call-limited GPUs. Linux, Quadro K2200: Antutu v6: ~35->~40 FPS No dEQP GLES2 or EGL regressions were found. Change-Id: I29be0f405c6d3e3257e212912c6af6c6f3e12fa7
ndroid.mk
LSharedGroup.cpp
LSharedGroup.h
ndexRangeCache.cpp
ndexRangeCache.h
lUtils.h
|
e00ec9ddda30f6be5c027ccffd39e98a84e9acc9 |
16-Sep-2016 |
Lingfeng Yang <lfy@google.com> |
[AMD] Fix segfault in glCopyTexImage + cube map luminance bug: 31523568 In particular, the test dEQP.functional.texture.specification.basic_copyteximage2d.cube_luminance segfaults the emulator on some AMD GPUs. When we define cube maps using glCopyTexImage2D and are using the GL_LUMINANCE internal format, if the negative components of the cube map are defined first, the host AMD driver may segfault (tested in Mobility Radeon and RX 480). The workaround is to detect this particular API call, cube map target, and internal format, and define the positive component first using the same arguments, if the positive component has not been defined already. Change-Id: I26ed25bf3b7358ed7121a52f89d541c325beb6e4
LClientState.cpp
LClientState.h
|
727585ab633c10985c676e0e4805fcfa504c5e61 |
07-Sep-2015 |
Tina Zhang <tina.zhang@intel.com> |
[cherry-pick] Delete some useless files Currently, some files are not used by the guest part of GL emulation any more. cherry-pick from https://android-review.googlesource.com/#/c/169695/ Change-Id: I1fb87614aaba19be6863d6fb85e80937d0778384 Signed-off-by: Tina Zhang <tina.zhang@intel.com>
ndroid.mk
LDecoderContextData.h
LErrorLog.h
imeUtils.cpp
imeUtils.h
nixStream.cpp
nixStream.h
in32PipeStream.cpp
in32PipeStream.h
|
d90692889a26513d87f9f652221aeb727ad67a94 |
18-Jun-2016 |
Yahan Zhou <yahan@google.com> |
Make build script compatible with klp and up It gets rid of c++11 and makes build script compatible with klp and up. It also includes GL headers here, because headers in framework/native might be different across API levels. Change-Id: Ida425416a392cef878256965d69b54afe42b7263
hecksumCalculator.cpp
hecksumCalculator.h
|
2eeac5fe9e2b6e77db918523009c5b7125b4a075 |
12-Aug-2015 |
Elliott Hughes <enh@google.com> |
[cherry-pick] Lose HAVE_ANDROID_OS in goldfish. cherry pick from: https://android-review.googlesource.com/#/c/166427 Change-Id: Id626aee8d65e0ded543ac12416c37f938d196676
rrorLog.h
|
02aecd4f053cd2dd5fc5ed1c4b474ef4a2fe660c |
28-Apr-2016 |
Yahan Zhou <yahan@google.com> |
Merge "glActiveTexture should set GL_INVALID_ENUM when taking wrong input" into mnc-emu-dev
|
690666019cab0065e459fa137d980690a9236299 |
12-Apr-2016 |
Lingfeng Yang <lfy@google.com> |
Stricter FBO completeness checks dEQP-GLES2.functional.fbo.completeness.*: 39 Fail -> 0 Fail Based on similar logic in Swiftshader's libGLESv2/libGLESv2.cpp Also cache the result of glCheckFramebufferStatus, if already called from somewhere else. Change-Id: I3fb42dd6902cfce4043d08fd459a7069ef491f7e
LClientState.cpp
LClientState.h
|
57cb41b7ed8c951b1d28fe591c2d2fad97823060 |
08-Apr-2016 |
Lingfeng Yang <lfy@google.com> |
Validate presence of framebuffer attachment's object dEQP-GLES2.functional.negative_api.state.get_framebuffer_attachment_parameteriv Fail -> Pass dEQP-GLES2.functional.fbo.api.attachment_query_empty_fbo Fail -> Pass Track texture and renderbuffer object associations to framebuffer attachment points. Change-Id: Iff646bc57ef0202105768123cfa99384f37b01a3
LClientState.cpp
LClientState.h
|
e222fd545669310b91ffb4603f1c6b16f847c077 |
16-Mar-2016 |
Yahan Zhou <yahan@google.com> |
Checksum for GLES messages from host to guest Add checksum for GLES messages from host to guest. This patch contains generated code (gl_enc.cpp, gl2_enc.cpp, renderControl_enc.cpp) and shared code with the host (ChecksumCalculator.cpp, ChecksumCalculator.h). Change-Id: I577a34cae5208d3f11a165f861a69fa0971cf864
hecksumCalculator.cpp
hecksumCalculator.h
|
b7f09089a7f736a070825d7130601d74b150d147 |
10-Mar-2016 |
Yahan Zhou <yahan@google.com> |
Checksum for GL pipe communication This is the guest side implementation for cl go/oag/c/207292. It initializes checksum whenever a renderControl is created. Each HostConnection owns a checksum structure. The list contains mostly auto-generated code by emugen. Change-Id: I5f7bb9ec8a0cea82f3687f8a15839081651fd841
ndroid.mk
hecksumCalculator.cpp
hecksumCalculator.h
|
b01769885b1fb7ec3f4d4743f650660be7e92cad |
02-Mar-2016 |
Lingfeng Yang <lfy@google.com> |
Cache glGetIntegerv(GL_MAX_VERTEX_ATTRIBS, int*). BUG: https://buganizer.corp.google.com/issues/27418143 If we don't, the chatter over the pipe will kill framerate. I believe this is OK for the emulator, as the parameter is dependent on only the GPU hardware. Change-Id: I9bd74de6317316902bddf54b915ef509625cee52
LClientState.cpp
LClientState.h
|
db8565739a0c41c0685928caace975a766ffc9ca |
01-Mar-2016 |
Yahan Zhou <yahan@google.com> |
glActiveTexture should set GL_INVALID_ENUM when taking wrong input The GL spec says it generates GL_INVALID_ENUM if taking a wrong input. Currently it generates GL_INVALID_OPERATION which is not the expected error code. Change-Id: I3313ad49130651d0358dbd3bdeb67b7e2d4fd5d9
LClientState.cpp
|
5950852258d5d98d7861890ecdcf6b0d4bc234ab |
10-Feb-2016 |
Yahan Zhou <yahan@google.com> |
Support glDrawElements with GL_UNSIGNED_INT in the encoder Currently glDrawElements with type GL_UNSIGNED_INT is not supported by our encoder and decoder. The emulator will crash if someone uses it. This patch add the support in the encoder side. The related issue is here: b.android.com/200338 The patch on the decoder: https://android-review.googlesource.com/#/c/202101 Change-Id: I9a6cde9983d34f39cfcc8c66a7ccf021dd5963eb
lUtils.cpp
|
0d75675ad262120982918f806102ddfceec23a10 |
30-Jan-2016 |
Lingfeng Yang <lfy@google.com> |
Clean up minor opengl errors/warnings. There are always disconcerting messages printed to logcat whenever developing apps on the emulator. glUtilsParamSize and other functions often fail with "unknow param 0x00..." These are missing GLenums and types that for some reason are not in glUtils.cpp in OpenglCodecCommon. There also has been a long-standing warning that eglSurfaceAttrib is not implemented. It seems we don't need to implement that to get things done, so we will give a no-op implementation that suppresses the warning. Change-Id: I1b672cedf1672fc09cfe6a832f908e1496cc7a46
LClientState.cpp
lUtils.cpp
|
7a84f65de017435e0b6a496d297227df47ba2cf8 |
03-Dec-2014 |
Tina Zhang <tina.zhang@intel.com> |
Add parameters validation to glShaderSource() API According to GLES2.0 Spec., add parameters validataion to glShaderSource() API. Change-Id: I5b0e939fd9657ccbb40a13896c8fc74ef02fd085 Signed-off-by: Tina Zhang <tina.zhang@intel.com>
LSharedGroup.cpp
LSharedGroup.h
|
1a401b4da523e68e67c1848eea92f62960bde38a |
18-Nov-2014 |
bohu <bohu@google.com> |
Properly initialize GLClientState's m_states The data pointer of m_states[i] should be initialized to 0; otherwise it contains garbage. Change-Id: Ibfa9bb6fec395de6ac98a3e6b91d4c6ff4143f2c
LClientState.cpp
|
b0f0cdfcc54246817dac01408fee796dc17d892d |
07-Nov-2014 |
bohu <bohu@google.com> |
Unbind buffer when buffer is deleted When buffer is deleted, it should be un-bind also. Also fix error code related to buffer Change-Id: I3e7ec88399822469a36119c2de03157a2bbea812
LClientState.h
|
e01d5f47354d9e5cd63ae584daadc5076850851b |
30-Oct-2014 |
David 'Digit' Turner <digit@google.com> |
opengl: Remove compiler warnings. Simply remove multiple compiler warnings about unused parameter. Note that this modifies three auto-generated files, which will require fixing the 'emugen' program in the future. Change-Id: I19edce7c6480770b893d033ed6b1c65744091d62
ixedBuffer.h
|
bd119bf2e3faa06751b1e5e65b59f0321bb7a998 |
17-Oct-2014 |
bohu <bohu@google.com> |
Guard against negative width and height When negative width or height passes into pixelDataSize, some bogus values are returned. This commit checks both width and height to make sure they are valid. Change-Id: Ia49a9f464e6bb4894207ca4e07bbfdf34fbe741d
LClientState.cpp
|
4169f3f84dabb7c95f3c381a60b16275062eb86c |
10-Nov-2013 |
Jesse Hall <jessehall@google.com> |
Delete buffer data when removing it from the SharedGroup namespace Updating or deleting data associated with a buffer object was clearing the name->data association, but not actually deallocating the data. Thanks to manjian2006 for finding the bug and proposing the fix. Bug: 60468 Change-Id: I477f1e67d33a486419127ac790f32ddbbf566089
LSharedGroup.cpp
|
b2757f63f7319c6787cb8c379ceb454caf8f93f9 |
10-Apr-2013 |
Ying Wang <wangying@google.com> |
Add liblog Bug: 8580410 Change-Id: I2c07b8ce85aff341575ee8c3f509f64e252b8ed4
ndroid.mk
|
b85b2756d1e247f8314bb591700fb175d7346631 |
08-Mar-2013 |
keunyoung <keunyoung@google.com> |
migrate opengl and system from development/tools - components under system are moved one directory up like all other HALs Change-Id: I03b870b870d83b247ac398cadfb155f03c9adfa0
ndroid.mk
rrorLog.h
ixedBuffer.h
LClientState.cpp
LClientState.h
LDecoderContextData.h
LErrorLog.h
LSharedGroup.cpp
LSharedGroup.h
akefile
martPtr.h
ocketStream.cpp
ocketStream.h
cpStream.cpp
cpStream.h
imeUtils.cpp
imeUtils.h
nixStream.cpp
nixStream.h
in32PipeStream.cpp
in32PipeStream.h
odec_defs.h
lUtils.cpp
lUtils.h
l_base_types.h
|