Revision: 21910
Author:   [email protected]
Date:     Mon Jun 23 08:21:41 2014 UTC
Log:      Version 3.28.0 (based on bleeding_edge revision r21907)

MIPS: Support LiveEdit (Chromium issue 368580).

Array.concat: properly go to dictionary mode when required (Chromium issue 387031).

Support LiveEdit on ARM (Chromium issue 368580).

Performance and stability improvements on all platforms.
http://code.google.com/p/v8/source/detail?r=21910

Added:
 /trunk/test/mjsunit/regress/regress-386034.js
 /trunk/test/mjsunit/regress/regress-crbug-387031.js
Modified:
 /trunk/ChangeLog
 /trunk/Makefile
 /trunk/build/features.gypi
 /trunk/include/v8.h
 /trunk/samples/lineprocessor.cc
 /trunk/samples/process.cc
 /trunk/samples/shell.cc
 /trunk/src/accessors.cc
 /trunk/src/allocation-tracker.cc
 /trunk/src/api.cc
 /trunk/src/arguments.cc
 /trunk/src/arm/assembler-arm.h
 /trunk/src/arm/codegen-arm.cc
 /trunk/src/arm/debug-arm.cc
 /trunk/src/arm/disasm-arm.cc
 /trunk/src/arm/frames-arm.cc
 /trunk/src/arm/lithium-arm.cc
 /trunk/src/arm/lithium-arm.h
 /trunk/src/arm/lithium-codegen-arm.cc
 /trunk/src/arm/lithium-gap-resolver-arm.cc
 /trunk/src/arm/regexp-macro-assembler-arm.cc
 /trunk/src/arm/simulator-arm.cc
 /trunk/src/arm/simulator-arm.h
 /trunk/src/arm/stub-cache-arm.cc
 /trunk/src/arm64/assembler-arm64.h
 /trunk/src/arm64/codegen-arm64.cc
 /trunk/src/arm64/cpu-arm64.cc
 /trunk/src/arm64/decoder-arm64.cc
 /trunk/src/arm64/decoder-arm64.h
 /trunk/src/arm64/disasm-arm64.cc
 /trunk/src/arm64/disasm-arm64.h
 /trunk/src/arm64/frames-arm64.cc
 /trunk/src/arm64/frames-arm64.h
 /trunk/src/arm64/instructions-arm64.cc
 /trunk/src/arm64/instructions-arm64.h
 /trunk/src/arm64/instrument-arm64.h
 /trunk/src/arm64/lithium-arm64.cc
 /trunk/src/arm64/lithium-arm64.h
 /trunk/src/arm64/lithium-codegen-arm64.cc
 /trunk/src/arm64/lithium-gap-resolver-arm64.cc
 /trunk/src/arm64/macro-assembler-arm64-inl.h
 /trunk/src/arm64/regexp-macro-assembler-arm64.cc
 /trunk/src/arm64/regexp-macro-assembler-arm64.h
 /trunk/src/arm64/simulator-arm64.cc
 /trunk/src/arm64/simulator-arm64.h
 /trunk/src/arm64/stub-cache-arm64.cc
 /trunk/src/arm64/utils-arm64.h
 /trunk/src/assembler.cc
 /trunk/src/ast.cc
 /trunk/src/ast.h
 /trunk/src/base/atomicops_internals_tsan.h
 /trunk/src/base/atomicops_internals_x86_gcc.cc
 /trunk/src/base/atomicops_internals_x86_gcc.h
 /trunk/src/base/win32-headers.h
 /trunk/src/bignum.cc
 /trunk/src/bootstrapper.cc
 /trunk/src/builtins.cc
 /trunk/src/cached-powers.cc
 /trunk/src/cached-powers.h
 /trunk/src/code-stubs.cc
 /trunk/src/codegen.h
 /trunk/src/compiler.cc
 /trunk/src/conversions-inl.h
 /trunk/src/conversions.cc
 /trunk/src/conversions.h
 /trunk/src/cpu.cc
 /trunk/src/d8-posix.cc
 /trunk/src/d8-windows.cc
 /trunk/src/d8.cc
 /trunk/src/debug.cc
 /trunk/src/diy-fp.cc
 /trunk/src/elements.h
 /trunk/src/field-index.h
 /trunk/src/flag-definitions.h
 /trunk/src/flags.cc
 /trunk/src/flags.h
 /trunk/src/frames-inl.h
 /trunk/src/full-codegen.cc
 /trunk/src/gdb-jit.cc
 /trunk/src/gdb-jit.h
 /trunk/src/heap-inl.h
 /trunk/src/heap.cc
 /trunk/src/heap.h
 /trunk/src/hydrogen-instructions.cc
 /trunk/src/hydrogen-instructions.h
 /trunk/src/hydrogen-load-elimination.cc
 /trunk/src/hydrogen-store-elimination.cc
 /trunk/src/hydrogen.cc
 /trunk/src/hydrogen.h
 /trunk/src/i18n.h
 /trunk/src/ia32/code-stubs-ia32.cc
 /trunk/src/ia32/code-stubs-ia32.h
 /trunk/src/ia32/disasm-ia32.cc
 /trunk/src/ia32/frames-ia32.cc
 /trunk/src/ia32/lithium-codegen-ia32.cc
 /trunk/src/ia32/lithium-gap-resolver-ia32.cc
 /trunk/src/ia32/lithium-ia32.cc
 /trunk/src/ia32/lithium-ia32.h
 /trunk/src/ia32/regexp-macro-assembler-ia32.cc
 /trunk/src/ia32/stub-cache-ia32.cc
 /trunk/src/interpreter-irregexp.cc
 /trunk/src/isolate.cc
 /trunk/src/isolate.h
 /trunk/src/json-stringifier.h
 /trunk/src/jsregexp.cc
 /trunk/src/libplatform/default-platform.cc
 /trunk/src/libplatform/default-platform.h
 /trunk/src/lithium-allocator-inl.h
 /trunk/src/lithium-allocator.cc
 /trunk/src/lithium-codegen.cc
 /trunk/src/lithium.cc
 /trunk/src/macro-assembler.h
 /trunk/src/mark-compact.cc
 /trunk/src/mips/debug-mips.cc
 /trunk/src/mips/disasm-mips.cc
 /trunk/src/mips/frames-mips.cc
 /trunk/src/mips/ic-mips.cc
 /trunk/src/mips/lithium-codegen-mips.cc
 /trunk/src/mips/lithium-codegen-mips.h
 /trunk/src/mips/lithium-gap-resolver-mips.cc
 /trunk/src/mips/lithium-mips.cc
 /trunk/src/mips/lithium-mips.h
 /trunk/src/mips/macro-assembler-mips.h
 /trunk/src/mips/regexp-macro-assembler-mips.cc
 /trunk/src/mips/regexp-macro-assembler-mips.h
 /trunk/src/mips/simulator-mips.cc
 /trunk/src/mips/simulator-mips.h
 /trunk/src/mips/stub-cache-mips.cc
 /trunk/src/mksnapshot.cc
 /trunk/src/objects-debug.cc
 /trunk/src/objects-inl.h
 /trunk/src/objects-printer.cc
 /trunk/src/objects.cc
 /trunk/src/objects.h
 /trunk/src/parser.cc
 /trunk/src/parser.h
 /trunk/src/platform-cygwin.cc
 /trunk/src/platform-freebsd.cc
 /trunk/src/platform-linux.cc
 /trunk/src/platform-macos.cc
 /trunk/src/platform-openbsd.cc
 /trunk/src/platform-posix.cc
 /trunk/src/platform-qnx.cc
 /trunk/src/platform-solaris.cc
 /trunk/src/preparse-data.cc
 /trunk/src/preparse-data.h
 /trunk/src/preparser.cc
 /trunk/src/preparser.h
 /trunk/src/prettyprinter.cc
 /trunk/src/profile-generator.cc
 /trunk/src/profile-generator.h
 /trunk/src/property.h
 /trunk/src/regexp-macro-assembler-irregexp-inl.h
 /trunk/src/regexp-macro-assembler-irregexp.cc
 /trunk/src/regexp-macro-assembler-tracer.cc
 /trunk/src/regexp-macro-assembler.cc
 /trunk/src/regexp-stack.cc
 /trunk/src/runtime.cc
 /trunk/src/sampler.cc
 /trunk/src/scanner.cc
 /trunk/src/serialize.cc
 /trunk/src/serialize.h
 /trunk/src/snapshot-common.cc
 /trunk/src/spaces-inl.h
 /trunk/src/spaces.h
 /trunk/src/string-search.cc
 /trunk/src/strtod.cc
 /trunk/src/typing.h
 /trunk/src/unicode.cc
 /trunk/src/v8.cc
 /trunk/src/v8.h
 /trunk/src/v8threads.cc
 /trunk/src/variables.h
 /trunk/src/version.cc
 /trunk/src/win32-math.cc
 /trunk/src/x64/code-stubs-x64.cc
 /trunk/src/x64/disasm-x64.cc
 /trunk/src/x64/frames-x64.cc
 /trunk/src/x64/lithium-codegen-x64.cc
 /trunk/src/x64/lithium-gap-resolver-x64.cc
 /trunk/src/x64/lithium-x64.cc
 /trunk/src/x64/lithium-x64.h
 /trunk/src/x64/macro-assembler-x64.cc
 /trunk/src/x64/regexp-macro-assembler-x64.cc
 /trunk/src/x64/regexp-macro-assembler-x64.h
 /trunk/src/x64/stub-cache-x64.cc
 /trunk/src/x87/code-stubs-x87.cc
 /trunk/src/x87/code-stubs-x87.h
 /trunk/src/x87/disasm-x87.cc
 /trunk/src/x87/frames-x87.cc
 /trunk/src/x87/lithium-codegen-x87.cc
 /trunk/src/x87/lithium-codegen-x87.h
 /trunk/src/x87/lithium-gap-resolver-x87.cc
 /trunk/src/x87/lithium-x87.cc
 /trunk/src/x87/lithium-x87.h
 /trunk/src/x87/regexp-macro-assembler-x87.cc
 /trunk/src/x87/regexp-macro-assembler-x87.h
 /trunk/src/x87/stub-cache-x87.cc
 /trunk/src/zone-containers.h
 /trunk/src/zone.h
 /trunk/test/cctest/test-alloc.cc
 /trunk/test/cctest/test-api.cc
 /trunk/test/cctest/test-assembler-arm.cc
 /trunk/test/cctest/test-assembler-arm64.cc
 /trunk/test/cctest/test-assembler-x64.cc
 /trunk/test/cctest/test-circular-queue.cc
 /trunk/test/cctest/test-dictionary.cc
 /trunk/test/cctest/test-disasm-arm64.cc
 /trunk/test/cctest/test-hashmap.cc
 /trunk/test/cctest/test-log.cc
 /trunk/test/cctest/test-macro-assembler-arm.cc
 /trunk/test/cctest/test-macro-assembler-ia32.cc
 /trunk/test/cctest/test-macro-assembler-mips.cc
 /trunk/test/cctest/test-macro-assembler-x64.cc
 /trunk/test/cctest/test-macro-assembler-x87.cc
 /trunk/test/cctest/test-mark-compact.cc
 /trunk/test/cctest/test-parsing.cc
 /trunk/test/cctest/test-random-number-generator.cc
 /trunk/test/cctest/test-regexp.cc
 /trunk/test/cctest/test-representation.cc
 /trunk/test/cctest/test-thread-termination.cc
 /trunk/test/cctest/test-threads.cc
 /trunk/test/cctest/test-time.cc
 /trunk/test/cctest/test-unbound-queue.cc
 /trunk/test/cctest/test-utils-arm64.cc
 /trunk/test/cctest/test-utils-arm64.h
 /trunk/test/cctest/test-weaktypedarrays.cc
 /trunk/test/mjsunit/es6/debug-promises-caught-all.js
 /trunk/test/mjsunit/es6/debug-promises-caught-late.js
 /trunk/test/mjsunit/es6/debug-promises-caught-uncaught.js
 /trunk/test/mjsunit/es6/debug-promises-reentry.js
 /trunk/test/mjsunit/es6/debug-promises-throw-in-constructor.js
 /trunk/test/mjsunit/es6/debug-promises-throw-in-reject.js
 /trunk/test/mjsunit/es6/debug-promises-uncaught-all.js
 /trunk/test/mjsunit/es6/debug-promises-uncaught-uncaught.js
 /trunk/test/mjsunit/es6/debug-promises-undefined-reject.js
 /trunk/test/mjsunit/es6/mirror-promises.js
 /trunk/test/mjsunit/mjsunit.status
 /trunk/test/mjsunit/stack-traces-overflow.js
 /trunk/tools/presubmit.py

