aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndroid (Google) Code Review <android-gerrit@google.com>2009-05-19 17:33:00 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2009-05-19 17:33:00 -0700
commit0cd1fea6de1072ede33b752d75af4d7c56de185c (patch)
tree6e543994366d1307276d6c9dd0d31ec8c73efaed
parent3ea24be7cceb4dc4557fb33f758a83380725bc83 (diff)
parente3ea32ffa04468eddaf9c6ce2d36090f7bf43e49 (diff)
downloadexternal_qemu-0cd1fea6de1072ede33b752d75af4d7c56de185c.zip
external_qemu-0cd1fea6de1072ede33b752d75af4d7c56de185c.tar.gz
external_qemu-0cd1fea6de1072ede33b752d75af4d7c56de185c.tar.bz2
Merge change 2000 into donut
* changes: Add support for new trace records for native (JNI) calls.
-rw-r--r--hw/goldfish_trace.c3
-rw-r--r--hw/goldfish_trace.h3
-rw-r--r--trace_common.h5
3 files changed, 10 insertions, 1 deletions
diff --git a/hw/goldfish_trace.c b/hw/goldfish_trace.c
index a9f6437..f49b704 100644
--- a/hw/goldfish_trace.c
+++ b/hw/goldfish_trace.c
@@ -205,6 +205,9 @@ static void trace_dev_write(void *opaque, target_phys_addr_t offset, uint32_t va
case TRACE_DEV_REG_METHOD_ENTRY:
case TRACE_DEV_REG_METHOD_EXIT:
case TRACE_DEV_REG_METHOD_EXCEPTION:
+ case TRACE_DEV_REG_NATIVE_ENTRY:
+ case TRACE_DEV_REG_NATIVE_EXIT:
+ case TRACE_DEV_REG_NATIVE_EXCEPTION:
if (tracing) {
int call_type = (offset - 4096) >> 2;
trace_interpreted_method(value, call_type);
diff --git a/hw/goldfish_trace.h b/hw/goldfish_trace.h
index c49745b..11ed906 100644
--- a/hw/goldfish_trace.h
+++ b/hw/goldfish_trace.h
@@ -46,6 +46,9 @@
#define TRACE_DEV_REG_METHOD_ENTRY 1024
#define TRACE_DEV_REG_METHOD_EXIT 1025
#define TRACE_DEV_REG_METHOD_EXCEPTION 1026
+#define TRACE_DEV_REG_NATIVE_ENTRY 1028
+#define TRACE_DEV_REG_NATIVE_EXIT 1029
+#define TRACE_DEV_REG_NATIVE_EXCEPTION 1030
/* the virtual trace device state */
typedef struct {
diff --git a/trace_common.h b/trace_common.h
index 3c4440d..fe84c1a 100644
--- a/trace_common.h
+++ b/trace_common.h
@@ -29,10 +29,13 @@
#define kMethodEnter 0
#define kMethodExit 1
#define kMethodException 2
+#define kNativeEnter 4
+#define kNativeExit 5
+#define kNativeException 6
// The trace identifier string must be less than 16 characters.
#define TRACE_IDENT "qemu_trace_file"
-#define TRACE_VERSION 1
+#define TRACE_VERSION 2
typedef struct TraceHeader {
char ident[16];