platform/upstream/v8.git
10 years agoCleaned up deopt reason messages a bit.
svenpanne@chromium.org [Wed, 4 Sep 2013 07:27:10 +0000 (07:27 +0000)]
Cleaned up deopt reason messages a bit.

They are now a bit more consistent, and they don't mention the name of a
flag, which will go out of sync some day. ;-)

R=machenbach@chromium.org

Review URL: https://codereview.chromium.org/23845003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16514 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoremove Isolate::Current from most files starting with 'o' through 'r'
dcarney@chromium.org [Wed, 4 Sep 2013 07:05:11 +0000 (07:05 +0000)]
remove Isolate::Current from most files starting with 'o' through 'r'

R=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23757017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16513 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoInitialize CompareOperation::combined_type to avoid crashes.
rossberg@chromium.org [Tue, 3 Sep 2013 15:17:51 +0000 (15:17 +0000)]
Initialize CompareOperation::combined_type to avoid crashes.

BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/23811003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16512 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSupport setter inlining in CountOperation.
verwaest@chromium.org [Tue, 3 Sep 2013 14:10:25 +0000 (14:10 +0000)]
Support setter inlining in CountOperation.

R=svenpanne@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23757018

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16511 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoUnify all 3 implementations of load handling.
verwaest@chromium.org [Tue, 3 Sep 2013 14:07:38 +0000 (14:07 +0000)]
Unify all 3 implementations of load handling.

R=svenpanne@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23496031

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16510 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAdd premonomorphic store ICs
verwaest@chromium.org [Tue, 3 Sep 2013 13:33:54 +0000 (13:33 +0000)]
Add premonomorphic store ICs

BUG=
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23442016

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16509 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agobuild fix for 16507
dcarney@chromium.org [Tue, 3 Sep 2013 12:33:52 +0000 (12:33 +0000)]
build fix for 16507

TBR=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23892002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16508 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoremove Isolate::Current from most files starting with 's' through 'v'
dcarney@chromium.org [Tue, 3 Sep 2013 11:54:08 +0000 (11:54 +0000)]
remove Isolate::Current from most files starting with 's' through 'v'

R=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23549011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16507 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoremove Isolate::Current from most files starting with 'f' through 'i'
dcarney@chromium.org [Tue, 3 Sep 2013 11:47:16 +0000 (11:47 +0000)]
remove Isolate::Current from most files starting with 'f' through 'i'

R=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23886002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16506 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Improve TruncateNumberToI implementation after DoubleToIStub usage (r16461).
palfia@homejinni.com [Tue, 3 Sep 2013 11:39:19 +0000 (11:39 +0000)]
MIPS: Improve TruncateNumberToI implementation after DoubleToIStub usage (r16461).

Using TruncateHeapNumberToI here simplifies the code and we get rid of ConvertToInt32 and EmitOutOfInt32RangeTruncate macro assembler instructions.

BUG=

Review URL: https://codereview.chromium.org/23444033
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16505 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoWe can't use pthread_condattr_setclock() in NaCl.
bmeurer@chromium.org [Tue, 3 Sep 2013 11:38:39 +0000 (11:38 +0000)]
We can't use pthread_condattr_setclock() in NaCl.

TEST=cctest/test-condition-variable
R=machenbach@chromium.org

Review URL: https://codereview.chromium.org/23494020

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16504 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoImprove cctest/test-condition-variable.
bmeurer@chromium.org [Tue, 3 Sep 2013 11:27:02 +0000 (11:27 +0000)]
Improve cctest/test-condition-variable.

R=machenbach@chromium.org

Review URL: https://codereview.chromium.org/23604027

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16501 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoPrepare push to trunk. Now working on version 3.21.10.
mstarzinger@chromium.org [Tue, 3 Sep 2013 11:24:43 +0000 (11:24 +0000)]
Prepare push to trunk.  Now working on version 3.21.10.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/23530013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16500 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoTemporarily skip escape analysis when compiling for OSR.
mstarzinger@chromium.org [Tue, 3 Sep 2013 10:58:07 +0000 (10:58 +0000)]
Temporarily skip escape analysis when compiling for OSR.

R=jkummerow@chromium.org
TEST=mjsunit/compiler/escape-analysis --stress-compaction

Review URL: https://codereview.chromium.org/23480028

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16499 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: thread isolate for files starting with 'b' and 'c'.
palfia@homejinni.com [Tue, 3 Sep 2013 10:11:10 +0000 (10:11 +0000)]
MIPS: thread isolate for files starting with 'b' and 'c'.