=======================================
--- /dev/null
+++ /trunk/test/mjsunit/regress/regress-386034.js Mon Jun 23 08:21:41 2014 UTC
@@ -0,0 +1,19 @@
+// Copyright 2014 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Flags: --allow-natives-syntax
+
+function f(x) {
+  var v = x;
+  for (i = 0; i < 1; i++) {
+    v.apply(this, arguments);
+  }
+}
+
+function g() {}
+
+f(g);
+f(g);
+%OptimizeFunctionOnNextCall(f);
+assertThrows(function() { f('----'); }, TypeError);
=======================================
--- /dev/null
+++ /trunk/test/mjsunit/regress/regress-crbug-387031.js Mon Jun 23 08:21:41 2014 UTC
@@ -0,0 +1,15 @@
+// Copyright 2014 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Flags: --allow-natives-syntax
+
+a = [1];
+b = [];
+a.__defineGetter__(0, function () {
+  b.length = 0xffffffff;
+});
+c = a.concat(b);
+for (var i = 0; i < 20; i++) {
+  assertEquals(undefined, (c[i]));
+}
=======================================
--- /trunk/ChangeLog    Wed Jun 18 14:15:57 2014 UTC
+++ /trunk/ChangeLog    Mon Jun 23 08:21:41 2014 UTC
@@ -1,3 +1,15 @@
+2014-06-23: Version 3.28.0
+
+        MIPS: Support LiveEdit (Chromium issue 368580).
+
+ Array.concat: properly go to dictionary mode when required (Chromium
+        issue 387031).
+
+        Support LiveEdit on ARM (Chromium issue 368580).
+
+        Performance and stability improvements on all platforms.
+
+
 2014-06-18: Version 3.27.34

