Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(770)

Unified Diff: runtime/vm/code_generator.h

Issue 10539068: Add righ shift test for corner cases, use macro for deopt reasons (all suggested by Slava in a prev… (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | runtime/vm/code_generator.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/code_generator.h
===================================================================
--- runtime/vm/code_generator.h (revision 8451)
+++ runtime/vm/code_generator.h (working copy)
@@ -53,35 +53,40 @@
DECLARE_RUNTIME_ENTRY(TraceFunctionEntry);
DECLARE_RUNTIME_ENTRY(TraceFunctionExit);
+#define DEOPT_REASONS(V) \
+ V(DeoptUnknown) \
+ V(DeoptIncrLocal) \
+ V(DeoptIncrInstance) \
+ V(DeoptIncrInstanceOneClass) \
+ V(DeoptInstanceGetterSameTarget) \
+ V(DeoptInstanceGetter) \
+ V(DeoptStoreIndexed) \
+ V(DeoptCheckedInstanceCallSmiOnly) \
+ V(DeoptCheckedInstanceCallSmiFail) \
+ V(DeoptCheckedInstanceCallCheckFail) \
+ V(DeoptIntegerToDouble) \
+ V(DeoptDoubleToDouble) \
+ V(DeoptSmiBinaryOp) \
+ V(DeoptMintBinaryOp) \
+ V(DeoptDoubleBinaryOp) \
+ V(DeoptInstanceSetterSameTarget) \
+ V(DeoptInstanceSetter) \
+ V(DeoptSmiEquality) \
+ V(DeoptSmiCompareSmis) \
+ V(DeoptSmiCompareAny) \
+ V(DeoptEqualityNoFeedback) \
+ V(DeoptEqualityClassCheck) \
+ V(DeoptDoubleComparison) \
+ V(DeoptLoadIndexedFixedArray) \
+ V(DeoptLoadIndexedGrowableArray) \
+ V(DeoptNoTypeFeedback) \
+ V(DeoptSAR) \
+ V(DeoptUnaryOp) \
+
enum DeoptReasonId {
- kDeoptUnknown,
- kDeoptIncrLocal,
- kDeoptIncrInstance,
- kDeoptIncrInstanceOneClass,
- kDeoptInstanceGetterSameTarget,
- kDeoptInstanceGetter,
- kDeoptStoreIndexed,
- kDeoptCheckedInstanceCallSmiOnly,
- kDeoptCheckedInstanceCallSmiFail,
- kDeoptCheckedInstanceCallCheckFail,
- kDeoptIntegerToDouble,
- kDeoptDoubleToDouble,
- kDeoptSmiBinaryOp,
- kDeoptMintBinaryOp,
- kDeoptDoubleBinaryOp,
- kDeoptInstanceSetterSameTarget,
- kDeoptInstanceSetter,
- kDeoptSmiEquality,
- kDeoptSmiCompareSmis,
- kDeoptSmiCompareAny,
- kDeoptEqualityNoFeedback,
- kDeoptEqualityClassCheck,
- kDeoptDoubleComparison,
- kDeoptLoadIndexedFixedArray,
- kDeoptLoadIndexedGrowableArray,
- kDeoptNoTypeFeedback,
- kDeoptSAR,
- kDeoptUnaryOp,
+#define DEFINE_ENUM_LIST(name) k##name,
+DEOPT_REASONS(DEFINE_ENUM_LIST)
+#undef DEFINE_ENUM_LIST
};
// This class wraps around the array RawClass::functions_cache_.
« no previous file with comments | « no previous file | runtime/vm/code_generator.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698