Merge "Cache element type in allocation." into jb-mr1-dev
diff --git a/bcinfo/BitcodeWrapper.cpp b/bcinfo/BitcodeWrapper.cpp
index e04db88..9f26ced 100644
--- a/bcinfo/BitcodeWrapper.cpp
+++ b/bcinfo/BitcodeWrapper.cpp
@@ -30,7 +30,7 @@
 
 BitcodeWrapper::BitcodeWrapper(const char *bitcode, size_t bitcodeSize)
     : mFileType(BC_NOT_BC), mBitcode(bitcode),
-      mBitcodeEnd(bitcode + bitcodeSize - 1), mBitcodeSize(bitcodeSize),
+      mBitcodeSize(bitcodeSize),
       mHeaderVersion(0), mTargetAPI(0), mCompilerVersion(0),
       mOptimizationLevel(3) {
   InMemoryWrapperInput inMem(mBitcode, mBitcodeSize);
diff --git a/bcinfo/tools/Android.mk b/bcinfo/tools/Android.mk
index f7cf34b..9de213e 100644
--- a/bcinfo/tools/Android.mk
+++ b/bcinfo/tools/Android.mk
@@ -41,8 +41,6 @@
 LOCAL_C_INCLUDES := \
   $(LOCAL_PATH)/../../include
 
-LOCAL_MODULE_TAGS := tests
-
 LOCAL_LDLIBS = -ldl
 
 include $(LLVM_ROOT_PATH)/llvm-host-build.mk
diff --git a/include/bcinfo/BitcodeWrapper.h b/include/bcinfo/BitcodeWrapper.h
index 3e9ed52..e3e65d2 100644
--- a/include/bcinfo/BitcodeWrapper.h
+++ b/include/bcinfo/BitcodeWrapper.h
@@ -50,7 +50,6 @@
  private:
   enum BCFileType mFileType;
   const char *mBitcode;
-  const char *mBitcodeEnd;
   size_t mBitcodeSize;
 
   uint32_t mHeaderVersion;
diff --git a/lib/Renderscript/runtime/rs_cl.c b/lib/Renderscript/runtime/rs_cl.c
index 7b8c47a..247a90a 100644
--- a/lib/Renderscript/runtime/rs_cl.c
+++ b/lib/Renderscript/runtime/rs_cl.c
@@ -924,6 +924,19 @@
     return v * approx_rsqrt(v.x*v.x + v.y*v.y + v.z*v.z + v.w*v.w);
 }
 
+extern float __attribute__((overloadable)) approx_recip(float);
+
+extern float __attribute__((overloadable)) approx_atan(float x) {
+    if (x == 0.f)
+        return 0.f;
+    if (x < 0.f)
+        return -1.f * approx_atan(-1.f * x);
+    if (x > 1.f)
+        return M_PI_2 - approx_atan(approx_recip(x));
+    return x * approx_recip(1.f + 0.28f * x*x);
+}
+FN_FUNC_FN(approx_atan)
+
 #undef FN_FUNC_FN
 #undef IN_FUNC_FN
 #undef FN_FUNC_FN_FN
diff --git a/tools/bcc/Android.mk b/tools/bcc/Android.mk
index dd7ba69..6f95eec 100644
--- a/tools/bcc/Android.mk
+++ b/tools/bcc/Android.mk
@@ -21,10 +21,17 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE := bcc
-LOCAL_MODULE_TAGS := tests eng
 LOCAL_MODULE_CLASS := EXECUTABLES
 
-LOCAL_SHARED_LIBRARIES := libbcc
+LOCAL_SRC_FILES := \
+  main.cpp
+
+LOCAL_SHARED_LIBRARIES := \
+  libbcc
+
+LOCAL_C_INCLUDES := \
+  $(LOCAL_PATH)/../../include
+
 LOCAL_LDLIBS = -ldl
 LOCAL_SRC_FILES := Main.cpp
 
diff --git a/tools/mcld/Android.mk b/tools/mcld/Android.mk
index 6d6c27b..b8213d0 100644
--- a/tools/mcld/Android.mk
+++ b/tools/mcld/Android.mk
@@ -21,7 +21,7 @@
 include $(CLEAR_VARS)
 
 LOCAL_MODULE := mcld
-LOCAL_MODULE_TAGS := tests eng
+LOCAL_MODULE_TAGS := optional
 LOCAL_MODULE_CLASS := EXECUTABLES
 
 LOCAL_SRC_FILES := Main.cpp