| Index: src/objects.h
 | 
| diff --git a/src/objects.h b/src/objects.h
 | 
| index bfce421b02724c265612ea3256ad52b9044c73e4..f58afeac1660df1e99f5dc04530daa0ac926d372 100644
 | 
| --- a/src/objects.h
 | 
| +++ b/src/objects.h
 | 
| @@ -5439,6 +5439,12 @@ class SharedFunctionInfo: public HeapObject {
 | 
|    // when doing GC if we expect that the function will no longer be used.
 | 
|    DECL_BOOLEAN_ACCESSORS(allows_lazy_compilation)
 | 
|  
 | 
| +  // Indicates if this function can be lazy compiled without a context.
 | 
| +  // This is used to determine if we can force compilation without reaching
 | 
| +  // the function through program execution but through other means (e.g. heap
 | 
| +  // iteration by the debugger).
 | 
| +  DECL_BOOLEAN_ACCESSORS(allows_lazy_compilation_without_context)
 | 
| +
 | 
|    // Indicates how many full GCs this function has survived with assigned
 | 
|    // code object. Used to determine when it is relatively safe to flush
 | 
|    // this code object and replace it with lazy compilation stub.
 | 
| @@ -5585,10 +5591,9 @@ class SharedFunctionInfo: public HeapObject {
 | 
|  
 | 
|    void ResetForNewContext(int new_ic_age);
 | 
|  
 | 
| -  // Helpers to compile the shared code.  Returns true on success, false on
 | 
| -  // failure (e.g., stack overflow during compilation).
 | 
| -  static bool EnsureCompiled(Handle<SharedFunctionInfo> shared,
 | 
| -                             ClearExceptionFlag flag);
 | 
| +  // Helper to compile the shared code.  Returns true on success, false on
 | 
| +  // failure (e.g., stack overflow during compilation). This is only used by
 | 
| +  // the debugger, it is not possible to compile without a context otherwise.
 | 
|    static bool CompileLazy(Handle<SharedFunctionInfo> shared,
 | 
|                            ClearExceptionFlag flag);
 | 
|  
 | 
| @@ -5722,6 +5727,7 @@ class SharedFunctionInfo: public HeapObject {
 | 
|    enum CompilerHints {
 | 
|      kHasOnlySimpleThisPropertyAssignments,
 | 
|      kAllowLazyCompilation,
 | 
| +    kAllowLazyCompilationWithoutContext,
 | 
|      kLiveObjectsMayExist,
 | 
|      kCodeAgeShift,
 | 
|      kOptimizationDisabled = kCodeAgeShift + kCodeAgeSize,
 | 
| @@ -5870,6 +5876,8 @@ class JSFunction: public JSObject {
 | 
|  
 | 
|    // Helpers to compile this function.  Returns true on success, false on
 | 
|    // failure (e.g., stack overflow during compilation).
 | 
| +  static bool EnsureCompiled(Handle<JSFunction> function,
 | 
| +                             ClearExceptionFlag flag);
 | 
|    static bool CompileLazy(Handle<JSFunction> function,
 | 
|                            ClearExceptionFlag flag);
 | 
|    static bool CompileOptimized(Handle<JSFunction> function,
 | 
| 
 |