From cee4ce39a94e105bb4f1a1b5e3df949d8e044d84 Mon Sep 17 00:00:00 2001 From: Ryan Dahl Date: Fri, 20 May 2011 19:24:37 -0700 Subject: [PATCH] Upgrade V8 to 3.1.8.16 --- deps/v8/src/objects.h | 5 +++++ deps/v8/src/top.cc | 3 ++- deps/v8/src/version.cc | 2 +- deps/v8/src/x64/assembler-x64.cc | 2 +- 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/deps/v8/src/objects.h b/deps/v8/src/objects.h index de15a7398d7fd8..406895a4e68112 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(this); return true; } + inline Failure* ToFailureUnchecked() { + ASSERT(IsFailure()); + return reinterpret_cast(this); + } inline Object* ToObjectUnchecked() { ASSERT(!IsFailure()); return reinterpret_cast(this); diff --git a/deps/v8/src/top.cc b/deps/v8/src/top.cc index 78db26a5097397..d6fcf1009b3436 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 0673517eb0e103..ccfbd18c5f71b4 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 41111a7780ab08..35c05b3ac3c152 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));