aboutsummaryrefslogtreecommitdiffstats
path: root/emulator/opengl/host/libs/Translator/GLcommon
Commit message (Collapse)AuthorAgeFilesLines
* emulator/opengl: Remove obsolete directory.David 'Digit' Turner2014-12-0815-3915/+0
| | | | | | | | | | | | | All sources were moved to external/qemu/distrib/android-emugl to make it easier to modify both the emulator and host libraries at the same time. See: https://android-review.googlesource.com/#/c/118203/ As such, the sources in this directory are now ignored and can be safely removed. Change-Id: I5d143c971f995e2599e5e1d6174030d6803e8080
* Merge "Detach texture or renderbuffer when deleting them"bohu2014-11-061-1/+4
|\
| * Detach texture or renderbuffer when deleting thembohu2014-10-291-1/+4
| | | | | | | | | | | | | | When a texture or renderbuffer is still attached to framebuffer but is getting deleted, it should also be detached from framebuffer. Change-Id: Ide2c2a0e36ca8bf58f9351a17b78b76ebd507c12
* | Merge changes I8cc8fdb0,I750f95f2,Ibab92ab3,Ib11fd06a,I9abc3f9aDavid 'Digit' Turner2014-10-313-3/+3
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | * changes: emulator/opengl/emugen: Add new 'flushOnEncode' entry point flag. emulator/opengl: Fix glShaderSource() signature. emulator/opengl: Remove compiler warnings. emulator/opengl/emugen: Small cleanup of autogenerated sources. emulator/opengl: Add emugen test suite.
| * | emulator/opengl: Fix glShaderSource() signature.David 'Digit' Turner2014-10-313-3/+3
| |/ | | | | | | | | | | | | | | | | | | | | | | | | The glShaderSource() function really takes a 'const GLchar* const*' parameter, not 'const GLchar**'. This creates issues when compiling the auto-generated encoders created with the latest version of 'emugen' and the GL2 Khronos headers. This patch is used to fix the issue. Note that it requires defining a new type in gl2.types, as well as fixing the signature of misc functions in the translator. Change-Id: I750f95f2e33d83b3b5563642ad7f87e4b8a37f35
* | validate glBufferData's usage parameterbohu2014-10-291-0/+10
|/ | | | | | | Only GL_STREAM_DRAW, GL_STATIC_DRAW and GL_DYNAMIC_DRAW usages are allowed. Change-Id: I2d6a425363c32330d25272d26884d32610d8dd19
* emulator/opengl: Cleanup build files + remove obsolete tests.David 'Digit' Turner2014-08-271-13/+10
| | | | | | | | | | | | | | | | | | | | | | This patch cleans up the build files for the GPU emulation libraries (i.e. there is no need to test for BUILD_EMULATOR_64BITS anymore, filtering is now handled by the build system directly). + Remove a bunch obsolete tests, which were not unit tests, despite their name beginning with ut_xxxx. Which includes removing dependency on SDL too. + Remove -m64 and -fPIC flags from compilation. These are not necessary anymore (again, the build system now takes charge of placing them when necessary), and generated link-time warning when building Windows executables. + Remove a few declarations related to the now-obsolete platform build (these libraries are only built with the emulator's build system now). Change-Id: I27c28979c42cd51f2fe9e30edd4141136e80ee03
* emulator/opengl: Remove out-of-process handling code.David 'Digit' Turner2014-07-091-2/+0
| | | | | | | | | | | This removes the last pieces of shared/OpenglOsUtils which were never used since the code in render_api.cpp always used thread-based rendering, instead of process-based one. This feature could be re-implemented in the future, if really desirable. Change-Id: I551e0f3d6d5a06ff66cb40b007e2b24c295f1dd8
* emulator/opengl: refactor shared library handling.David 'Digit' Turner2014-07-091-4/+4
| | | | | | + Add a unit test. Change-Id: I27c993d1dc819e5bd89fc1e9ae266e11e6ef9a76
* emulator/opengl: Prepare for 64-bit build changes.David 'Digit' Turner2014-06-111-1/+1
| | | | | | | | | | | This patch slightly modifies the build files for the GPU emulation libraries to prepare for future changes in the emulator-specific build system that will be necessary to support Win64 binaries. The main difference is the introduction of 64-bit versions of the emugl-begin-host-<type> macros, named emugl-begin-host64-<type>. Change-Id: Ib40c030fa407b0ed951755dd9b007fda85778e03
* emulator/opengl: Fix GCC 4.8 warnings.David 'Digit' Turner2014-04-281-18/+19
| | | | | | | | This fixes a few compiler warnings when building the GPU emulation libraries with GCC 4.8. Note that GLbyte is defined as khronos_int8_t which is signed! Change-Id: I52027cd2eb20d6162983319f22d4da150ff514ed
* emulator/opengl: Backport fixes from master branch.David 'Digit' Turner2014-04-171-0/+4
| | | | | | | | | | This back-ports several fixes from aosp/master branch into idea133: 145e25 Fix the Google Maps crash issue e33909 Support GL_MAX_TEXTURE_SIZE case to glGetIntegerv API c6dd20 Fix Mac build. Change-Id: I26a05956c3b926dddeb638c6cff979199075ecbb
* emulator/opengl: Fix misc. compiler warnings.David 'Digit' Turner2014-04-012-7/+4
| | | | | | | These warnings appear when building the sources through the emulator's standalone build system, not the platform one. Change-Id: Ib5d51cf6211f32763be00c7436ae14c06f76b436
* emulator/opengl: Allow standalone build.David 'Digit' Turner2014-03-111-12/+14
| | | | | | | | This patch improves the build files for the GPU emulation libraries to allow them to be built directly with the emulator's own standalone build system. Change-Id: I205392bdfe4223a5c43fa67e24a2beffcbcbc07a
* emulator/opengl: Remove libcutils/libutils/liblogDavid 'Digit' Turner2014-03-111-2/+2
| | | | | | | | Final patch to completely remove dependencies on libcutils/libutils/liblog from the host-side GPU emulation libraries. Change-Id: I84a058bbd0ca676b18c0b0a094ac8bae692f9c94
* emulator/opengl: Remove android::Mutex.David 'Digit' Turner2014-03-113-111/+70
| | | | | | | | | | | This patch removes the dependency on android::Mutex from <cutils/threads.h> by providing a custom implementation, which is a simple wrapper around pthread_mutex_t / CriticalSection, under shared/emugl/common/mutex.h + Provide unit tests. Change-Id: I379ef0c480c478ab9ba5f2faaf8274267eff37ba
* emulator/opengl: Refactor SmartPtr implementation.David 'Digit' Turner2014-01-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | This gets rid of two copies of SmartPtr.h and replaces them with a single implementation under shared/emugl/common/smart_ptr.* Note that this uses a new include path rooted at the shared/ directory for classes that are likely to be built both for the host and the device (in case we back-port this to device/generic/goldfish/opengl/ in the future). + Add a gtest-based set of unittests, after building, just call 'emugl_common_host_unittests' to run it. Note that this probably needs a 64-bit version as well, will come later once I find a way to build GTest for 64-bits without breaking the platform build :-) Also note that this moves the class to the 'emugl' namespace, in order to make the code easier to build out of the platform tree, and embed it in other projects. More classes will be transitioned / refactored in future patches. AOSP_BUG=64806 Change-Id: Ieb326c5f3f002a21537b8a391a82ce2ef9925073
* emulator/opengl: Get rid of all compiler warnings (Linux).David 'Digit' Turner2014-01-181-1/+1
| | | | | | | | | | | This patch gets rid of all compiler warnings for the GPU emulation libraries when building on a Linux host. Note that GLcommon/GLutils.h now provides two new functions to perform 'safe' type casts between unsigned integers and pointers: SafePointerFromUInt() and SafeUIntFromPointer(). Change-Id: I01c48bbd72f925d70eb9831f57e15815e687121f
* Ignore empty rangesAlessandro Pignotti2013-07-301-1/+2
| | | | Change-Id: I0cccba6795e3b9709cc646f6fa55bb60e6446ea1
* Fix rangeUnion return value in the successful caseAlessandro Pignotti2013-07-301-1/+1
| | | | | | | Even if the ranges can be merge rangeUnion was returning false. Most probably this was a typo. Change-Id: I4cf8a19bd701a8501c2d49cf0bfa996f9e12c02f
* Fix convert8To4, convert8To5Jack Palevich2012-06-151-2/+2
| | | | | | | | | | | | | | See b/5680952 "Compilation warnings in etc1.cpp" for discussion. This is a manual merge of an update that was made to frameworks/native/opengl/libs/ETC1/etc1.cpp. sdk/emulator/opengl/host/libs/Translator/GLcommon/etc1.cpp is an exact copy of frameworks/native/opengl/libs/ETC1/etc1.cpp, so we might as well keep the two versions in synch. Bug: 5680952 Change-Id: Icf5d5ed2e7c5c79eb9677d210b1ff5fee507271d
* Export GL strings through render_apiJesse Hall2012-05-011-0/+42
| | | | | | | | | This also changes the strings reported by the default OpenGL ES 1.1/2.0 to OpenGL translators so they include the strings from the underlying OpenGL implementation. This will give more useful bug reports and SDK deployment statistics. Change-Id: Id2d231a4fe3c40157c24a63ec19785826e037fd3
* Move emulator GLES from development.git to sdk.gitJesse Hall2012-04-1615-0/+3901
The emulator GLES support has two interfaces: a host shared library interface used by QEMU, and a protocol between the platform and the host. The host library interface is not versioned; QEMU and the GLES renderer must match. The protocol on the other hand must be backwards compatible: a new GLES renderer must support an older platform image. Thus for branching purposes it makes more sense to put the GLES renderer in sdk.git, which is branched along with qemu.git for SDK releases. Platform images will be built against the protocol version in the platform branch of sdk.git. Change-Id: I2c3bce627ecfd0a4b3e688d1839fe10755a21e58