| Index: src/full-codegen.h
 | 
| diff --git a/src/full-codegen.h b/src/full-codegen.h
 | 
| index af63aedfbff2e4e6dafc0485b37191d8862a6104..a9db54e32c18284b17f510d3384c55abebeab0f3 100644
 | 
| --- a/src/full-codegen.h
 | 
| +++ b/src/full-codegen.h
 | 
| @@ -31,14 +31,11 @@
 | 
|  #include "v8.h"
 | 
|  
 | 
|  #include "allocation.h"
 | 
| -#include "assert-scope.h"
 | 
|  #include "ast.h"
 | 
|  #include "code-stubs.h"
 | 
|  #include "codegen.h"
 | 
|  #include "compiler.h"
 | 
|  #include "data-flow.h"
 | 
| -#include "globals.h"
 | 
| -#include "objects.h"
 | 
|  
 | 
|  namespace v8 {
 | 
|  namespace internal {
 | 
| @@ -139,64 +136,7 @@ class FullCodeGenerator: public AstVisitor {
 | 
|  #error Unsupported target architecture.
 | 
|  #endif
 | 
|  
 | 
| -  class BackEdgeTableIterator {
 | 
| -   public:
 | 
| -    explicit BackEdgeTableIterator(Code* unoptimized) {
 | 
| -      ASSERT(unoptimized->kind() == Code::FUNCTION);
 | 
| -      instruction_start_ = unoptimized->instruction_start();
 | 
| -      cursor_ = instruction_start_ + unoptimized->back_edge_table_offset();
 | 
| -      ASSERT(cursor_ < instruction_start_ + unoptimized->instruction_size());
 | 
| -      table_length_ = Memory::uint32_at(cursor_);
 | 
| -      cursor_ += kTableLengthSize;
 | 
| -      end_ = cursor_ + table_length_ * kEntrySize;
 | 
| -    }
 | 
| -
 | 
| -    bool Done() { return cursor_ >= end_; }
 | 
| -
 | 
| -    void Next() {
 | 
| -      ASSERT(!Done());
 | 
| -      cursor_ += kEntrySize;
 | 
| -    }
 | 
| -
 | 
| -    BailoutId ast_id() {
 | 
| -      ASSERT(!Done());
 | 
| -      return BailoutId(static_cast<int>(
 | 
| -          Memory::uint32_at(cursor_ + kAstIdOffset)));
 | 
| -    }
 | 
| -
 | 
| -    uint32_t loop_depth() {
 | 
| -      ASSERT(!Done());
 | 
| -      return Memory::uint32_at(cursor_ + kLoopDepthOffset);
 | 
| -    }
 | 
| -
 | 
| -    uint32_t pc_offset() {
 | 
| -      ASSERT(!Done());
 | 
| -      return Memory::uint32_at(cursor_ + kPcOffsetOffset);
 | 
| -    }
 | 
| -
 | 
| -    Address pc() {
 | 
| -      ASSERT(!Done());
 | 
| -      return instruction_start_ + pc_offset();
 | 
| -    }
 | 
| -
 | 
| -    uint32_t table_length() { return table_length_; }
 | 
| -
 | 
| -   private:
 | 
| -    static const int kTableLengthSize = kIntSize;
 | 
| -    static const int kAstIdOffset = 0 * kIntSize;
 | 
| -    static const int kPcOffsetOffset = 1 * kIntSize;
 | 
| -    static const int kLoopDepthOffset = 2 * kIntSize;
 | 
| -    static const int kEntrySize = 3 * kIntSize;
 | 
| -
 | 
| -    Address cursor_;
 | 
| -    Address end_;
 | 
| -    Address instruction_start_;
 | 
| -    uint32_t table_length_;
 | 
| -    DisallowHeapAllocation no_gc_while_iterating_over_raw_addresses_;
 | 
| -
 | 
| -    DISALLOW_COPY_AND_ASSIGN(BackEdgeTableIterator);
 | 
| -  };
 | 
| -
 | 
| +  static const int kBackEdgeEntrySize = 3 * kIntSize;
 | 
|  
 | 
|   private:
 | 
|    class Breakable;
 | 
| @@ -685,6 +625,8 @@ class FullCodeGenerator: public AstVisitor {
 | 
|    AST_NODE_LIST(DECLARE_VISIT)
 | 
|  #undef DECLARE_VISIT
 | 
|  
 | 
| +  void EmitUnaryOperation(UnaryOperation* expr, const char* comment);
 | 
| +
 | 
|    void VisitComma(BinaryOperation* expr);
 | 
|    void VisitLogicalExpression(BinaryOperation* expr);
 | 
|    void VisitArithmeticExpression(BinaryOperation* expr);
 | 
| 
 |