| Index: runtime/vm/native_arguments.h
 | 
| ===================================================================
 | 
| --- runtime/vm/native_arguments.h	(revision 25822)
 | 
| +++ runtime/vm/native_arguments.h	(working copy)
 | 
| @@ -12,6 +12,10 @@
 | 
|  
 | 
|  namespace dart {
 | 
|  
 | 
| +DECLARE_FLAG(bool, deoptimize_alot);
 | 
| +DECLARE_FLAG(bool, trace_natives);
 | 
| +DECLARE_FLAG(bool, verify_on_transition);
 | 
| +
 | 
|  // Forward declarations.
 | 
|  class BootstrapNatives;
 | 
|  class Isolate;
 | 
| @@ -19,7 +23,6 @@
 | 
|  class RawObject;
 | 
|  class Simulator;
 | 
|  
 | 
| -
 | 
|  #if defined(TESTING) || defined(DEBUG)
 | 
|  
 | 
|  #if defined(USING_SIMULATOR)
 | 
| @@ -41,9 +44,26 @@
 | 
|  }
 | 
|  #endif
 | 
|  
 | 
| +#define VERIFY_ON_TRANSITION                                                   \
 | 
| +  if (FLAG_verify_on_transition) {                                             \
 | 
| +    VerifyPointersVisitor::VerifyPointers();                                   \
 | 
| +    Isolate::Current()->heap()->Verify();                                      \
 | 
| +  }
 | 
| +#define TRACE_NATIVES(name)                                                    \
 | 
| +  if (FLAG_trace_natives) {                                                    \
 | 
| +    OS::Print("Calling native: %s\n", name);                                   \
 | 
| +  }
 | 
| +#define DEOPTIMIZE_ALOT                                                        \
 | 
| +  if (FLAG_deoptimize_alot) {                                                  \
 | 
| +    DeoptimizeAll();                                                           \
 | 
| +  }
 | 
| +
 | 
|  #else
 | 
|  
 | 
|  #define CHECK_STACK_ALIGNMENT { }
 | 
| +#define VERIFY_ON_TRANSITION { }
 | 
| +#define TRACE_NATIVES(name) { }
 | 
| +#define DEOPTIMIZE_ALOT { }
 | 
|  
 | 
|  #endif
 | 
|  
 | 
| 
 |