Reduce number of writes to DependentCode array when inserting dependent
=======================================
--- /trunk/Makefile     Thu Jun  5 00:04:53 2014 UTC
+++ /trunk/Makefile     Mon Jun 23 08:21:41 2014 UTC
@@ -70,6 +70,10 @@
 else
   GYPFLAGS += -Dv8_enable_backtrace=1
 endif
+# verifypredictable=on
+ifeq ($(verifypredictable), on)
+  GYPFLAGS += -Dv8_enable_verify_predictable=1
+endif
 # snapshot=off
 ifeq ($(snapshot), off)
   GYPFLAGS += -Dv8_use_snapshot='false'
=======================================
--- /trunk/build/features.gypi  Tue Jun 10 10:57:45 2014 UTC
+++ /trunk/build/features.gypi  Mon Jun 23 08:21:41 2014 UTC
@@ -41,6 +41,8 @@

     'v8_use_snapshot%': 'true',

+    'v8_enable_verify_predictable%': 0,
+
# With post mortem support enabled, metadata is embedded into libv8 that
     # describes various parameters of the VM for use by debuggers. See
     # tools/gen-postmortem-metadata.py for details.
@@ -74,6 +76,9 @@
       ['v8_enable_verify_heap==1', {
         'defines': ['VERIFY_HEAP',],
       }],
+      ['v8_enable_verify_predictable==1', {
+        'defines': ['VERIFY_PREDICTABLE',],
+      }],
       ['v8_interpreted_regexp==1', {
         'defines': ['V8_INTERPRETED_REGEXP',],
       }],
=======================================
--- /trunk/include/v8.h Wed Jun 18 14:15:57 2014 UTC
+++ /trunk/include/v8.h Mon Jun 23 08:21:41 2014 UTC
@@ -1108,6 +1108,12 @@
   Local<String> Get() const;
   Local<String> GetSourceLine() const;