Port r16489 (bde75fe)

BUG=

Review URL: https://codereview.chromium.org/23814003
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16498 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMake sure the fatal OOM handler never returns.
mstarzinger@chromium.org [Tue, 3 Sep 2013 09:45:55 +0000 (09:45 +0000)]
Make sure the fatal OOM handler never returns.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/23731004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16497 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMove global V8::IsDead() into the Isolate.
mstarzinger@chromium.org [Tue, 3 Sep 2013 09:35:26 +0000 (09:35 +0000)]
Move global V8::IsDead() into the Isolate.

R=yangguo@chromium.org
BUG=v8:2744

Review URL: https://codereview.chromium.org/23549010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16496 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix interceptor handling in crankshaft.
verwaest@chromium.org [Tue, 3 Sep 2013 08:55:52 +0000 (08:55 +0000)]
Fix interceptor handling in crankshaft.

R=dcarney@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23614011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16495 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMove global V8::UseCrankshaft() into the Isolate.
mstarzinger@chromium.org [Tue, 3 Sep 2013 08:49:44 +0000 (08:49 +0000)]
Move global V8::UseCrankshaft() into the Isolate.

R=jkummerow@chromium.org
BUG=v8:2744

Review URL: https://codereview.chromium.org/23441029

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16494 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoDeprecate Persistent functions which were marked to be deprecated.
svenpanne@chromium.org [Tue, 3 Sep 2013 07:34:34 +0000 (07:34 +0000)]
Deprecate Persistent functions which were marked to be deprecated.

BUG=
R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/23707009

Patch from Marja Hölttä <marja@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16493 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoImport ConditionVariable class.
bmeurer@chromium.org [Tue, 3 Sep 2013 07:30:01 +0000 (07:30 +0000)]
Import ConditionVariable class.

Condition variables are synchronization primitives that can be used
to block one or more threads while waiting for condition to become
true.

Right now we have only semaphores, mutexes and atomic operations for
synchronization, which results in quite complex solutions where an
implementation using condition variables and mutexes would be straight
forward.

There's also a performance benefit to condition variables and mutexes
vs semaphores, especially on Windows, where semaphores are kernel
objects, while mutexes are implemented as fast critical sections,
it CAN be beneficial performance-wise to use condition variables
instead of semaphores.

R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/23548007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16492 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agobuild fix for 16490
dcarney@chromium.org [Tue, 3 Sep 2013 07:19:32 +0000 (07:19 +0000)]
build fix for 16490

TBR=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23835003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16491 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoremove Isolate::Current from most files starting with 'd' and 'e'
dcarney@chromium.org [Tue, 3 Sep 2013 06:59:01 +0000 (06:59 +0000)]
remove Isolate::Current from most files starting with 'd' and 'e'

R=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23606012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16490 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agothread isolate for files starting with 'b' and 'c'
dcarney@chromium.org [Tue, 3 Sep 2013 06:57:16 +0000 (06:57 +0000)]
thread isolate for files starting with 'b' and 'c'

R=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23729006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16489 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRemove obsolete global V8::IsRunning() predicate.
mstarzinger@chromium.org [Mon, 2 Sep 2013 17:06:08 +0000 (17:06 +0000)]
Remove obsolete global V8::IsRunning() predicate.

R=yangguo@chromium.org
BUG=v8:2744

Review URL: https://codereview.chromium.org/23597013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16488 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoEnable escape analysis for Hydrogen.
mstarzinger@chromium.org [Mon, 2 Sep 2013 16:53:39 +0000 (16:53 +0000)]
Enable escape analysis for Hydrogen.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/23629016

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16485 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix OSR to ignore phis without merge index in loop entry.
mstarzinger@chromium.org [Mon, 2 Sep 2013 16:51:44 +0000 (16:51 +0000)]
Fix OSR to ignore phis without merge index in loop entry.

This fixes a corner case introduced by escape analysis where phis are
introduced in OSR loop entry blocks that don't have a merge index and
hence cannot contain OSR values.

R=titzer@chromium.org
TEST=mjsunit/compiler/escape-analysis

Review URL: https://codereview.chromium.org/23503025

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16484 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAllow uncacheable identifiers to go generic.
verwaest@chromium.org [Mon, 2 Sep 2013 16:32:11 +0000 (16:32 +0000)]
Allow uncacheable identifiers to go generic.

