Some time before kitkat, a workaround was put in place to keep tuna
working with obsolete PowerVR GPU drivers. The tuna product was dropped
in AOSP for kitkat, but the workaround remained.
There are still a number of devices shipping with OMAP4 processors, and
this workaround continues to be applied on those products even when it
is not required. The effect is that virtual display CTS will fail on
those devices.
Fix regression from 6701fbe5f0 .
The rdhwr instruction is unsupported by mips32r1 cpus, but is
supported via kernel emulation on those cpus.
Change-Id: Ieb3343fff0f0da54003044f451c90e1c761208eb
Replace the global lock in terminate for the ref count check with atomics and a
local lock.
Bug: 19072064
Change-Id: I0cfd6564e227a75b8387a8788b16381d5bc2cc88
Avoid ambiguity by using register numbers. Register names are
interpreted depending on the ABI. Fixes the issue with mips64 gcc,
where registers t0-t4 are translated into $8-$11 (o32 ABI) instead
of $12-$15 (o64 ABI).
Also, use t9 ($25) for storing function address
(in getProcAddress.cpp).
Change-Id: I12ef5cd98bf14dab3c01f2756889cc02856c1cd8
Combines 4 patches by Dragoslav and Douglas:
Use t9 to hold the address of the called function.
Add support for gl binding.
Fix inline assembly code to be R6 compatible.
Fix some more inline assembly code to be R6 compatible.
Change-Id: I0b899813790b2ba4ca538bb21692014cc1933f66
Remove generated cpp/h files for gltrace.proto as we can use the build
system to generate these dynamically.
Change-Id: I949d32fb5126f1c05e2a6ed48f6636a4a9b15a48
Clang compiler gives warning to implicit conversions of
literal structure fields, although the compiler generated
implicit conversions are what we want in these cases.
Change-Id: I8f04e7f2fa1db0ed1d1937135d9091532eec3d5b
Both EGL14 and EGLExt have the same initialization codes for
EGL14.EGL_NO_SURFACE, EGL14.EGL_NO_CONTEXT and EGL14.EGL_NO_DISPLAY.
Since EGLExt is initialized later, they are overwritten by EGLExt's
initialization codes.
Therefore, EGL_NO_SURFACE returned by methods in EGL14 is not
actually EGL14.EGL_NO_SURFACE object and it makes several problems in
handling error cases.
For instance, "Let's fish" game application cannot be run on L.
To solve the problem, this patch makes EGL14.EGL_NO_SURFACE,
EGL14.EGL_NO_CONTEXT and EGL14.EGL_NO_DISPLAY initialized just once.
Change-Id: Icce878164ff0b715ad2b5a2cd038a9616c7cf1e9
egl_connection_t is a struct - shouldn't be forward-declared as a class
Change-Id: I39f5d9bff9fc64f4694fb2bef7e4afa131b449cc
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
I'm pretty sure I had done this before... Must have been new
dependencies that slipped in when L merged in.
Bug: 15193147
Change-Id: Ib9b1b8a65665d25c33c6141b9476a8e13c4084e0
The code currently being generated by glgen is not the cleanest, but
we would like to get core/jni onto -Werror. Thus add pragmas turning
off warnings locally to the C headers.
Also fix signed-comparison in two functions.
Longer term TODO: Emit clean code.
Change-Id: Iee8582f8c0c1de076d64851d3b6ca467afd5bc43
Wrapper functions were broken on builds that forced -fno-omit-frame-pointer flag.
Change-Id: I5a80f9587fb3db821b4156af56acda59a0b4579b
Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Signed-off-by: Yong Yao <yong.yao@intel.com>
Passes the BufferItem for the queued buffer to the onFrameAvailable
callback so the consumer can track the BufferQueue's contents. Also
adds an onFrameReplaced callback, which is necessary if the consumer
wants to do anything more than simple queue length tracking.
Bug: 18111837
Change-Id: If9d07229c9b586c668e5f99074e9b63b0468feb0
Since these tests were pulling in a static library linked against
stlport, the tests needed to be explicit about which STL they're
using. Might as well be libc++.
Bug: 15193147
Change-Id: I4e0fc4ea10f7982dd04e7baaf57139dd5d55543e
GLES wrappers built with clang currently result in crashes in libhwui,
UI doesn't come up.
Force gcc for the wrappers until this is investigated and fixed
properly.
Bug: 18003438
Change-Id: I24a17ec019409930883da8040fe2fb05b0fea0c5
Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>
If a PBO is bound, then the pointer argument is a relative offset from
the start of the PBO, not an absolute address.
Fixes b/17063439
Change-Id: I39629ce6c9bb3cb6bac5c9b0311287628306ddd4
(cherry picked from commit 0ad707f2f3)