aboutsummaryrefslogtreecommitdiffstats
path: root/hw/goldfish_trace.h
diff options
context:
space:
mode:
authorJack Veenstra <veenstra@android.com>2009-05-05 10:35:03 -0700
committerJack Veenstra <veenstra@android.com>2009-05-06 11:37:48 -0700
commit9980bbb9965ee2df42f94aafa817e91835dad406 (patch)
tree0aaf7dd450026225c8cd59c69651711bb83edef6 /hw/goldfish_trace.h
parentab42ada6ecfb81d6e231d5997b5892efd0fde5ad (diff)
downloadexternal_qemu-9980bbb9965ee2df42f94aafa817e91835dad406.zip
external_qemu-9980bbb9965ee2df42f94aafa817e91835dad406.tar.gz
external_qemu-9980bbb9965ee2df42f94aafa817e91835dad406.tar.bz2
Add support for tracing Java method entry/exit to qemu.
This is part of a larger change to add support for tracing Java methods. There is also a kernel change and a small change to the Dalvik interpreter that will be checked in separately. There used to be support for tracing Java methods but it relied on trapping every store and checking if the store address matched a special "magic" region (and that stopped working because we can no longer trap on loads and stores). The new approach uses a memory-mapped page to catch stores to just that page.
Diffstat (limited to 'hw/goldfish_trace.h')
-rw-r--r--hw/goldfish_trace.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/hw/goldfish_trace.h b/hw/goldfish_trace.h
index 44190ee..c49745b 100644
--- a/hw/goldfish_trace.h
+++ b/hw/goldfish_trace.h
@@ -12,6 +12,8 @@
#ifndef _TRACE_DEV_H_
#define _TRACE_DEV_H_
+#include "goldfish_device.h"
+
#define CLIENT_PAGE_SIZE 4096
/* trace device registers */
@@ -41,10 +43,13 @@
#define TRACE_DEV_REG_PRINT_NUM_HEX 62
#define TRACE_DEV_REG_STOP_EMU 90
#define TRACE_DEV_REG_ENABLE 100
+#define TRACE_DEV_REG_METHOD_ENTRY 1024
+#define TRACE_DEV_REG_METHOD_EXIT 1025
+#define TRACE_DEV_REG_METHOD_EXCEPTION 1026
/* the virtual trace device state */
typedef struct {
- uint32_t base;
+ struct goldfish_device dev;
} trace_dev_state;
/*