BUG=v8:2867
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23453019

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16481 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix ChangeLog entry for 3.20.15
jkummerow@chromium.org [Mon, 2 Sep 2013 13:42:20 +0000 (13:42 +0000)]
Fix ChangeLog entry for 3.20.15

BUG=v8:2845
R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/23871002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16476 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoBump MaxRegularSpaceAllocationSize to InitialSemiSpaceSize() * 4/5
jkummerow@chromium.org [Mon, 2 Sep 2013 13:36:49 +0000 (13:36 +0000)]
Bump MaxRegularSpaceAllocationSize to InitialSemiSpaceSize() * 4/5

to allow allocation of large packed arrays in paged spaces.

BUG=v8:2790
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/23604023

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16475 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix Mac llvm-gcc42 build after commit r16473.
bmeurer@chromium.org [Mon, 2 Sep 2013 12:36:08 +0000 (12:36 +0000)]
Fix Mac llvm-gcc42 build after commit r16473.

TBR=machenbach@chromium.org

Review URL: https://codereview.chromium.org/23437020

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16474 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoCleanup Semaphore class.
bmeurer@chromium.org [Mon, 2 Sep 2013 12:26:06 +0000 (12:26 +0000)]
Cleanup Semaphore class.

Drop the previous Semaphore class from platform files.

Add new Semaphore class using the new TimeDelta class for
the WaitFor() operation. Consistently assert correct behaviour
for the different implementations.

Improve test coverage of the Semaphore class.

R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/23748003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16473 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoIn reporting step-in positions be more accurate with a position the debugger paused at
prybin@chromium.org [Mon, 2 Sep 2013 12:24:41 +0000 (12:24 +0000)]
In reporting step-in positions be more accurate with a position the debugger paused at

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/23264015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16472 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRepresentation of interceptor / handler properties are tagged.
verwaest@chromium.org [Mon, 2 Sep 2013 12:16:02 +0000 (12:16 +0000)]
Representation of interceptor / handler properties are tagged.
Otherwise store ICs will never be initialized, due to lookup->CanHoldValue(value);

BUG=chromium:256330
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23533012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16471 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agorevert thread isolate in PreallocatedStorageAllocationPolicy
dcarney@chromium.org [Mon, 2 Sep 2013 11:39:23 +0000 (11:39 +0000)]
revert thread isolate in PreallocatedStorageAllocationPolicy

This reverts 16467 for breaking windows build

TBR=svenpanne@chromium.org

BUG=

Review URL: https://codereview.chromium.org/23824005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16468 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agothread isolate in PreallocatedStorageAllocationPolicy
dcarney@chromium.org [Mon, 2 Sep 2013 11:20:42 +0000 (11:20 +0000)]
thread isolate in PreallocatedStorageAllocationPolicy

R=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23479015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16467 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoPrepare push to trunk. Now working on version 3.21.9.
jkummerow@chromium.org [Mon, 2 Sep 2013 11:01:06 +0000 (11:01 +0000)]
Prepare push to trunk.  Now working on version 3.21.9.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/23620015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16466 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRemove OptimizedCodeEntry *sigh*.
titzer@chromium.org [Mon, 2 Sep 2013 10:35:34 +0000 (10:35 +0000)]
Remove OptimizedCodeEntry *sigh*.

BUG=
R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/23584004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16465 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMove ToI conversions to the MacroAssembler
olivf@chromium.org [Mon, 2 Sep 2013 09:30:54 +0000 (09:30 +0000)]
Move ToI conversions to the MacroAssembler

+ Replace DeferredTaggedToINoSSE2 by DoubleToIStub and a fpu version.

+ Prevent truncating TaggedToI from bailing out.

BUG=
R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/22290005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16464 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoremove Isolate::Current from most files starting with 'a'
dcarney@chromium.org [Mon, 2 Sep 2013 09:27:27 +0000 (09:27 +0000)]
remove Isolate::Current from most files starting with 'a'

R=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23859002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16463 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agothread isolate in accessors.cc
dcarney@chromium.org [Mon, 2 Sep 2013 09:25:20 +0000 (09:25 +0000)]
thread isolate in accessors.cc

R=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23824002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16462 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Support for DoubleToIStub (truncating).
gergely@homejinni.com [Sun, 1 Sep 2013 17:22:08 +0000 (17:22 +0000)]
MIPS: Support for DoubleToIStub (truncating).

Port r16322 (8a03070)

Original commit message:
Added support for truncating DoubleToIStub and reorganize the macro-assembler
dToI operations to do the fast-path inline and the slow path by calling the
stub.

