Index: src/fast-codegen.h |
=================================================================== |
--- src/fast-codegen.h (revision 3310) |
+++ src/fast-codegen.h (working copy) |
@@ -43,6 +43,8 @@ |
function_(NULL), |
script_(script), |
is_eval_(is_eval), |
+ function_return_(), |
+ return_label_(NULL), |
loop_depth_(0), |
true_label_(NULL), |
false_label_(NULL) { |
@@ -117,7 +119,14 @@ |
FunctionLiteral* function_; |
Handle<Script> script_; |
bool is_eval_; |
- Label return_label_; |
+ Label function_return_;// Label of the actual return sequence. |
+ Label* return_label_; // Label to jump to from a return statement. |
+ // If there are finally blocks from try..finally that must be executed, |
+ // this is the entry point of a finally block, shadowing the real return. |
+ int return_stack_height_; // The height of the stack at return_label_. |
+ int scope_stack_height_; // The number of elements above the frame pointer |
+ // that are on the stack due to enclosing scopes. Does not include the |
+ // expression stack, but does include elements pushed by with and for..in. |
int loop_depth_; |
Label* true_label_; |