+  /**
+   * Returns the origin for the script from where the function causing the
+   * error originates.
+   */
+  ScriptOrigin GetScriptOrigin() const;
+
   /**
* Returns the resource name for the script from where the function causing
    * the error originates.
@@ -5459,7 +5465,7 @@
 template <> struct SmiTagging<4> {
   static const int kSmiShiftSize = 0;
   static const int kSmiValueSize = 31;
-  V8_INLINE static int SmiToInt(internal::Object* value) {
+  V8_INLINE static int SmiToInt(const internal::Object* value) {
     int shift_bits = kSmiTagSize + kSmiShiftSize;
// Throw away top 32 bits and shift down (requires >> to be sign extending). return static_cast<int>(reinterpret_cast<intptr_t>(value)) >> shift_bits;
@@ -5487,7 +5493,7 @@
 template <> struct SmiTagging<8> {
   static const int kSmiShiftSize = 31;
   static const int kSmiValueSize = 32;
-  V8_INLINE static int SmiToInt(internal::Object* value) {
+  V8_INLINE static int SmiToInt(const internal::Object* value) {
     int shift_bits = kSmiTagSize + kSmiShiftSize;
     // Shift down and throw away top 32 bits.
return static_cast<int>(reinterpret_cast<intptr_t>(value) >> shift_bits);
@@ -5517,7 +5523,8 @@
   // These values match non-compiler-dependent values defined within
   // the implementation of v8.
   static const int kHeapObjectMapOffset = 0;
- static const int kMapInstanceTypeOffset = 1 * kApiPointerSize + kApiIntSize;
+  static const int kMapInstanceTypeAndBitFieldOffset =
+      1 * kApiPointerSize + kApiIntSize;
   static const int kStringResourceOffset = 3 * kApiPointerSize;

   static const int kOddballKindOffset = 3 * kApiPointerSize;
@@ -5575,12 +5582,12 @@
 #endif
   }

-  V8_INLINE static bool HasHeapObjectTag(internal::Object* value) {
+  V8_INLINE static bool HasHeapObjectTag(const internal::Object* value) {
     return ((reinterpret_cast<intptr_t>(value) & kHeapObjectTagMask) ==
             kHeapObjectTag);
   }

-  V8_INLINE static int SmiValue(internal::Object* value) {
+  V8_INLINE static int SmiValue(const internal::Object* value) {
     return PlatformSmiTagging::SmiToInt(value);
   }

@@ -5592,13 +5599,15 @@
     return PlatformSmiTagging::IsValidSmi(value);
   }

-  V8_INLINE static int GetInstanceType(internal::Object* obj) {
+  V8_INLINE static int GetInstanceType(const internal::Object* obj) {
     typedef internal::Object O;
     O* map = ReadField<O*>(obj, kHeapObjectMapOffset);
-    return ReadField<uint8_t>(map, kMapInstanceTypeOffset);
+    // Map::InstanceType is defined so that it will always be loaded into
+    // the LS 8 bits of one 16-bit word, regardless of endianess.
+ return ReadField<uint16_t>(map, kMapInstanceTypeAndBitFieldOffset) & 0xff;
   }

-  V8_INLINE static int GetOddballKind(internal::Object* obj) {
+  V8_INLINE static int GetOddballKind(const internal::Object* obj) {
     typedef internal::Object O;
     return SmiValue(ReadField<O*>(obj, kOddballKindOffset));
   }
@@ -5631,18 +5640,19 @@
     *addr = static_cast<uint8_t>((*addr & ~kNodeStateMask) | value);
   }

-  V8_INLINE static void SetEmbedderData(v8::Isolate *isolate,
+  V8_INLINE static void SetEmbedderData(v8::Isolate* isolate,
                                         uint32_t slot,
-                                        void *data) {
+                                        void* data) {
     uint8_t *addr = reinterpret_cast<uint8_t *>(isolate) +
                     kIsolateEmbedderDataOffset + slot * kApiPointerSize;
     *reinterpret_cast<void**>(addr) = data;
   }

- V8_INLINE static void* GetEmbedderData(v8::Isolate* isolate, uint32_t slot) {
-    uint8_t* addr = reinterpret_cast<uint8_t*>(isolate) +
+  V8_INLINE static void* GetEmbedderData(const v8::Isolate* isolate,
+                                         uint32_t slot) {
+    const uint8_t* addr = reinterpret_cast<const uint8_t*>(isolate) +
         kIsolateEmbedderDataOffset + slot * kApiPointerSize;
-    return *reinterpret_cast<void**>(addr);
+    return *reinterpret_cast<void* const*>(addr);
   }

   V8_INLINE static internal::Object** GetRoot(v8::Isolate* isolate,
@@ -5652,16 +5662,17 @@
   }

   template <typename T>
-  V8_INLINE static T ReadField(internal::Object* ptr, int offset) {
- uint8_t* addr = reinterpret_cast<uint8_t*>(ptr) + offset - kHeapObjectTag;
-    return *reinterpret_cast<T*>(addr);
+  V8_INLINE static T ReadField(const internal::Object* ptr, int offset) {
+    const uint8_t* addr =
+        reinterpret_cast<const uint8_t*>(ptr) + offset - kHeapObjectTag;
+    return *reinterpret_cast<const T*>(addr);
   }

   template <typename T>
-  V8_INLINE static T ReadEmbedderData(v8::Context* context, int index) {
+ V8_INLINE static T ReadEmbedderData(const v8::Context* context, int index) {
     typedef internal::Object O;
     typedef internal::Internals I;
-    O* ctx = *reinterpret_cast<O**>(context);
+    O* ctx = *reinterpret_cast<O* const*>(context);
     int embedder_data_offset = I::kContextHeaderSize +
         (internal::kApiPointerSize * I::kContextEmbedderDataIndex);
     O* embedder_data = I::ReadField<O*>(ctx, embedder_data_offset);
=======================================
--- /trunk/samples/lineprocessor.cc     Fri May 23 00:04:50 2014 UTC
+++ /trunk/samples/lineprocessor.cc     Mon Jun 23 08:21:41 2014 UTC
@@ -30,9 +30,9 @@
 #include <v8-debug.h>

 #include <fcntl.h>
-#include <string.h>
 #include <stdio.h>
 #include <stdlib.h>
+#include <string.h>

 /**
  * This sample program should demonstrate certain aspects of debugging
@@ -300,7 +300,7 @@
     printf("%s\n", exception_string);
   } else {
     // Print (filename):(line number): (message).
-    v8::String::Utf8Value filename(message->GetScriptResourceName());
+ v8::String::Utf8Value filename(message->GetScriptOrigin().ResourceName());
     const char* filename_string = ToCString(filename);
     int linenum = message->GetLineNumber();
     printf("%s:%i: %s\n", filename_string, linenum, exception_string);
=======================================
--- /trunk/samples/process.cc   Wed Jun 11 00:05:05 2014 UTC
+++ /trunk/samples/process.cc   Mon Jun 23 08:21:41 2014 UTC
@@ -27,8 +27,8 @@

 #include <v8.h>

-#include <string>
 #include <map>
+#include <string>

 #ifdef COMPRESS_STARTUP_DATA_BZ2
 #error Using compressed startup data is not supported for this sample
=======================================
--- /trunk/samples/shell.cc     Fri May 16 00:04:27 2014 UTC
+++ /trunk/samples/shell.cc     Mon Jun 23 08:21:41 2014 UTC
@@ -26,11 +26,12 @@
 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

 #include <v8.h>
+
 #include <assert.h>
 #include <fcntl.h>
-#include <string.h>
 #include <stdio.h>
 #include <stdlib.h>
+#include <string.h>

 #ifdef COMPRESS_STARTUP_DATA_BZ2
 #error Using compressed startup data is not supported for this sample
@@ -358,7 +359,7 @@
     fprintf(stderr, "%s\n", exception_string);
   } else {
     // Print (filename):(line number): (message).
-    v8::String::Utf8Value filename(message->GetScriptResourceName());
+ v8::String::Utf8Value filename(message->GetScriptOrigin().ResourceName());
     const char* filename_string = ToCString(filename);
     int linenum = message->GetLineNumber();
fprintf(stderr, "%s:%i: %s\n", filename_string, linenum, exception_string);
=======================================
--- /trunk/src/accessors.cc     Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/accessors.cc     Mon Jun 23 08:21:41 2014 UTC
@@ -3,8 +3,9 @@
 // found in the LICENSE file.

 #include "src/v8.h"
+
 #include "src/accessors.h"
-
+#include "src/api.h"
 #include "src/compiler.h"
 #include "src/contexts.h"
 #include "src/deoptimizer.h"
@@ -14,7 +15,6 @@
 #include "src/isolate.h"
 #include "src/list-inl.h"
 #include "src/property-details.h"
-#include "src/api.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/allocation-tracker.cc    Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/allocation-tracker.cc    Mon Jun 23 08:21:41 2014 UTC
@@ -5,9 +5,8 @@
 #include "src/v8.h"

 #include "src/allocation-tracker.h"
-
+#include "src/frames-inl.h"
 #include "src/heap-snapshot-generator.h"
-#include "src/frames-inl.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/api.cc   Mon Jun 16 11:20:10 2014 UTC
+++ /trunk/src/api.cc   Mon Jun 23 08:21:41 2014 UTC
@@ -35,8 +35,8 @@
 #include "src/platform.h"
 #include "src/platform/time.h"
 #include "src/profile-generator-inl.h"
-#include "src/property-details.h"
 #include "src/property.h"
+#include "src/property-details.h"
 #include "src/runtime.h"
 #include "src/runtime-profiler.h"
 #include "src/scanner-character-streams.h"
@@ -1944,19 +1944,28 @@
 }


-v8::Handle<Value> Message::GetScriptResourceName() const {
+ScriptOrigin Message::GetScriptOrigin() const {
   i::Isolate* isolate = Utils::OpenHandle(this)->GetIsolate();
-  ENTER_V8(isolate);
-  EscapableHandleScope scope(reinterpret_cast<Isolate*>(isolate));
   i::Handle<i::JSMessageObject> message =
       i::Handle<i::JSMessageObject>::cast(Utils::OpenHandle(this));
-  // Return this.script.name.
-  i::Handle<i::JSValue> script =
-      i::Handle<i::JSValue>::cast(i::Handle<i::Object>(message->script(),
-                                                       isolate));
- i::Handle<i::Object> resource_name(i::Script::cast(script->value())->name(),
-                                     isolate);
-  return scope.Escape(Utils::ToLocal(resource_name));
+  i::Handle<i::Object> script_wraper =
+      i::Handle<i::Object>(message->script(), isolate);
+  i::Handle<i::JSValue> script_value =
+      i::Handle<i::JSValue>::cast(script_wraper);
+  i::Handle<i::Script> script(i::Script::cast(script_value->value()));
+  i::Handle<i::Object> scriptName(i::Script::GetNameOrSourceURL(script));
+  v8::Isolate* v8_isolate =
+      reinterpret_cast<v8::Isolate*>(script->GetIsolate());
+  v8::ScriptOrigin origin(
+      Utils::ToLocal(scriptName),
+      v8::Integer::New(v8_isolate, script->line_offset()->value()),
+      v8::Integer::New(v8_isolate, script->column_offset()->value()));
+  return origin;
+}
+
+
+v8::Handle<Value> Message::GetScriptResourceName() const {
+  return GetScriptOrigin().ResourceName();
 }


=======================================
--- /trunk/src/arguments.cc     Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arguments.cc     Mon Jun 23 08:21:41 2014 UTC
@@ -3,8 +3,8 @@
 // found in the LICENSE file.

 #include "src/v8.h"
-#include "src/arguments.h"

+#include "src/arguments.h"
 #include "src/vm-state-inl.h"

 namespace v8 {
=======================================
--- /trunk/src/arm/assembler-arm.h      Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm/assembler-arm.h      Mon Jun 23 08:21:41 2014 UTC
@@ -43,8 +43,8 @@
 #include <stdio.h>
 #include <vector>

-#include "src/assembler.h"
 #include "src/arm/constants-arm.h"
+#include "src/assembler.h"
 #include "src/serialize.h"

 namespace v8 {
=======================================
--- /trunk/src/arm/codegen-arm.cc       Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm/codegen-arm.cc       Mon Jun 23 08:21:41 2014 UTC
@@ -6,9 +6,9 @@

 #if V8_TARGET_ARCH_ARM

+#include "src/arm/simulator-arm.h"
 #include "src/codegen.h"
 #include "src/macro-assembler.h"
-#include "src/arm/simulator-arm.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm/debug-arm.cc Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm/debug-arm.cc Mon Jun 23 08:21:41 2014 UTC
@@ -27,7 +27,7 @@
   //   ldr ip, [pc, #0]
   //   blx ip
   //   <debug break return code entry point address>
-  //   bktp 0
+  //   bkpt 0
CodePatcher patcher(rinfo()->pc(), Assembler::kJSReturnSequenceInstructions);
   patcher.masm()->ldr(v8::internal::ip, MemOperand(v8::internal::pc, 0));
   patcher.masm()->blx(v8::internal::ip);
@@ -93,6 +93,14 @@
   {
     FrameAndConstantPoolScope scope(masm, StackFrame::INTERNAL);

+    // Load padding words on stack.
+    __ mov(ip, Operand(Smi::FromInt(LiveEdit::kFramePaddingValue)));
+    for (int i = 0; i < LiveEdit::kFramePaddingInitialSize; i++) {
+      __ push(ip);
+    }
+    __ mov(ip, Operand(Smi::FromInt(LiveEdit::kFramePaddingInitialSize)));
+    __ push(ip);
+
// Store the registers containing live values on the expression stack to // make sure that these are correctly updated during GC. Non object values
     // are stored as a smi causing it to be untouched by GC.
@@ -138,6 +146,9 @@
         }
       }
     }
+
+    // Don't bother removing padding bytes pushed on the stack
+    // as the frame is going to be restored right away.

     // Leave the internal frame.
   }
@@ -282,16 +293,37 @@


 void DebugCodegen::GeneratePlainReturnLiveEdit(MacroAssembler* masm) {
-  masm->Abort(kLiveEditFrameDroppingIsNotSupportedOnArm);
+  __ Ret();
 }


 void DebugCodegen::GenerateFrameDropperLiveEdit(MacroAssembler* masm) {
-  masm->Abort(kLiveEditFrameDroppingIsNotSupportedOnArm);
+  ExternalReference restarter_frame_function_slot =
+      ExternalReference::debug_restarter_frame_function_pointer_address(
+          masm->isolate());
+  __ mov(ip, Operand(restarter_frame_function_slot));
+  __ mov(r1, Operand::Zero());
+  __ str(r1, MemOperand(ip, 0));
+
+  // We do not know our frame height, but set sp based on fp.
+  __ sub(sp, fp, Operand(kPointerSize));
+
+  __ Pop(lr, fp, r1);  // Return address, Frame, Function.
+
+  // Load context from the function.
+  __ ldr(cp, FieldMemOperand(r1, JSFunction::kContextOffset));
+
+  // Get function code.
+  __ ldr(ip, FieldMemOperand(r1, JSFunction::kSharedFunctionInfoOffset));
+  __ ldr(ip, FieldMemOperand(ip, SharedFunctionInfo::kCodeOffset));
+  __ add(ip, ip, Operand(Code::kHeaderSize - kHeapObjectTag));
+
+  // Re-run JSFunction, r1 is function, cp is context.
+  __ Jump(ip);
 }


-const bool LiveEdit::kFrameDropperSupported = false;
+const bool LiveEdit::kFrameDropperSupported = true;

 #undef __

=======================================
--- /trunk/src/arm/disasm-arm.cc        Mon Jun 16 11:20:10 2014 UTC
+++ /trunk/src/arm/disasm-arm.cc        Mon Jun 23 08:21:41 2014 UTC
@@ -24,8 +24,8 @@


 #include <assert.h>
-#include <stdio.h>
 #include <stdarg.h>
+#include <stdio.h>
 #include <string.h>

 #include "src/v8.h"
=======================================
--- /trunk/src/arm/frames-arm.cc        Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm/frames-arm.cc        Mon Jun 23 08:21:41 2014 UTC
@@ -7,10 +7,11 @@
 #if V8_TARGET_ARCH_ARM

 #include "src/assembler.h"
-#include "src/arm/assembler-arm.h"
-#include "src/arm/assembler-arm-inl.h"
 #include "src/frames.h"
 #include "src/macro-assembler.h"
+
+#include "src/arm/assembler-arm-inl.h"
+#include "src/arm/assembler-arm.h"
 #include "src/arm/macro-assembler-arm.h"

 namespace v8 {
=======================================
--- /trunk/src/arm/lithium-arm.cc       Fri Jun  6 00:04:56 2014 UTC
+++ /trunk/src/arm/lithium-arm.cc       Mon Jun 23 08:21:41 2014 UTC
@@ -4,10 +4,10 @@

 #include "src/v8.h"

-#include "src/lithium-allocator-inl.h"
 #include "src/arm/lithium-arm.h"
 #include "src/arm/lithium-codegen-arm.h"
 #include "src/hydrogen-osr.h"
+#include "src/lithium-allocator-inl.h"

 namespace v8 {
 namespace internal {
@@ -1500,8 +1500,8 @@
     return DefineAsRegister(mul);

   } else if (instr->representation().IsDouble()) {
-    if (instr->UseCount() == 1 && (instr->uses().value()->IsAdd() ||
-                                   instr->uses().value()->IsSub())) {
+    if (instr->HasOneUse() && (instr->uses().value()->IsAdd() ||
+                               instr->uses().value()->IsSub())) {
HBinaryOperation* use = HBinaryOperation::cast(instr->uses().value());

       if (use->IsAdd() && instr == use->left()) {
@@ -1547,7 +1547,7 @@
     }
     return result;
   } else if (instr->representation().IsDouble()) {
-    if (instr->right()->IsMul()) {
+    if (instr->right()->IsMul() && instr->right()->HasOneUse()) {
       return DoMultiplySub(instr->left(), HMul::cast(instr->right()));
     }

@@ -1618,12 +1618,12 @@
     LInstruction* result = DefineAsRegister(add);
     return result;
   } else if (instr->representation().IsDouble()) {
-    if (instr->left()->IsMul()) {
+    if (instr->left()->IsMul() && instr->left()->HasOneUse()) {
       return DoMultiplyAdd(HMul::cast(instr->left()), instr->right());
     }

-    if (instr->right()->IsMul()) {
-      ASSERT(!instr->left()->IsMul());
+    if (instr->right()->IsMul() && instr->right()->HasOneUse()) {
+      ASSERT(!instr->left()->IsMul() || !instr->left()->HasOneUse());
       return DoMultiplyAdd(HMul::cast(instr->right()), instr->left());
     }

=======================================
--- /trunk/src/arm/lithium-arm.h        Wed Jun 18 14:15:57 2014 UTC
+++ /trunk/src/arm/lithium-arm.h        Mon Jun 23 08:21:41 2014 UTC
@@ -6,8 +6,8 @@
 #define V8_ARM_LITHIUM_ARM_H_

 #include "src/hydrogen.h"
-#include "src/lithium-allocator.h"
 #include "src/lithium.h"
+#include "src/lithium-allocator.h"
 #include "src/safepoint-table.h"
 #include "src/utils.h"

=======================================
--- /trunk/src/arm/lithium-codegen-arm.cc       Mon Jun 16 00:04:47 2014 UTC
+++ /trunk/src/arm/lithium-codegen-arm.cc       Mon Jun 23 08:21:41 2014 UTC
@@ -7,8 +7,8 @@
 #include "src/arm/lithium-codegen-arm.h"
 #include "src/arm/lithium-gap-resolver-arm.h"
 #include "src/code-stubs.h"
-#include "src/stub-cache.h"
 #include "src/hydrogen-osr.h"
+#include "src/stub-cache.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm/lithium-gap-resolver-arm.cc  Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm/lithium-gap-resolver-arm.cc  Mon Jun 23 08:21:41 2014 UTC
@@ -4,8 +4,8 @@

 #include "src/v8.h"

-#include "src/arm/lithium-gap-resolver-arm.h"
 #include "src/arm/lithium-codegen-arm.h"
+#include "src/arm/lithium-gap-resolver-arm.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm/regexp-macro-assembler-arm.cc Wed Jun 18 14:15:57 2014 UTC +++ /trunk/src/arm/regexp-macro-assembler-arm.cc Mon Jun 23 08:21:41 2014 UTC
@@ -6,13 +6,14 @@

 #if V8_TARGET_ARCH_ARM

+#include "src/code-stubs.h"
 #include "src/cpu-profiler.h"
-#include "src/unicode.h"
 #include "src/log.h"
-#include "src/code-stubs.h"
-#include "src/regexp-stack.h"
 #include "src/macro-assembler.h"
 #include "src/regexp-macro-assembler.h"
+#include "src/regexp-stack.h"
+#include "src/unicode.h"
+
 #include "src/arm/regexp-macro-assembler-arm.h"

 namespace v8 {
=======================================
--- /trunk/src/arm/simulator-arm.cc     Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm/simulator-arm.cc     Mon Jun 23 08:21:41 2014 UTC
@@ -10,11 +10,11 @@

 #if V8_TARGET_ARCH_ARM

-#include "src/disasm.h"
-#include "src/assembler.h"
-#include "src/codegen.h"
 #include "src/arm/constants-arm.h"
 #include "src/arm/simulator-arm.h"
+#include "src/assembler.h"
+#include "src/codegen.h"
+#include "src/disasm.h"

 #if defined(USE_SIMULATOR)

=======================================
--- /trunk/src/arm/simulator-arm.h      Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm/simulator-arm.h      Mon Jun 23 08:21:41 2014 UTC
@@ -61,8 +61,8 @@
 // Running with a simulator.

 #include "src/arm/constants-arm.h"
-#include "src/hashmap.h"
 #include "src/assembler.h"
+#include "src/hashmap.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm/stub-cache-arm.cc    Thu Jun 12 00:04:49 2014 UTC
+++ /trunk/src/arm/stub-cache-arm.cc    Mon Jun 23 08:21:41 2014 UTC
@@ -6,8 +6,8 @@

 #if V8_TARGET_ARCH_ARM

-#include "src/ic-inl.h"
 #include "src/codegen.h"
+#include "src/ic-inl.h"
 #include "src/stub-cache.h"

 namespace v8 {
=======================================
--- /trunk/src/arm64/assembler-arm64.h  Wed Jun 11 00:05:05 2014 UTC
+++ /trunk/src/arm64/assembler-arm64.h  Mon Jun 23 08:21:41 2014 UTC
@@ -8,12 +8,12 @@
 #include <list>
 #include <map>

+#include "src/arm64/instructions-arm64.h"
+#include "src/assembler.h"
 #include "src/cpu.h"
 #include "src/globals.h"
-#include "src/utils.h"
-#include "src/assembler.h"
 #include "src/serialize.h"
-#include "src/arm64/instructions-arm64.h"
+#include "src/utils.h"


 namespace v8 {
=======================================
--- /trunk/src/arm64/codegen-arm64.cc   Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm64/codegen-arm64.cc   Mon Jun 23 08:21:41 2014 UTC
@@ -6,9 +6,9 @@

 #if V8_TARGET_ARCH_ARM64

+#include "src/arm64/simulator-arm64.h"
 #include "src/codegen.h"
 #include "src/macro-assembler.h"
-#include "src/arm64/simulator-arm64.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm64/cpu-arm64.cc       Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm64/cpu-arm64.cc       Mon Jun 23 08:21:41 2014 UTC
@@ -8,8 +8,8 @@

 #if V8_TARGET_ARCH_ARM64

-#include "src/cpu.h"
 #include "src/arm64/utils-arm64.h"
+#include "src/cpu.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm64/decoder-arm64.cc   Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm64/decoder-arm64.cc   Mon Jun 23 08:21:41 2014 UTC
@@ -6,9 +6,9 @@

 #if V8_TARGET_ARCH_ARM64

+#include "src/arm64/decoder-arm64.h"
 #include "src/globals.h"
 #include "src/utils.h"
-#include "src/arm64/decoder-arm64.h"


 namespace v8 {
=======================================
--- /trunk/src/arm64/decoder-arm64.h    Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm64/decoder-arm64.h    Mon Jun 23 08:21:41 2014 UTC
@@ -7,8 +7,8 @@

 #include <list>

-#include "src/globals.h"
 #include "src/arm64/instructions-arm64.h"
+#include "src/globals.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm64/disasm-arm64.cc    Mon Jun 16 11:20:10 2014 UTC
+++ /trunk/src/arm64/disasm-arm64.cc    Mon Jun 23 08:21:41 2014 UTC
@@ -3,17 +3,17 @@
 // found in the LICENSE file.

 #include <assert.h>
+#include <stdarg.h>
 #include <stdio.h>
-#include <stdarg.h>
 #include <string.h>

 #include "src/v8.h"

 #if V8_TARGET_ARCH_ARM64

-#include "src/disasm.h"
 #include "src/arm64/decoder-arm64-inl.h"
 #include "src/arm64/disasm-arm64.h"
+#include "src/disasm.h"
 #include "src/macro-assembler.h"
 #include "src/platform.h"

=======================================
--- /trunk/src/arm64/disasm-arm64.h     Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm64/disasm-arm64.h     Mon Jun 23 08:21:41 2014 UTC
@@ -7,10 +7,10 @@

 #include "src/v8.h"

+#include "src/arm64/decoder-arm64.h"
+#include "src/arm64/instructions-arm64.h"
 #include "src/globals.h"
 #include "src/utils.h"
-#include "src/arm64/instructions-arm64.h"
-#include "src/arm64/decoder-arm64.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm64/frames-arm64.cc    Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm64/frames-arm64.cc    Mon Jun 23 08:21:41 2014 UTC
@@ -6,9 +6,9 @@

 #if V8_TARGET_ARCH_ARM64

-#include "src/assembler.h"
-#include "src/arm64/assembler-arm64.h"
 #include "src/arm64/assembler-arm64-inl.h"
+#include "src/arm64/assembler-arm64.h"
+#include "src/assembler.h"
 #include "src/frames.h"

 namespace v8 {
=======================================
--- /trunk/src/arm64/frames-arm64.h     Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm64/frames-arm64.h     Mon Jun 23 08:21:41 2014 UTC
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.

-#include "src/arm64/constants-arm64.h"
 #include "src/arm64/assembler-arm64.h"
+#include "src/arm64/constants-arm64.h"

 #ifndef V8_ARM64_FRAMES_ARM64_H_
 #define V8_ARM64_FRAMES_ARM64_H_
=======================================
--- /trunk/src/arm64/instructions-arm64.cc      Wed Jun 11 00:05:05 2014 UTC
+++ /trunk/src/arm64/instructions-arm64.cc      Mon Jun 23 08:21:41 2014 UTC
@@ -8,8 +8,8 @@

 #define ARM64_DEFINE_FP_STATICS

-#include "src/arm64/instructions-arm64.h"
 #include "src/arm64/assembler-arm64-inl.h"
+#include "src/arm64/instructions-arm64.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm64/instructions-arm64.h       Wed Jun 11 00:05:05 2014 UTC
+++ /trunk/src/arm64/instructions-arm64.h       Mon Jun 23 08:21:41 2014 UTC
@@ -5,10 +5,10 @@
 #ifndef V8_ARM64_INSTRUCTIONS_ARM64_H_
 #define V8_ARM64_INSTRUCTIONS_ARM64_H_

-#include "src/globals.h"
-#include "src/utils.h"
 #include "src/arm64/constants-arm64.h"
 #include "src/arm64/utils-arm64.h"
+#include "src/globals.h"
+#include "src/utils.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm64/instrument-arm64.h Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm64/instrument-arm64.h Mon Jun 23 08:21:41 2014 UTC
@@ -7,8 +7,9 @@

 #include "src/globals.h"
 #include "src/utils.h"
+
+#include "src/arm64/constants-arm64.h"
 #include "src/arm64/decoder-arm64.h"
-#include "src/arm64/constants-arm64.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm64/lithium-arm64.cc   Fri Jun  6 00:04:56 2014 UTC
+++ /trunk/src/arm64/lithium-arm64.cc   Mon Jun 23 08:21:41 2014 UTC
@@ -4,10 +4,10 @@

 #include "src/v8.h"

-#include "src/lithium-allocator-inl.h"
 #include "src/arm64/lithium-arm64.h"
 #include "src/arm64/lithium-codegen-arm64.h"
 #include "src/hydrogen-osr.h"
+#include "src/lithium-allocator-inl.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm64/lithium-arm64.h    Fri Jun  6 00:04:56 2014 UTC
+++ /trunk/src/arm64/lithium-arm64.h    Mon Jun 23 08:21:41 2014 UTC
@@ -6,8 +6,8 @@
 #define V8_ARM64_LITHIUM_ARM64_H_

 #include "src/hydrogen.h"
-#include "src/lithium-allocator.h"
 #include "src/lithium.h"
+#include "src/lithium-allocator.h"
 #include "src/safepoint-table.h"
 #include "src/utils.h"

=======================================
--- /trunk/src/arm64/lithium-codegen-arm64.cc   Fri Jun 13 00:05:05 2014 UTC
+++ /trunk/src/arm64/lithium-codegen-arm64.cc   Mon Jun 23 08:21:41 2014 UTC
@@ -7,8 +7,8 @@
 #include "src/arm64/lithium-codegen-arm64.h"
 #include "src/arm64/lithium-gap-resolver-arm64.h"
 #include "src/code-stubs.h"
-#include "src/stub-cache.h"
 #include "src/hydrogen-osr.h"
+#include "src/stub-cache.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm64/lithium-gap-resolver-arm64.cc Wed Jun 4 00:06:13 2014 UTC +++ /trunk/src/arm64/lithium-gap-resolver-arm64.cc Mon Jun 23 08:21:41 2014 UTC
@@ -4,8 +4,8 @@

 #include "src/v8.h"

-#include "src/arm64/lithium-gap-resolver-arm64.h"
 #include "src/arm64/lithium-codegen-arm64.h"
+#include "src/arm64/lithium-gap-resolver-arm64.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm64/macro-assembler-arm64-inl.h Wed Jun 11 00:05:05 2014 UTC +++ /trunk/src/arm64/macro-assembler-arm64-inl.h Mon Jun 23 08:21:41 2014 UTC
@@ -9,10 +9,10 @@

 #include "src/globals.h"

-#include "src/arm64/assembler-arm64.h"
 #include "src/arm64/assembler-arm64-inl.h"
-#include "src/arm64/macro-assembler-arm64.h"
+#include "src/arm64/assembler-arm64.h"
 #include "src/arm64/instrument-arm64.h"
+#include "src/arm64/macro-assembler-arm64.h"


 namespace v8 {
=======================================
--- /trunk/src/arm64/regexp-macro-assembler-arm64.cc Wed Jun 18 14:15:57 2014 UTC +++ /trunk/src/arm64/regexp-macro-assembler-arm64.cc Mon Jun 23 08:21:41 2014 UTC
@@ -6,13 +6,14 @@

 #if V8_TARGET_ARCH_ARM64

+#include "src/code-stubs.h"
 #include "src/cpu-profiler.h"
-#include "src/unicode.h"
 #include "src/log.h"
-#include "src/code-stubs.h"
-#include "src/regexp-stack.h"
 #include "src/macro-assembler.h"
 #include "src/regexp-macro-assembler.h"
+#include "src/regexp-stack.h"
+#include "src/unicode.h"
+
 #include "src/arm64/regexp-macro-assembler-arm64.h"

 namespace v8 {
=======================================
--- /trunk/src/arm64/regexp-macro-assembler-arm64.h Wed Jun 4 00:06:13 2014 UTC +++ /trunk/src/arm64/regexp-macro-assembler-arm64.h Mon Jun 23 08:21:41 2014 UTC
@@ -5,9 +5,10 @@
 #ifndef V8_ARM64_REGEXP_MACRO_ASSEMBLER_ARM64_H_
 #define V8_ARM64_REGEXP_MACRO_ASSEMBLER_ARM64_H_

+#include "src/macro-assembler.h"
+
 #include "src/arm64/assembler-arm64.h"
 #include "src/arm64/assembler-arm64-inl.h"
-#include "src/macro-assembler.h"

 namespace v8 {
 namespace internal {
=======================================
--- /trunk/src/arm64/simulator-arm64.cc Fri Jun 13 00:05:05 2014 UTC
+++ /trunk/src/arm64/simulator-arm64.cc Mon Jun 23 08:21:41 2014 UTC
@@ -9,10 +9,10 @@

 #if V8_TARGET_ARCH_ARM64

-#include "src/disasm.h"
-#include "src/assembler.h"
 #include "src/arm64/decoder-arm64-inl.h"
 #include "src/arm64/simulator-arm64.h"
+#include "src/assembler.h"
+#include "src/disasm.h"
 #include "src/macro-assembler.h"

 namespace v8 {
=======================================
--- /trunk/src/arm64/simulator-arm64.h  Fri Jun 13 00:05:05 2014 UTC
+++ /trunk/src/arm64/simulator-arm64.h  Mon Jun 23 08:21:41 2014 UTC
@@ -10,14 +10,14 @@

 #include "src/v8.h"

-#include "src/globals.h"
-#include "src/utils.h"
 #include "src/allocation.h"
-#include "src/assembler.h"
 #include "src/arm64/assembler-arm64.h"
 #include "src/arm64/decoder-arm64.h"
 #include "src/arm64/disasm-arm64.h"
 #include "src/arm64/instrument-arm64.h"
+#include "src/assembler.h"
+#include "src/globals.h"
+#include "src/utils.h"

#define REGISTER_CODE_LIST(R) \ R(0) R(1) R(2) R(3) R(4) R(5) R(6) R(7) \
=======================================
--- /trunk/src/arm64/stub-cache-arm64.cc        Thu Jun 12 00:04:49 2014 UTC
+++ /trunk/src/arm64/stub-cache-arm64.cc        Mon Jun 23 08:21:41 2014 UTC
@@ -6,8 +6,8 @@

 #if V8_TARGET_ARCH_ARM64

-#include "src/ic-inl.h"
 #include "src/codegen.h"
+#include "src/ic-inl.h"
 #include "src/stub-cache.h"

 namespace v8 {
=======================================
--- /trunk/src/arm64/utils-arm64.h      Wed Jun  4 00:06:13 2014 UTC
+++ /trunk/src/arm64/utils-arm64.h      Mon Jun 23 08:21:41 2014 UTC
@@ -7,6 +7,7 @@

 #include <cmath>
 #include "src/v8.h"
+
 #include "src/arm64/constants-arm64.h"

#define REGISTER_CODE_LIST(R) \
=======================================
--- /trunk/src/assembler.cc     Fri Jun  6 00:04:56 2014 UTC
+++ /trunk/src/assembler.cc     Mon Jun 23 08:21:41 2014 UTC
@@ -57,17 +57,17 @@
 #include "src/token.h"

 #if V8_TARGET_ARCH_IA32
-#include "src/ia32/assembler-ia32-inl.h"
+#include "src/ia32/assembler-ia32-inl.h"  // NOLINT
 #elif V8_TARGET_ARCH_X64
-#include "src/x64/assembler-x64-inl.h"
+#include "src/x64/assembler-x64-inl.h"  // NOLINT
 #elif V8_TARGET_ARCH_ARM64
-#include "src/arm64/assembler-arm64-inl.h"
+#include "src/arm64/assembler-arm64-inl.h"  // NOLINT
 #elif V8_TARGET_ARCH_ARM
-#include "src/arm/assembler-arm-inl.h"
+#include "src/arm/assembler-arm-inl.h"  // NOLINT
 #elif V8_TARGET_ARCH_MIPS
-#include "src/mips/assembler-mips-inl.h"
+#include "src/mips/assembler-mips-inl.h"  // NOLINT
 #elif V8_TARGET_ARCH_X87
-#include "src/x87/assembler-x87-inl.h"
+#include "src/x87/assembler-x87-inl.h"  // NOLINT
 #else
 #error "Unknown architecture."
 #endif
@@ -75,17 +75,17 @@
 // Include native regexp-macro-assembler.
 #ifndef V8_INTERPRETED_REGEXP
 #if V8_TARGET_ARCH_IA32
-#include "src/ia32/regexp-macro-assembler-ia32.h"
+#include "src/ia32/regexp-macro-assembler-ia32.h"  // NOLINT
 #elif V8_TARGET_ARCH_X64
-#include "src/x64/regexp-macro-assembler-x64.h"
+#include "src/x64/regexp-macro-assembler-x64.h"  // NOLINT
 #elif V8_TARGET_ARCH_ARM64
-#include "src/arm64/regexp-macro-assembler-arm64.h"
+#include "src/arm64/regexp-macro-assembler-arm64.h"  // NOLINT
 #elif V8_TARGET_ARCH_ARM
-#include "src/arm/regexp-macro-assembler-arm.h"
+#include "src/arm/regexp-macro-assembler-arm.h"  // NOLINT
 #elif V8_TARGET_ARCH_MIPS
-#include "src/mips/regexp-macro-assembler-mips.h"
+#include "src/mips/regexp-macro-assembler-mips.h"  // NOLINT
 #elif V8_TARGET_ARCH_X87
-#include "src/x87/regexp-macro-assembler-x87.h"
+#include "src/x87/regexp-macro-assembler-x87.h"  // NOLINT
 #else  // Unknown architecture.
 #error "Unknown architecture."
 #endif  // Target architecture.
=======================================
***Additional files exist in this changeset.***

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to