BUG=
R=gergely@homejinni.com

Review URL: https://codereview.chromium.org/23694014

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16461 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix definition of V8_LIBRT_NOT_AVAILABLE in v8.gyp since we test for it using #elif...
bmeurer@chromium.org [Sun, 1 Sep 2013 15:03:36 +0000 (15:03 +0000)]
Fix definition of V8_LIBRT_NOT_AVAILABLE in v8.gyp since we test for it using #elif in time.cc.

TBR=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/23718004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16460 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAdd scriptId to StackTrace frames.
yurys@chromium.org [Fri, 30 Aug 2013 14:54:59 +0000 (14:54 +0000)]
Add scriptId to StackTrace frames.

BUG=v8:2865
R=verwaest@chromium.org, yurys@chromium.org

Review URL: https://codereview.chromium.org/23536007

Patch from Vsevolod Vlasov <vsevik@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16459 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoWork-around missing librt for cross-compiling Chrome for Android in AOSP.
bmeurer@chromium.org [Fri, 30 Aug 2013 14:10:13 +0000 (14:10 +0000)]
Work-around missing librt for cross-compiling Chrome for Android in AOSP.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/23819005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16456 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoHandlify JSObject::SetAccessor method.
mstarzinger@chromium.org [Fri, 30 Aug 2013 14:08:15 +0000 (14:08 +0000)]
Handlify JSObject::SetAccessor method.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/23819003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16455 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoHandlify JSObject::SetIdentityHash method.
mstarzinger@chromium.org [Fri, 30 Aug 2013 13:42:16 +0000 (13:42 +0000)]
Handlify JSObject::SetIdentityHash method.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/23495011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16454 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoHandlify JSObject::DeleteHiddenProperty method.
mstarzinger@chromium.org [Fri, 30 Aug 2013 13:28:52 +0000 (13:28 +0000)]
Handlify JSObject::DeleteHiddenProperty method.

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/23600011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16453 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoHandlify JSProxy::Fix
verwaest@chromium.org [Fri, 30 Aug 2013 12:52:25 +0000 (12:52 +0000)]
Handlify JSProxy::Fix

R=mstarzinger@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23707007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16452 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix typo breaking Mac build after commit r16450.
bmeurer@chromium.org [Fri, 30 Aug 2013 12:30:09 +0000 (12:30 +0000)]
Fix typo breaking Mac build after commit r16450.

TBR=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/23522010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16451 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoImprove feature detection.
bmeurer@chromium.org [Fri, 30 Aug 2013 12:09:50 +0000 (12:09 +0000)]
Improve feature detection.

Add V8_GLIBC_PREREQ() macro to test the version of the GNU C library.
Make V8_GNUC_PREREQ() work for compilers that masquerade as GCC (you
can always use V8_CC_* to test for a specific one if you need to).
Add V8_LIBC_* to detect the C library in use.

R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/23717009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16450 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoReland "Fix missing x87 tracking for deferred code."
olivf@chromium.org [Fri, 30 Aug 2013 11:58:50 +0000 (11:58 +0000)]
Reland "Fix missing x87 tracking for deferred code."

Fixed mac build.

BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/23490022

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16449 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoHandlify JSReceiver::SetElement method.
mstarzinger@chromium.org [Fri, 30 Aug 2013 11:44:39 +0000 (11:44 +0000)]
Handlify JSReceiver::SetElement method.

R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/23541006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16448 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoPrepare push to trunk. Now working on version 3.21.8.
jkummerow@chromium.org [Fri, 30 Aug 2013 11:31:06 +0000 (11:31 +0000)]
Prepare push to trunk.  Now working on version 3.21.8.

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/23460012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16445 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoTurn interrupt and stack check into builtins.
yangguo@chromium.org [Fri, 30 Aug 2013 11:24:58 +0000 (11:24 +0000)]
Turn interrupt and stack check into builtins.

R=jkummerow@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23480013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16444 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMake VisitStatements() consistent among all AstVisitor implementations
jkummerow@chromium.org [Fri, 30 Aug 2013 10:51:37 +0000 (10:51 +0000)]
Make VisitStatements() consistent among all AstVisitor implementations

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/23441018

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16443 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agofix eternal casts
dcarney@chromium.org [Fri, 30 Aug 2013 09:03:27 +0000 (09:03 +0000)]
fix eternal casts

