Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Dahl <ry@tinyclouds.org>2011-05-21 06:25:30 +0400
committerRyan Dahl <ry@tinyclouds.org>2011-05-21 06:25:30 +0400
commit80b0225b980ad257f5a67d521d0597d143d5f625 (patch)
tree2de1ecbb040be23a5b37641e8c708dd4b3aa0b01
parent70dd6d4ea369ccbfd6e573d9a42b5144dc23b4b3 (diff)
parentcee4ce39a94e105bb4f1a1b5e3df949d8e044d84 (diff)
Merge branch 'v8-3.1' into v0.4
-rw-r--r--deps/v8/src/objects.h5
-rw-r--r--deps/v8/src/top.cc3
-rw-r--r--deps/v8/src/version.cc2
-rw-r--r--deps/v8/src/x64/assembler-x64.cc2
4 files changed, 9 insertions, 3 deletions
diff --git a/deps/v8/src/objects.h b/deps/v8/src/objects.h
index de15a7398d7..406895a4e68 100644
--- a/deps/v8/src/objects.h
+++ b/deps/v8/src/objects.h
@@ -585,6 +585,7 @@ enum CompareResult {
class StringStream;
class ObjectVisitor;
+class Failure;
struct ValueInfo : public Malloced {
ValueInfo() : type(FIRST_TYPE), ptr(NULL), str(NULL), number(0) { }
@@ -611,6 +612,10 @@ class MaybeObject BASE_EMBEDDED {
*obj = reinterpret_cast<Object*>(this);
return true;
}
+ inline Failure* ToFailureUnchecked() {
+ ASSERT(IsFailure());
+ return reinterpret_cast<Failure*>(this);
+ }
inline Object* ToObjectUnchecked() {
ASSERT(!IsFailure());
return reinterpret_cast<Object*>(this);
diff --git a/deps/v8/src/top.cc b/deps/v8/src/top.cc
index 78db26a5097..d6fcf1009b3 100644
--- a/deps/v8/src/top.cc
+++ b/deps/v8/src/top.cc
@@ -1,4 +1,4 @@
-// Copyright 2006-2008 the V8 project authors. All rights reserved.
+// Copyright 2011 the V8 project authors. All rights reserved.
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
@@ -740,6 +740,7 @@ Failure* Top::ReThrow(MaybeObject* exception, MessageLocation* location) {
// Set the exception being re-thrown.
set_pending_exception(exception);
+ if (exception->IsFailure()) return exception->ToFailureUnchecked();
return Failure::Exception();
}
diff --git a/deps/v8/src/version.cc b/deps/v8/src/version.cc
index 0673517eb0e..ccfbd18c5f7 100644
--- a/deps/v8/src/version.cc
+++ b/deps/v8/src/version.cc
@@ -35,7 +35,7 @@
#define MAJOR_VERSION 3
#define MINOR_VERSION 1
#define BUILD_NUMBER 8
-#define PATCH_LEVEL 14
+#define PATCH_LEVEL 16
#define CANDIDATE_VERSION false
// Define SONAME to have the SCons build the put a specific SONAME into the
diff --git a/deps/v8/src/x64/assembler-x64.cc b/deps/v8/src/x64/assembler-x64.cc
index 41111a7780a..35c05b3ac3c 100644
--- a/deps/v8/src/x64/assembler-x64.cc
+++ b/deps/v8/src/x64/assembler-x64.cc
@@ -1379,7 +1379,7 @@ void Assembler::jmp(NearLabel* L) {
EnsureSpace ensure_space(this);
last_pc_ = pc_;
if (L->is_bound()) {
- const int short_size = sizeof(int8_t);
+ const int short_size = 2;
int offs = L->pos() - pc_offset();
ASSERT(offs <= 0);
ASSERT(is_int8(offs - short_size));