Merge "Add USAGE_SHARED to driver."
diff --git a/cpu_ref/rsCpuRuntimeMath.cpp b/cpu_ref/rsCpuRuntimeMath.cpp
index cf2c8a4..c8c24dc 100644
--- a/cpu_ref/rsCpuRuntimeMath.cpp
+++ b/cpu_ref/rsCpuRuntimeMath.cpp
@@ -83,20 +83,6 @@
static int16_t SC_clz_i16(int16_t v) {return (int16_t)__builtin_clz(v);}
static int8_t SC_clz_i8(int8_t v) {return (int8_t)__builtin_clz(v);}
-static uint32_t SC_max_u32(uint32_t v, uint32_t v2) {return rsMax(v, v2);}
-static uint16_t SC_max_u16(uint16_t v, uint16_t v2) {return rsMax(v, v2);}
-static uint8_t SC_max_u8(uint8_t v, uint8_t v2) {return rsMax(v, v2);}
-static int32_t SC_max_i32(int32_t v, int32_t v2) {return rsMax(v, v2);}
-static int16_t SC_max_i16(int16_t v, int16_t v2) {return rsMax(v, v2);}
-static int8_t SC_max_i8(int8_t v, int8_t v2) {return rsMax(v, v2);}
-
-static uint32_t SC_min_u32(uint32_t v, uint32_t v2) {return rsMin(v, v2);}
-static uint16_t SC_min_u16(uint16_t v, uint16_t v2) {return rsMin(v, v2);}
-static uint8_t SC_min_u8(uint8_t v, uint8_t v2) {return rsMin(v, v2);}
-static int32_t SC_min_i32(int32_t v, int32_t v2) {return rsMin(v, v2);}
-static int16_t SC_min_i16(int16_t v, int16_t v2) {return rsMin(v, v2);}
-static int8_t SC_min_i8(int8_t v, int8_t v2) {return rsMin(v, v2);}
-
//////////////////////////////////////////////////////////////////////////////
// Float util
//////////////////////////////////////////////////////////////////////////////
@@ -394,7 +380,6 @@
{ "_Z4exp2f", (void *)&exp2f, true },
{ "_Z5exp10f", (void *)&SC_exp10, true },
{ "_Z5expm1f", (void *)&expm1f, true },
- { "_Z4fabsf", (void *)&fabsf, true },
{ "_Z4fdimff", (void *)&fdimf, true },
{ "_Z5floorf", (void *)&floorf, true },
{ "_Z3fmafff", (void *)&fmaf, true },
@@ -441,18 +426,6 @@
{ "_Z3clzi", (void *)&SC_clz_i32, true },
{ "_Z3clzs", (void *)&SC_clz_i16, true },
{ "_Z3clzc", (void *)&SC_clz_i8, true },
- { "_Z3maxjj", (void *)&SC_max_u32, true },
- { "_Z3maxtt", (void *)&SC_max_u16, true },
- { "_Z3maxhh", (void *)&SC_max_u8, true },
- { "_Z3maxii", (void *)&SC_max_i32, true },
- { "_Z3maxss", (void *)&SC_max_i16, true },
- { "_Z3maxcc", (void *)&SC_max_i8, true },
- { "_Z3minjj", (void *)&SC_min_u32, true },
- { "_Z3mintt", (void *)&SC_min_u16, true },
- { "_Z3minhh", (void *)&SC_min_u8, true },
- { "_Z3minii", (void *)&SC_min_i32, true },
- { "_Z3minss", (void *)&SC_min_i16, true },
- { "_Z3mincc", (void *)&SC_min_i8, true },
{ "_Z5clampfff", (void *)&SC_clamp_f32, true },
{ "_Z3maxff", (void *)&SC_max_f32, true },
diff --git a/driver/rsdAllocation.cpp b/driver/rsdAllocation.cpp
index b41880a..090c376 100644
--- a/driver/rsdAllocation.cpp
+++ b/driver/rsdAllocation.cpp
@@ -25,7 +25,7 @@
#include "hardware/gralloc.h"
#include "ui/Rect.h"
#include "ui/GraphicBufferMapper.h"
-#include "gui/SurfaceTexture.h"
+#include "gui/GLConsumer.h"
#include <GLES/gl.h>
#include <GLES2/gl2.h>
@@ -302,6 +302,7 @@
ptr = (uint8_t *)malloc(allocSize);
}
if (!ptr) {
+ alloc->mHal.drv = NULL;
free(drv);
return false;
}
diff --git a/driver/rsdGL.cpp b/driver/rsdGL.cpp
index 80fa137..2b4b925 100644
--- a/driver/rsdGL.cpp
+++ b/driver/rsdGL.cpp
@@ -331,7 +331,7 @@
// Create a BufferQueue with a fake consumer
sp<BufferQueue> bq = new BufferQueue();
bq->consumerConnect(new DummyConsumer());
- sp<SurfaceTextureClient> stc(new SurfaceTextureClient(static_cast<sp<ISurfaceTexture> >(bq)));
+ sp<SurfaceTextureClient> stc(new SurfaceTextureClient(static_cast<sp<IGraphicBufferProducer> >(bq)));
dc->gl.egl.surfaceDefault = eglCreateWindowSurface(dc->gl.egl.display, dc->gl.egl.config,
static_cast<ANativeWindow*>(stc.get()),
diff --git a/rsAllocation.cpp b/rsAllocation.cpp
index f4f6d95..db3b958 100644
--- a/rsAllocation.cpp
+++ b/rsAllocation.cpp
@@ -20,7 +20,7 @@
#include "rs_hal.h"
#include "system/window.h"
-#include "gui/SurfaceTexture.h"
+#include "gui/GLConsumer.h"
using namespace android;
using namespace android::renderscript;
@@ -470,7 +470,7 @@
return id;
}
-void Allocation::setSurfaceTexture(const Context *rsc, SurfaceTexture *st) {
+void Allocation::setSurfaceTexture(const Context *rsc, GLConsumer *st) {
if(st != mHal.state.surfaceTexture) {
if(mHal.state.surfaceTexture != NULL) {
mHal.state.surfaceTexture->decStrong(NULL);
@@ -669,7 +669,7 @@
void rsi_AllocationGetSurfaceTextureID2(Context *rsc, RsAllocation valloc, void *vst, size_t len) {
Allocation *alloc = static_cast<Allocation *>(valloc);
- alloc->setSurfaceTexture(rsc, static_cast<SurfaceTexture *>(vst));
+ alloc->setSurfaceTexture(rsc, static_cast<GLConsumer *>(vst));
}
void rsi_AllocationSetSurface(Context *rsc, RsAllocation valloc, RsNativeWindow sur) {
diff --git a/rsAllocation.h b/rsAllocation.h
index 5ee9afb..637bf4e 100644
--- a/rsAllocation.h
+++ b/rsAllocation.h
@@ -23,7 +23,7 @@
// ---------------------------------------------------------------------------
namespace android {
-class SurfaceTexture;
+class GLConsumer;
namespace renderscript {
@@ -64,7 +64,7 @@
void * userProvidedPtr;
int32_t surfaceTextureID;
ANativeWindow *wndSurface;
- SurfaceTexture *surfaceTexture;
+ GLConsumer *surfaceTexture;
RsDataType eType;
};
State state;
@@ -154,7 +154,7 @@
}
int32_t getSurfaceTextureID(const Context *rsc);
- void setSurfaceTexture(const Context *rsc, SurfaceTexture *st);
+ void setSurfaceTexture(const Context *rsc, GLConsumer *st);
void setSurface(const Context *rsc, RsNativeWindow sur);
void ioSend(const Context *rsc);
void ioReceive(const Context *rsc);