R=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23532017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16442 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "ConstantPoolSizeAt() should return number of Instructions instead, otherwise...
bmeurer@chromium.org [Fri, 30 Aug 2013 08:16:04 +0000 (08:16 +0000)]
Revert "ConstantPoolSizeAt() should return number of Instructions instead, otherwise, some of the code will be treated as constant pool when printing code in ARM disassembler."

This reverts commit r16419 for breaking the ARM simulator tests.

TEST=mjsunit/regress/regress-2624
R=machenbach@chromium.org

Review URL: https://codereview.chromium.org/23531013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16441 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAssert external strings in external string table. Remove TODOs.
yangguo@chromium.org [Fri, 30 Aug 2013 07:48:04 +0000 (07:48 +0000)]
Assert external strings in external string table. Remove TODOs.

R=hpayer@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23567002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16440 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSimplify object printer declarations.
mstarzinger@chromium.org [Fri, 30 Aug 2013 07:41:24 +0000 (07:41 +0000)]
Simplify object printer declarations.

R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/23619010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16439 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoHandlify JSObject::DeleteElement method.
mstarzinger@chromium.org [Thu, 29 Aug 2013 18:01:45 +0000 (18:01 +0000)]
Handlify JSObject::DeleteElement method.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/23766003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16438 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMake implicit HandleScope of AssertNoContextChange explicit.
mstarzinger@chromium.org [Thu, 29 Aug 2013 17:13:57 +0000 (17:13 +0000)]
Make implicit HandleScope of AssertNoContextChange explicit.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/23694011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16437 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "Fix missing x87 tracking for deferred code."
olivf@chromium.org [Thu, 29 Aug 2013 16:30:47 +0000 (16:30 +0000)]
Revert "Fix missing x87 tracking for deferred code."

Mac builder has some problems compiling.

BUG=
R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/23496020

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16434 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix missing x87 tracking for deferred code.
olivf@chromium.org [Thu, 29 Aug 2013 15:59:40 +0000 (15:59 +0000)]
Fix missing x87 tracking for deferred code.

When compiling deferred code we have to remember the corresponding stack state and ensure that the deferred code does not manipulate the order of elements.

BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/23135018

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16433 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoturn on global handle zapping
dcarney@chromium.org [Thu, 29 Aug 2013 15:03:37 +0000 (15:03 +0000)]
turn on global handle zapping

R=mstarzinger@chromium.org
BUG=

Review URL: https://codereview.chromium.org/22909051

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16432 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAlways visit branches during HGraph building
jkummerow@chromium.org [Thu, 29 Aug 2013 14:55:45 +0000 (14:55 +0000)]
Always visit branches during HGraph building

even if constant values indicate that they are unreachable.

BUG=chromium:280333
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/23623009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16431 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoDo not start sampler thread when CpuProfiler is active
yurys@chromium.org [Thu, 29 Aug 2013 14:03:38 +0000 (14:03 +0000)]
Do not start sampler thread when CpuProfiler is active

Now that CpuProfiler sends does sampling on the profile event processing thread there is no need to launch sampler thread. The latter is used only for --prof profiler.

BUG=v8:2814
R=bmeurer@chromium.org, svenpanne@chromium.org

Review URL: https://codereview.chromium.org/23011029

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16430 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoImplement materialization support for JSArray types.
mstarzinger@chromium.org [Thu, 29 Aug 2013 13:56:08 +0000 (13:56 +0000)]
Implement materialization support for JSArray types.

R=hpayer@chromium.org
TEST=mjsunit/regress/regress-crbug-150729 (+FastLiteral)

Review URL: https://codereview.chromium.org/23502004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16429 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSupport higher CPU profiler sampling rate on Windows
yurys@chromium.org [Thu, 29 Aug 2013 13:44:25 +0000 (13:44 +0000)]
Support higher CPU profiler sampling rate on Windows

This change moves sampling from SamplerThread to the profiler events processing thread and allows to configure sampling interval on Windows.

Custom tick counter is used instead of OS::Ticks as the latter has maximum presicion of 1ms while we need 100us. QueryPerformanceCounter is used to retrieve high-precision time as described in http://msdn.microsoft.com/en-us/library/ee417693(VS.85).aspx

BUG=v8:2814
R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/23271003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16428 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRefactor interrupt check patching for OSR.
yangguo@chromium.org [Thu, 29 Aug 2013 13:06:04 +0000 (13:06 +0000)]
Refactor interrupt check patching for OSR.

This is to prepare for speculative concurrent OSR. I'm planning to add
another builtin to patch to, to indicate a concurrent OSR.

