summaryrefslogtreecommitdiffstats
path: root/vm/compiler/Compiler.h
diff options
context:
space:
mode:
authorJeff Hao <jeffhao@google.com>2009-08-12 16:57:15 -0700
committerJeff Hao <jeffhao@google.com>2009-08-21 15:33:20 -0700
commit97319a8a234e9fe1cf90ca39aa6eca37d729afd5 (patch)
treed14d258f82f02cfa534a38cf9e511ba14dbf8123 /vm/compiler/Compiler.h
parent8c454f6832c96ee4a2fe460615ee3f4d0c15926f (diff)
downloadandroid_dalvik-97319a8a234e9fe1cf90ca39aa6eca37d729afd5.tar.gz
android_dalvik-97319a8a234e9fe1cf90ca39aa6eca37d729afd5.tar.bz2
android_dalvik-97319a8a234e9fe1cf90ca39aa6eca37d729afd5.zip
New changes to enable self verification mode.
Diffstat (limited to 'vm/compiler/Compiler.h')
-rw-r--r--vm/compiler/Compiler.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/vm/compiler/Compiler.h b/vm/compiler/Compiler.h
index 3b7ae542c..2cf762f39 100644
--- a/vm/compiler/Compiler.h
+++ b/vm/compiler/Compiler.h
@@ -62,8 +62,23 @@ typedef enum JitState {
kJitTSelectEnd = 5, // Done with the trace - wrap it up
kJitSingleStep = 6, // Single step interpretation
kJitSingleStepEnd = 7, // Done with single step, return to mterp
+ kJitSelfVerification = 8, // Self Verification Mode
} JitState;
+#if defined(WITH_SELF_VERIFICATION)
+typedef enum SelfVerificationState {
+ kSVSIdle = 0, // Idle
+ kSVSStart = 1, // Shadow space set up, running compiled code
+ kSVSPunt = 2, // Exiting compiled code by punting
+ kSVSSingleStep = 3, // Exiting compiled code by single stepping
+ kSVSTraceSelect = 4, // Exiting compiled code by trace select
+ kSVSNormal = 5, // Exiting compiled code normally
+ kSVSNoChain = 6, // Exiting compiled code by no chain
+ kSVSBackwardBranch = 7, // Exiting compiled code with backward branch trace
+ kSVSDebugInterp = 8, // Normal state restored, running debug interpreter
+} SelfVerificationState;
+#endif
+
typedef enum JitHint {
kJitHintNone = 0,
kJitHintTaken = 1, // Last inst in run was taken branch