diff options
author | Ben Cheng <bccheng@google.com> | 2012-11-27 11:27:26 -0800 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2012-11-27 11:27:26 -0800 |
commit | 2db19c77b59c71eef27e9876d4c09ceb6966608d (patch) | |
tree | 2219c1bb1d4e1e2bce04a99d79bae76787595b6e | |
parent | f3d5fb53ba22c41af4cd787641c93ebe4f8ed8fd (diff) | |
parent | 8a2282d1dcafa15f8bd2e8df7c0fc4f1f79ea748 (diff) | |
download | linux-tools-perf-kitkat-mr2-release.tar.gz |
am 8a2282d1: Merge "Add on-device symbol demangle support."android-sdk-4.4.2_r1.0.1android-sdk-4.4.2_r1android-cts-4.4_r4android-cts-4.4_r1android-4.4_r1.2.0.1android-4.4_r1.2android-4.4_r1.1.0.1android-4.4_r1.1android-4.4_r1.0.1android-4.4_r1android-4.4_r0.9android-4.4_r0.8android-4.4_r0.7android-4.4.4_r2.0.1android-4.4.4_r2android-4.4.4_r1.0.1android-4.4.4_r1android-4.4.3_r1.1.0.1android-4.4.3_r1.1android-4.4.3_r1.0.1android-4.4.3_r1android-4.4.2_r2.0.1android-4.4.2_r2android-4.4.2_r1.0.1android-4.4.2_r1android-4.4.1_r1.0.1android-4.4.1_r1android-4.3_r3.1android-4.3_r3android-4.3_r2.3android-4.3_r2.2android-4.3_r2.1android-4.3_r2android-4.3_r1.1android-4.3_r1android-4.3_r0.9.1android-4.3_r0.9android-4.3.1_r1kitkat-releasekitkat-mr2.2-releasekitkat-mr2.1-releasekitkat-mr2-releasekitkat-mr1.1-releasekitkat-mr1-releasekitkat-devkitkat-cts-releasekitkat-cts-devjb-mr2.0.0-releasejb-mr2.0-releasejb-mr2-releasejb-mr2-dev
* commit '8a2282d1dcafa15f8bd2e8df7c0fc4f1f79ea748':
Add on-device symbol demangle support.
-rw-r--r-- | Android.mk | 16 | ||||
-rw-r--r-- | util/symbol.h | 13 |
2 files changed, 19 insertions, 10 deletions
@@ -94,8 +94,7 @@ LOCAL_SRC_FILES += \ LOCAL_CFLAGS := -DNO_NEWT_SUPPORT -DNO_LIBPERL -DNO_LIBPYTHON -DNO_STRLCPY -std=gnu99 -# temporary until bfd.h is added -LOCAL_CFLAGS += -DNO_DEMANGLE +LOCAL_CFLAGS += -DHAVE_ANDROID_DEMANGLE LOCAL_CFLAGS += -DDWARF_SUPPORT # various macros @@ -130,8 +129,7 @@ LOCAL_SRC_FILES := $(libperf_src_files) LOCAL_CFLAGS := -DNO_NEWT_SUPPORT -DNO_LIBPERL -DNO_LIBPYTHON -std=gnu99 -# temporary until bfd.h is added -LOCAL_CFLAGS += -DNO_DEMANGLE +LOCAL_CFLAGS += -DHAVE_ANDROID_DEMANGLE LOCAL_CFLAGS += -DDWARF_SUPPORT # various macros @@ -188,7 +186,7 @@ perf_src_files := \ LOCAL_SRC_FILES := $(perf_src_files) -LOCAL_STATIC_LIBRARIES := libperf libdwfl libdw libebl libelf +LOCAL_STATIC_LIBRARIES := libperf libdwfl libdw libebl libelf libgccdemangle LOCAL_LDLIBS := -lpthread -ldl @@ -209,8 +207,7 @@ LOCAL_CFLAGS += -Wno-pointer-arith # for __used LOCAL_CFLAGS += -include $(LOCAL_PATH)/util/include/linux/compiler.h -# temporary until bfd.h is added -LOCAL_CFLAGS += -DNO_DEMANGLE +LOCAL_CFLAGS += -DHAVE_ANDROID_DEMANGLE # unique LOCAL_CFLAGS += -DPERF_HTML_PATH='""' @@ -240,7 +237,7 @@ LOCAL_SRC_FILES += \ bench/sched-pipe.c \ arch/arm/util/dwarf-regs.c -LOCAL_STATIC_LIBRARIES := libperf libdwfl libdw libebl libelf +LOCAL_STATIC_LIBRARIES := libperf libdwfl libdw libebl libelf libgccdemangle LOCAL_SHARED_LIBRARIES := libdl @@ -256,8 +253,7 @@ LOCAL_CFLAGS += -include $(LOCAL_PATH)/util/include/linux/compiler.h # for various GNU extensions LOCAL_CFLAGS += -include external/elfutils/bionic-fixup/AndroidFixup.h -# temporary until bfd.h is added -LOCAL_CFLAGS += -DNO_DEMANGLE +LOCAL_CFLAGS += -DHAVE_ANDROID_DEMANGLE # unique LOCAL_CFLAGS += -DPERF_HTML_PATH='""' diff --git a/util/symbol.h b/util/symbol.h index 5ac01c1..266bb00 100644 --- a/util/symbol.h +++ b/util/symbol.h @@ -36,10 +36,23 @@ static inline char *bfd_demangle(void __used *v, const char __used *c, { return NULL; } +/* ANDROID_CHANGE_BEGIN */ +#else +#ifdef HAVE_ANDROID_DEMANGLE +/* in external/gcc-demangle */ +extern char *__cxa_demangle (const char *, char *, size_t *, int *); + +static inline char *bfd_demangle(void __used *v, const char __used *c, + int __used i) +{ + return __cxa_demangle(c, NULL, NULL, NULL); +} +/* ANDROID_CHANGE_END */ #else #include <bfd.h> #endif #endif +#endif int hex2u64(const char *ptr, u64 *val); char *strxfrchar(char *s, char from, char to); |