R=titzer@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23608004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16425 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSimplified BuildFastLiteral by eliminating manual allocation folding.
hpayer@chromium.org [Thu, 29 Aug 2013 12:06:45 +0000 (12:06 +0000)]
Simplified BuildFastLiteral by eliminating manual allocation folding.

BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/23030002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16422 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoDisabling escape analysis.
hpayer@chromium.org [Thu, 29 Aug 2013 11:58:08 +0000 (11:58 +0000)]
Disabling escape analysis.

BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/23455012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16421 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix escape analysis for redefining operators.
mstarzinger@chromium.org [Thu, 29 Aug 2013 11:55:31 +0000 (11:55 +0000)]
Fix escape analysis for redefining operators.

This recognizes escape paths that flow through informative definitions
as an escaping use. This only applies to HCheckMaps so far.

R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/23514009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16420 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoConstantPoolSizeAt() should return number of Instructions instead, otherwise, some...
bmeurer@chromium.org [Thu, 29 Aug 2013 11:49:46 +0000 (11:49 +0000)]
ConstantPoolSizeAt() should return number of Instructions instead, otherwise, some of the code will be treated as constant pool when printing code in ARM disassembler.

BUG=none

TEST=none
R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/23654005

Patch from Bangfu Tao <bangfu.tao@samsung.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16419 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoConsolidate SMI functions into one area for X64
haitao.feng@intel.com [Thu, 29 Aug 2013 11:41:14 +0000 (11:41 +0000)]
Consolidate SMI functions into one area for X64

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/23665002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16418 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRemove deprecated profiler API
yurys@chromium.org [Thu, 29 Aug 2013 10:42:55 +0000 (10:42 +0000)]
Remove deprecated profiler API

This change removes --prof-lazy command line flag that was introduced for the old CPU profiler implementation in Chrome DevTools. DevTools now use profiler API defined in v8-profiler.h

