diff --git a/tutorials/MoarRam/Android.mk b/tutorials/MoarRam/Android.mk deleted file mode 100644 index c3bace94c..000000000 --- a/tutorials/MoarRam/Android.mk +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright (C) 2013 The Android Open Source Project -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -LOCAL_PATH := $(call my-dir) - -include $(CLEAR_VARS) - -# We only want this apk build for tests. -LOCAL_MODULE_TAGS := optional - -# Include all test java files. -LOCAL_SRC_FILES := $(call all-java-files-under, src) - -LOCAL_PACKAGE_NAME := MoarRam - -include $(BUILD_PACKAGE) - -include $(CLEAR_VARS) - -include $(call all-makefiles-under,$(LOCAL_PATH)) diff --git a/tutorials/MoarRam/AndroidManifest.xml b/tutorials/MoarRam/AndroidManifest.xml deleted file mode 100644 index ae48aceed..000000000 --- a/tutorials/MoarRam/AndroidManifest.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - diff --git a/tutorials/MoarRam/README.txt b/tutorials/MoarRam/README.txt deleted file mode 100644 index 8f1a48784..000000000 --- a/tutorials/MoarRam/README.txt +++ /dev/null @@ -1,17 +0,0 @@ -This is a simple app that can be used as a tutorial or reference benchmark -for the development of the DDMS native heap tracker feature. It contains 3 -unique paths to allocate heap chunks: - -1) Java_com_android_benchmark_moarram_MainActivity_add32ByteBlocksNative in - foo.c (libmoarram-foo.so). Each invocation will allocate 32 bytes. -2) Java_com_android_benchmark_moarram_MainActivity_add2MByteBlocksNative in - bar.c (libmoarram-bar.so). Each invocation will allocate 2M bytes. -3) Java_com_android_benchmark_moarram_MainActivity_addVariableSizedBlocksNative - in baz.c (libmoarram-baz.so). Each invocation will allocate 17 or 71 bytes, - depending on the active button in a radio group. - -Each allocation can be freed by clicking the corresponding free button in the -UI. - -NOTE 09/16/2013 -A new feature is added to force a double free. Both debug libc and Valgrind can capture it. diff --git a/tutorials/MoarRam/jni/Android.mk b/tutorials/MoarRam/jni/Android.mk deleted file mode 100644 index d2c9c387f..000000000 --- a/tutorials/MoarRam/jni/Android.mk +++ /dev/null @@ -1,58 +0,0 @@ -# Copyright (C) 2013 The Android Open Source Project -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -LOCAL_PATH:= $(call my-dir) - -MoarRam_jni_cflags := -Wall -Werror -Wno-unused-parameter - -include $(CLEAR_VARS) - -LOCAL_MODULE_TAGS := optional -LOCAL_MODULE := libmoarram-32 -LOCAL_SRC_FILES := foo.c -LOCAL_SHARED_LIBRARIES += liblog -LOCAL_CFLAGS := $(MoarRam_jni_cflags) - -include $(BUILD_SHARED_LIBRARY) - -include $(CLEAR_VARS) - -LOCAL_MODULE_TAGS := optional -LOCAL_MODULE := libmoarram-2M -LOCAL_SRC_FILES := bar.c -LOCAL_SHARED_LIBRARIES += liblog -LOCAL_CFLAGS := $(MoarRam_jni_cflags) - -include $(BUILD_SHARED_LIBRARY) - -include $(CLEAR_VARS) - -LOCAL_MODULE_TAGS := optional -LOCAL_MODULE := libmoarram-17_71 -LOCAL_SRC_FILES := baz.c -LOCAL_SHARED_LIBRARIES += liblog -LOCAL_CFLAGS := $(MoarRam_jni_cflags) - -include $(BUILD_SHARED_LIBRARY) - -include $(CLEAR_VARS) - -LOCAL_MODULE_TAGS := optional -LOCAL_MODULE := libmoarram-doublefree -LOCAL_SRC_FILES := df.c -LOCAL_SHARED_LIBRARIES += liblog -LOCAL_CFLAGS := $(MoarRam_jni_cflags) - -include $(BUILD_SHARED_LIBRARY) diff --git a/tutorials/MoarRam/jni/bar.c b/tutorials/MoarRam/jni/bar.c deleted file mode 100644 index 50cf6b192..000000000 --- a/tutorials/MoarRam/jni/bar.c +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Copyright (C) 2013 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -#include -#include -#include - -#if defined(LOG_TAG) -#undef LOG_TAG -#define LOG_TAG "MOARRAM" -#endif - -char *gPtr2; -static int num2MByteBlocks; - -void -Java_com_android_benchmark_moarram_MainActivity_add2MByteBlocksNative( - JNIEnv* env, - jobject this) -{ - char **ptr = malloc(2*1024*1024); - *ptr = gPtr2; - gPtr2 = (char *) ptr; - num2MByteBlocks++; - ALOGW("%d 2M-byte blocks allocated so far (just allocated %p)", - num2MByteBlocks, gPtr2); -} - -void -Java_com_android_benchmark_moarram_MainActivity_free2MByteBlocksNative( - JNIEnv* env, - jobject this) -{ - if (gPtr2 == NULL) { - ALOGW("All 2M-byte blocks are freed"); - return; - } - - char **ptr = (char **) gPtr2; - gPtr2 = *ptr; - free(ptr); - num2MByteBlocks--; - ALOGW("%d 2M-byte blocks allocated so far (just freed %p)", - num2MByteBlocks, ptr); -} diff --git a/tutorials/MoarRam/jni/baz.c b/tutorials/MoarRam/jni/baz.c deleted file mode 100644 index d7dec909f..000000000 --- a/tutorials/MoarRam/jni/baz.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Copyright (C) 2013 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -#include -#include -#include - -#if defined(LOG_TAG) -#undef LOG_TAG -#define LOG_TAG "MOARRAM" -#endif - -char *gPtr17; -char *gPtr71; -static int num17ByteBlocks; -static int num71ByteBlocks; - -void -Java_com_android_benchmark_moarram_MainActivity_addVariableSizedBlocksNative( - JNIEnv* env, - jobject this, - jint id) -{ - int size; - char **gPtr; - char **ptr; - if (id == 0) { - size = 17; - gPtr = &gPtr17; - } else { - size = 71; - gPtr = &gPtr71; - } - ptr = malloc(size); - *ptr = *gPtr; - *gPtr = (char *) ptr; - ALOGW("%d %d-byte blocks allocated so far (just allocated %p)", - id == 0 ? ++num17ByteBlocks : ++num71ByteBlocks, - size, ptr); -} - -void -Java_com_android_benchmark_moarram_MainActivity_freeVariableSizedBlocksNative( - JNIEnv* env, - jobject this, - jint id) -{ - int size; - char **ptr; - char **gPtr; - if (id == 0) { - size = 17; - gPtr = &gPtr17; - } else { - size = 71; - gPtr = &gPtr71; - } - if (*gPtr == NULL) { - ALOGW("All %d-byte blocks are freed", size); - return; - } - ptr = (char **) *gPtr; - *gPtr = *ptr; - free(ptr); - ALOGW("%d %d-byte blocks allocated so far (just freed %p)", - id == 0 ? --num17ByteBlocks : --num71ByteBlocks, - size, ptr); -} diff --git a/tutorials/MoarRam/jni/df.c b/tutorials/MoarRam/jni/df.c deleted file mode 100644 index 90eab09a8..000000000 --- a/tutorials/MoarRam/jni/df.c +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (C) 2013 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -#include -#include -#include - -#if defined(LOG_TAG) -#undef LOG_TAG -#define LOG_TAG "MOARRAM" -#endif - -void -Java_com_android_benchmark_moarram_MainActivity_forceDoubleFreeNative( - JNIEnv* env, - jobject this) -{ - char *ptr = (char *) malloc(4); - *ptr = 0; - ALOGW("About to double free %p", ptr); - free(ptr); - free(ptr); -} diff --git a/tutorials/MoarRam/jni/foo.c b/tutorials/MoarRam/jni/foo.c deleted file mode 100644 index 415d99c22..000000000 --- a/tutorials/MoarRam/jni/foo.c +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Copyright (C) 2013 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -#include -#include -#include - -#if defined(LOG_TAG) -#undef LOG_TAG -#define LOG_TAG "MOARRAM" -#endif - -char *gPtr; -static int num32ByteBlocks; - -void -Java_com_android_benchmark_moarram_MainActivity_add32ByteBlocksNative( - JNIEnv* env, - jobject this) -{ - char **ptr = malloc(32); - *ptr = gPtr; - gPtr = (char *) ptr; - num32ByteBlocks++; - ALOGW("%d 32-byte blocks allocated so far (just allocated %p)", - num32ByteBlocks, gPtr); -} - -void -Java_com_android_benchmark_moarram_MainActivity_free32ByteBlocksNative( - JNIEnv* env, - jobject this) -{ - if (gPtr == NULL) { - ALOGW("All 32-byte blocks are freed"); - return; - } - - char **ptr = (char **) gPtr; - gPtr = *ptr; - free(ptr); - num32ByteBlocks--; - ALOGW("%d 32-byte blocks allocated so far (just freed %p)", - num32ByteBlocks, ptr); -} diff --git a/tutorials/MoarRam/res/drawable-hdpi/ic_launcher.png b/tutorials/MoarRam/res/drawable-hdpi/ic_launcher.png deleted file mode 100644 index 288b66551..000000000 Binary files a/tutorials/MoarRam/res/drawable-hdpi/ic_launcher.png and /dev/null differ diff --git a/tutorials/MoarRam/res/drawable-mdpi/ic_launcher.png b/tutorials/MoarRam/res/drawable-mdpi/ic_launcher.png deleted file mode 100644 index 6ae570b4d..000000000 Binary files a/tutorials/MoarRam/res/drawable-mdpi/ic_launcher.png and /dev/null differ diff --git a/tutorials/MoarRam/res/drawable-xhdpi/ic_launcher.png b/tutorials/MoarRam/res/drawable-xhdpi/ic_launcher.png deleted file mode 100644 index d4fb7cd9d..000000000 Binary files a/tutorials/MoarRam/res/drawable-xhdpi/ic_launcher.png and /dev/null differ diff --git a/tutorials/MoarRam/res/drawable-xxhdpi/ic_launcher.png b/tutorials/MoarRam/res/drawable-xxhdpi/ic_launcher.png deleted file mode 100644 index 85a608158..000000000 Binary files a/tutorials/MoarRam/res/drawable-xxhdpi/ic_launcher.png and /dev/null differ diff --git a/tutorials/MoarRam/res/layout/activity_main.xml b/tutorials/MoarRam/res/layout/activity_main.xml deleted file mode 100644 index 50b674593..000000000 --- a/tutorials/MoarRam/res/layout/activity_main.xml +++ /dev/null @@ -1,119 +0,0 @@ - - - - -