This change also removes methods for pausing resuming --prof profiler. These methods were deprecated in v.3.20 (https://code.google.com/p/v8/source/browse/branches/3.20/include/v8.h#4629)

After this change the profiler will always start if --prof option is passed and can be stopped either in the tests or if write to log file fails.

BUG=None
R=bmeurer@chromium.org, loislo@chromium.org

Review URL: https://codereview.chromium.org/23478010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16417 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoCleanup Mutex and related classes.
bmeurer@chromium.org [Thu, 29 Aug 2013 09:58:30 +0000 (09:58 +0000)]
Cleanup Mutex and related classes.

Drop the previous Mutex and ScopedLock classes from platform files.

Add new Mutex, RecursiveMutex and LockGuard classes, which are
designed after their C++11 counterparts, so that at some point
we can simply drop our custom code and switch to the C++11
classes. We distinguish regular and recursive mutexes, as the
latter don't work well with condition variables, which will be
introduced by a followup CL.

R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/23625003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16416 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoUse V8_OS_* variables for platform detection in the sampler code
yurys@chromium.org [Thu, 29 Aug 2013 09:56:30 +0000 (09:56 +0000)]
Use V8_OS_* variables for platform detection in the sampler code

BUG=None
R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/23591006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16415 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix assert triggered by constant folding.
olivf@chromium.org [Thu, 29 Aug 2013 09:54:52 +0000 (09:54 +0000)]
Fix assert triggered by constant folding.

Add<> asserts the return type, which might not be an HAdd in this case
because of constant folding.

BUG=
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/23754002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16414 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoReland^2 "Add Chromium-style TimeDelta, Time and TimeTicks classes, and a new Elapsed...
bmeurer@chromium.org [Thu, 29 Aug 2013 09:15:13 +0000 (09:15 +0000)]
Reland^2 "Add Chromium-style TimeDelta, Time and TimeTicks classes, and a new ElapsedTimer class."

These classes are meant to replace OS::Ticks() and OS::TimeCurrentMillis(),
which are broken in several ways. The ElapsedTimer class implements a
stopwatch using TimeTicks::HighResNow() for high resolution, monotonic
timing.

Also fix the CpuProfile::GetStartTime() and CpuProfile::GetEndTime()
methods to actually return the time relative to the unix epoch as stated
in the documentation (previously that was relative to some arbitrary
point in time, i.e. boot time).

The previous Windows issues have been resolved, and we now use GetTickCount64()
on Windows Vista and later, falling back to timeGetTime() with rollover
protection for earlier Windows versions.

BUG=v8:2853
R=machenbach@chromium.org, yurys@chromium.org

Review URL: https://codereview.chromium.org/23490015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16413 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoEnable escape analysis for Hydrogen.
mstarzinger@chromium.org [Thu, 29 Aug 2013 08:39:59 +0000 (08:39 +0000)]
Enable escape analysis for Hydrogen.

R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/23475006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16412 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoPrepare push to trunk. Now working on version 3.21.7.
mstarzinger@chromium.org [Thu, 29 Aug 2013 08:09:40 +0000 (08:09 +0000)]
Prepare push to trunk.  Now working on version 3.21.7.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/23583010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16409 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Sync structure to r14382.
plind44@gmail.com [Thu, 29 Aug 2013 03:29:24 +0000 (03:29 +0000)]
MIPS: Sync structure to r14382.

Port r14382 (5ef0d87)

Original commit message:
ARM: VFP cleanup now that VFP2 is the baseline

BUG=none
TEST=none
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/23534011

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16408 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAdd OptimizedCodeEntry as a new heap object type. An optimized code entry represents...
titzer@chromium.org [Wed, 28 Aug 2013 16:48:40 +0000 (16:48 +0000)]
Add OptimizedCodeEntry as a new heap object type. An optimized code entry represents an association between the native context, a function, optimized code, and the literals. Such associations are needed by the deoptimizer and optimized code cache to efficiently find related optimized code and functions for a given context or shared function info.

BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/23691002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16407 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoDelete HAbnormalExit. It does more harm than good.
jkummerow@chromium.org [Wed, 28 Aug 2013 15:00:30 +0000 (15:00 +0000)]
Delete HAbnormalExit. It does more harm than good.

BUG=v8:2843
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/23462007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16406 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "Cross-compiling from Linux to Android requires -lrt for the host toolset...
bmeurer@chromium.org [Wed, 28 Aug 2013 14:32:08 +0000 (14:32 +0000)]
Revert "Cross-compiling from Linux to Android requires -lrt for the host toolset.", "Fix Visual Studio debug build after r16398." and "Reland "Add Chromium-style TimeDelta, Time and TimeTicks classes, and a new ElapsedTimer class.""

This reverts commit r16398, r16399 and r16402 for breaking the Windows
WebKit tests. Will reland fix which doesn't use High Resolution Timer
for ElapsedTimer (we suspect QueryPerformanceCounter overhead is
responsible for test breakage).

TBR=machenbach@chromium.org

Review URL: https://codereview.chromium.org/23710002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16405 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRemove obsolete Oddball setters in FixedArray.
mstarzinger@chromium.org [Wed, 28 Aug 2013 14:26:22 +0000 (14:26 +0000)]
Remove obsolete Oddball setters in FixedArray.

R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/23705002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16404 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoImplement proper map checks of captured objects.
mstarzinger@chromium.org [Wed, 28 Aug 2013 14:16:57 +0000 (14:16 +0000)]
Implement proper map checks of captured objects.

R=verwaest@chromium.org
TEST=mjsunit/compiler/escape-analysis

Review URL: https://codereview.chromium.org/23697002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16403 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoCross-compiling from Linux to Android requires -lrt for the host toolset.
bmeurer@chromium.org [Wed, 28 Aug 2013 14:11:07 +0000 (14:11 +0000)]
Cross-compiling from Linux to Android requires -lrt for the host toolset.

R=yurys@chromium.org

Review URL: https://codereview.chromium.org/23656004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16402 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix Visual Studio debug build after r16398.
bmeurer@chromium.org [Wed, 28 Aug 2013 13:36:28 +0000 (13:36 +0000)]
Fix Visual Studio debug build after r16398.

TBR=machenbach@chromium.org

Review URL: https://codereview.chromium.org/23624006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16399 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoReland "Add Chromium-style TimeDelta, Time and TimeTicks classes, and a new ElapsedTi...
bmeurer@chromium.org [Wed, 28 Aug 2013 13:03:06 +0000 (13:03 +0000)]
Reland "Add Chromium-style TimeDelta, Time and TimeTicks classes, and a new ElapsedTimer class."

These classes are meant to replace OS::Ticks() and OS::TimeCurrentMillis(),
which are broken in several ways. The ElapsedTimer class implements a
stopwatch using TimeTicks::HighResNow() for high resolution, monotonic
timing.

Also fix the CpuProfile::GetStartTime() and CpuProfile::GetEndTime()
methods to actually return the time relative to the unix epoch as stated
in the documentation (previously that was relative to some arbitrary
point in time, i.e. boot time).

BUG=v8:2853
R=machenbach@chromium.org

Review URL: https://codereview.chromium.org/23469013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16398 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoReuse AddFastPropertyUsingMap in AddFastProperty
verwaest@chromium.org [Wed, 28 Aug 2013 13:01:53 +0000 (13:01 +0000)]
Reuse AddFastPropertyUsingMap in AddFastProperty

R=bmeurer@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23465008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16397 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMerge verbatim descriptors from other (the descriptor of the map being updated) rathe...
verwaest@chromium.org [Wed, 28 Aug 2013 12:37:14 +0000 (12:37 +0000)]
Merge verbatim descriptors from other (the descriptor of the map being updated) rather than this (descriptors of the most updated map found in the transition tree).

BUG=v8:2863
R=svenpanne@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23676003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16396 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSimplify logic by extracting local lookup before the switch.
verwaest@chromium.org [Wed, 28 Aug 2013 12:36:46 +0000 (12:36 +0000)]
Simplify logic by extracting local lookup before the switch.

R=rossberg@chromium.org

Review URL: https://chromiumcodereview.appspot.com/22901034

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16395 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix lost store side effects with escape analysis.
mstarzinger@chromium.org [Wed, 28 Aug 2013 12:36:32 +0000 (12:36 +0000)]
Fix lost store side effects with escape analysis.

This preserves side effects from stores in HCapturedObject markers so
that simulates following these markers are not merged away.

R=titzer@chromium.org
TEST=mjsunit/compiler/escape-analysis --deopt-every-n-times [3,6,9]

Review URL: https://codereview.chromium.org/23554003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16394 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoInsert allocation memento clear instructions after the dominating allocate instruction.
hpayer@chromium.org [Wed, 28 Aug 2013 12:35:07 +0000 (12:35 +0000)]
Insert allocation memento clear instructions after the dominating allocate instruction.

BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/23672004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16393 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoReplace OS::NumberOfCores() with CPU::NumberOfProcessorsOnline().
bmeurer@chromium.org [Wed, 28 Aug 2013 12:32:56 +0000 (12:32 +0000)]
Replace OS::NumberOfCores() with CPU::NumberOfProcessorsOnline().

The name NumberOfCores is misleading, as it does not return the
actual number of cores. While NumberOfProcessorsOnline is also
not a great name, it's at least consistent with the operating
system terminology.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/23655004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16392 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "Add Chromium-style TimeDelta, Time and TimeTicks classes, and a new ElapsedTi...
bmeurer@chromium.org [Wed, 28 Aug 2013 11:38:20 +0000 (11:38 +0000)]
Revert "Add Chromium-style TimeDelta, Time and TimeTicks classes, and a new ElapsedTimer class."

This reverts commit r16390 for breaking the Windows build. Will
reland fixed version, which also uses the platform/ folder instead
of time/ folder as per offline discussion.

TBR=machenbach@chromium.org

Review URL: https://codereview.chromium.org/23690003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16391 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAdd Chromium-style TimeDelta, Time and TimeTicks classes, and a new ElapsedTimer...
bmeurer@chromium.org [Wed, 28 Aug 2013 11:06:11 +0000 (11:06 +0000)]
Add Chromium-style TimeDelta, Time and TimeTicks classes, and a new ElapsedTimer class.

These classes are meant to replace OS::Ticks() and OS::TimeCurrentMillis(),
which are broken in several ways. The ElapsedTimer class implements a
stopwatch using TimeTicks::HighResNow() for high resolution, monotonic
timing.

Also fix the CpuProfile::GetStartTime() and CpuProfile::GetEndTime()
methods to actually return the time relative to the unix epoch as stated
in the documentation (previously that was relative to some arbitrary
point in time, i.e. boot time).

BUG=v8:2853
R=machenbach@chromium.org, yurys@chromium.org

Committed: https://code.google.com/p/v8/source/detail?r=16388

Review URL: https://codereview.chromium.org/23295034

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16390 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "Add Chromium-style TimeDelta, Time and TimeTicks classes, and a new ElapsedTi...
bmeurer@chromium.org [Wed, 28 Aug 2013 11:04:40 +0000 (11:04 +0000)]
Revert "Add Chromium-style TimeDelta, Time and TimeTicks classes, and a new ElapsedTimer class."

This reverts commit r16388 for breaking build due to merge typo,
will reland with typo fixed.

TBR=machenbach@chromium.org

Review URL: https://codereview.chromium.org/23698002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16389 ce2b1a6d-e550-0410-aec6-3dcde31c8c00