platform/upstream/v8.git
10 years agoRemove Apple-only GCC_WARN_ABOUT_MISSING_NEWLINE
jkummerow@chromium.org [Wed, 2 Apr 2014 12:55:22 +0000 (12:55 +0000)]
Remove Apple-only GCC_WARN_ABOUT_MISSING_NEWLINE

R=jkummerow@chromium.org

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

Patch from Ben Noordhuis <ben@strongloop.com>.

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

10 years agoMake stray 'return' an early error
rossberg@chromium.org [Wed, 2 Apr 2014 12:38:01 +0000 (12:38 +0000)]
Make stray 'return' an early error

As required by the spec, and implemented by other browsers.

(Plus minor clean-up for redeclaration TypeErrors.)

R=marja@chromium.org
BUG=
LOG=Y

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

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

10 years agoFix HGraphBuilder::BuildAddStringLengths
jkummerow@chromium.org [Wed, 2 Apr 2014 12:24:42 +0000 (12:24 +0000)]
Fix HGraphBuilder::BuildAddStringLengths

length == String::kMaxLength is fine and should not bail out.

BUG=chromium:357052
LOG=n
R=yangguo@chromium.org

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

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

10 years agoRemove V8_INLINE from v8-util.h.
vogelheim@chromium.org [Wed, 2 Apr 2014 12:07:10 +0000 (12:07 +0000)]
Remove V8_INLINE from v8-util.h.

(These have been causing compilation problems on some
platforms. For VS, V8_INLINE turns into 'force inline',
which will then cause a problem when the compiler won't
actually inline. Search for "C4714 warning" for details.)

BUG=
R=jochen@chromium.org

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

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

10 years agoCheck that environments assigned via AssignEnvironment are actually used.
svenpanne@chromium.org [Wed, 2 Apr 2014 11:30:13 +0000 (11:30 +0000)]
Check that environments assigned via AssignEnvironment are actually used.

Removed some temporary marker comments on the way.

R=bmeurer@chromium.org

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

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

10 years agoShow references from weak containers as weak in heap snapshots.
alph@chromium.org [Wed, 2 Apr 2014 11:19:53 +0000 (11:19 +0000)]
Show references from weak containers as weak in heap snapshots.

BUG=356590
LOG=Y
R=ulan@chromium.org, yurys@chromium.org

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

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

10 years agoMake invalid LHSs that are calls late errors
rossberg@chromium.org [Wed, 2 Apr 2014 11:03:05 +0000 (11:03 +0000)]
Make invalid LHSs that are calls late errors

Necessary for web legacy compatibility.

Also fold in additional strict mode checks into LHS checks.
Minor constness clean-ups on the way.

R=marja@chromium.org
BUG=chromium:358346
LOG=Y

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

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

10 years agoUse the correct natives in messages.js
yangguo@chromium.org [Wed, 2 Apr 2014 08:21:37 +0000 (08:21 +0000)]
Use the correct natives in messages.js

R=dslomov@chromium.org

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

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

10 years agoLazily initialize the target map list in IC.
ulan@chromium.org [Wed, 2 Apr 2014 07:59:54 +0000 (07:59 +0000)]
Lazily initialize the target map list in IC.

This makes sure that we keep the target map list alive in the handle scope during IC computation.

BUG=
R=verwaest@chromium.org

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

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

10 years agoFix auto-roll configuration.
machenbach@chromium.org [Wed, 2 Apr 2014 07:13:17 +0000 (07:13 +0000)]
Fix auto-roll configuration.

TBR=jarin@chromium.org
BUG=

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

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

10 years agoAdd execution permission to auto-roll script.
machenbach@chromium.org [Wed, 2 Apr 2014 07:04:53 +0000 (07:04 +0000)]
Add execution permission to auto-roll script.

TBR=jarin@chromium.org
BUG=

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

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

10 years agoAdd unhandlified versions of Of() and NowOf().
bmeurer@chromium.org [Wed, 2 Apr 2014 07:01:43 +0000 (07:01 +0000)]
Add unhandlified versions of Of() and NowOf().

R=svenpanne@chromium.org

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

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

10 years agoImplement auto-roll script.
machenbach@chromium.org [Wed, 2 Apr 2014 06:59:25 +0000 (06:59 +0000)]
Implement auto-roll script.

This script will (1) check if there is an active roll on rietveld (2) check if there is a trunk revision ready to be rolled and (3) call the chromium_roll script, creating a roll CL. The script will be called regularly through a cron job.

BUG=
R=jarin@chromium.org

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

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

10 years agoIntroduce ReadPositionFromRegister in x64 Regexp Macro Assembler
haitao.feng@intel.com [Wed, 2 Apr 2014 03:01:11 +0000 (03:01 +0000)]
Introduce ReadPositionFromRegister in x64 Regexp Macro Assembler

R=verwaest@chromium.org

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

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

10 years agoAdjust various constants for x32 port
haitao.feng@intel.com [Wed, 2 Apr 2014 02:34:50 +0000 (02:34 +0000)]
Adjust various constants for x32 port

R=verwaest@chromium.org

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

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

10 years agoMIPS: Consistently use a separate Lithium instruction for flooring division.
palfia@homejinni.com [Tue, 1 Apr 2014 23:43:47 +0000 (23:43 +0000)]
MIPS: Consistently use a separate Lithium instruction for flooring division.

Port r20395 (5b802048)

Original commit message:
Previously we tried to share some code on by a slightly confusing re-use
of LDivI for a (general) flooring division. Now we cleanly separate
concerns, just like for the rest of the division-like operations. Note
that ARM64 already did it this way.

If we really want to save some code, we can introduce some macro
assembler instructions and/or helper functions in the code generator in
a future CL, but we should really try to avoid being "clever" to save
just a few lines of trivial code. Effort != complexity. :-)

Renamed some related Lithium operands on the way for more consistency.

BUG=
R=plind44@gmail.com

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

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

10 years agoMIPS: Only assign environments when they are actually needed.
palfia@homejinni.com [Tue, 1 Apr 2014 23:42:55 +0000 (23:42 +0000)]
MIPS: Only assign environments when they are actually needed.

Port r20376 (2c4baaf5)

BUG=
R=plind44@gmail.com

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

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

10 years agoSkip cctest/test-lockers/MultithreadedParallelIsolates on windows
jochen@chromium.org [Tue, 1 Apr 2014 19:20:31 +0000 (19:20 +0000)]
Skip cctest/test-lockers/MultithreadedParallelIsolates on windows

It's already marked as FAIL, PASS everywhere anyways.

BUG=v8:3215
LOG=n
TBR=machenbach@chromium.org

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

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

10 years agoRemove V8_INLINE to prevent C4714 warning under Win64.
jochen@chromium.org [Tue, 1 Apr 2014 18:04:06 +0000 (18:04 +0000)]
Remove V8_INLINE to prevent C4714 warning under Win64.

BUG=
R=jochen@chromium.org

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

Patch from Daniel Vogelheim <vogelheim@chromium.org>.

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

10 years agoRemove Factory::CopyMap(map) in favor of Map::Copy(map)
verwaest@chromium.org [Tue, 1 Apr 2014 17:43:20 +0000 (17:43 +0000)]
Remove Factory::CopyMap(map) in favor of Map::Copy(map)

BUG=
R=ulan@chromium.org

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

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

10 years agoSupport typed arrays in IsMoreGeneralElementsKindTransition.
dslomov@chromium.org [Tue, 1 Apr 2014 16:41:35 +0000 (16:41 +0000)]
Support typed arrays in IsMoreGeneralElementsKindTransition.

R=verwaest@chromium.org
BUG=357054
LOG=Y

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

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

10 years agoSmi immediates are not supported on x64. Do not use it.
yangguo@chromium.org [Tue, 1 Apr 2014 15:32:06 +0000 (15:32 +0000)]
Smi immediates are not supported on x64. Do not use it.

R=jkummerow@chromium.org
BUG=358059
LOG=N

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

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

10 years agoPreParser fix: propagate reference erros properly.
marja@chromium.org [Tue, 1 Apr 2014 14:17:43 +0000 (14:17 +0000)]
PreParser fix: propagate reference erros properly.

For example, invalid left hand sides are reference errors. PreParser didn't use
to produce this error ever, so the code for propagating reference errors
properly was missing, and reference errors turned into syntax errors.

R=rossberg@chromium.org
BUG=

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

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

10 years agoMonomorphic prototype failures should be reserved for already-seen keys.
mvstanton@chromium.org [Tue, 1 Apr 2014 14:16:54 +0000 (14:16 +0000)]
Monomorphic prototype failures should be reserved for already-seen keys.

We incorrectly mark a KeyedStoreIC miss as a monomorphic prototype
failure even though it's the first time a particular (string) key has
been seen.

BUG=358088
R=verwaest@chromium.org
LOG=N

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

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

10 years agoUpdate tryserver configuration with new linux and arm bots.
machenbach@chromium.org [Tue, 1 Apr 2014 13:43:32 +0000 (13:43 +0000)]
Update tryserver configuration with new linux and arm bots.

BUG=353487
TBR=jarin@chromium.org
LOG=n

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

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

10 years agoProvide Type::Contains methods.
rossberg@chromium.org [Tue, 1 Apr 2014 13:11:12 +0000 (13:11 +0000)]
Provide Type::Contains methods.

Also, rename all *Currently methods to Now*.

R=bmeurer@chromium.org
BUG=

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

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

10 years agoFix "make arm asan=$CLANG"
jkummerow@chromium.org [Tue, 1 Apr 2014 12:53:07 +0000 (12:53 +0000)]
Fix "make arm asan=$CLANG"

Bonus cleanup: remove a few duplicate compiler flags

R=jarin@chromium.org

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

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

10 years agoMSan workaround in Simulator::VisitBitfield.
jkummerow@chromium.org [Tue, 1 Apr 2014 12:51:15 +0000 (12:51 +0000)]
MSan workaround in Simulator::VisitBitfield.

This change shuffles the code in Simulator::VisitBitfield a bit
to work around a MemorySanitizer bug. New code should not be any
slower or less readable than before.

More info:
https://code.google.com/p/memory-sanitizer/issues/detail?id=50

R=jkummerow@chromium.org

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

Patch from Evgeniy Stepanov <eugenis@chromium.org>.

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

10 years agoMSan does not understand inline asm. This change preinitializes cpuid
jkummerow@chromium.org [Tue, 1 Apr 2014 12:48:35 +0000 (12:48 +0000)]
MSan does not understand inline asm. This change preinitializes cpuid
results, and disables the use of stos.

Random mmap() addresses conflict with sanitizer memory layout.

R=jkummerow@chromium.org

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

Patch from Evgeniy Stepanov <eugenis@chromium.org>.

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

10 years ago[msan] Do not unpoison heap if running on simulator.
jkummerow@chromium.org [Tue, 1 Apr 2014 12:45:00 +0000 (12:45 +0000)]
[msan] Do not unpoison heap if running on simulator.

With the simulator, MSan detects all memory accesses from JIT code
without the need for annotations.

We'd like to keep the annotation in the native (w/o simulator) mode
until we can move all MSan+V8 users to simulator mode.

R=jkummerow@chromium.org

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

Patch from Evgeniy Stepanov <eugenis@chromium.org>.

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

10 years agoAdd msan.h to v8.gyp.
jkummerow@chromium.org [Tue, 1 Apr 2014 12:40:58 +0000 (12:40 +0000)]
Add msan.h to v8.gyp.

R=jkummerow@chromium.org

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

Patch from Evgeniy Stepanov <eugenis@chromium.org>.

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

10 years agoRemove remnants of internalized cons strings.
yangguo@chromium.org [Tue, 1 Apr 2014 12:34:08 +0000 (12:34 +0000)]
Remove remnants of internalized cons strings.

R=svenpanne@chromium.org

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

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

10 years agoFixed build (unused vars in release mode).
svenpanne@chromium.org [Tue, 1 Apr 2014 11:59:24 +0000 (11:59 +0000)]
Fixed build (unused vars in release mode).

TBR=bmeuerer@chromium.org

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

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

10 years agoConsistently use a separate Lithium instruction for flooring division.
svenpanne@chromium.org [Tue, 1 Apr 2014 11:42:42 +0000 (11:42 +0000)]
Consistently use a separate Lithium instruction for flooring division.

Previously we tried to share some code on by a slightly confusing re-use
of LDivI for a (general) flooring division. Now we cleanly separate
concerns, just like for the rest of the division-like operations. Note
that ARM64 already did it this way.

If we really want to save some code, we can introduce some macro
assembler instructions and/or helper functions in the code generator in
a future CL, but we should really try to avoid being "clever" to save
just a few lines of trivial code. Effort != complexity. :-)

Renamed some related Lithium operands on the way for more consistency.

R=mstarzinger@chromium.org

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

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

10 years agoRemove internalized cons string types.
yangguo@chromium.org [Tue, 1 Apr 2014 11:30:31 +0000 (11:30 +0000)]
Remove internalized cons string types.

Currently, internalizing a cons string could result in either an
in-place converted internalized cons string or a newly created
internalized sequential string, depending on allocation success.

The former could end up being embedded into an IC, which is not
supported.

R=mstarzinger@chromium.org
BUG=357103
LOG=N

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

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

10 years agoRemove debugger_auto_break flag
yurys@chromium.org [Tue, 1 Apr 2014 11:23:23 +0000 (11:23 +0000)]
Remove debugger_auto_break flag

The flag was introduced to support console debugger in Chrome. That debugger was replaced by DevTools long time ago and the flag is always true now.

BUG=None
LOG=Y
R=yangguo@chromium.org

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

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

10 years agoalways lookup api holder from receiver
dcarney@chromium.org [Tue, 1 Apr 2014 11:21:20 +0000 (11:21 +0000)]
always lookup api holder from receiver

R=verwaest@chromium.org

BUG=

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

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

10 years agoCleanup property module.
bmeurer@chromium.org [Tue, 1 Apr 2014 11:16:13 +0000 (11:16 +0000)]
Cleanup property module.

R=svenpanne@chromium.org

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

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

10 years agoMake it possible to use HeapType inside objects-inl.h.
bmeurer@chromium.org [Tue, 1 Apr 2014 11:07:09 +0000 (11:07 +0000)]
Make it possible to use HeapType inside objects-inl.h.

R=rossberg@chromium.org

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

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

10 years agoReplace uses of set_map by MigrateToMap.
verwaest@chromium.org [Tue, 1 Apr 2014 11:04:37 +0000 (11:04 +0000)]
Replace uses of set_map by MigrateToMap.

BUG=
R=ishell@chromium.org

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

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

10 years agoStore i18n meta data in hidden symbols instead of js accessible properties
jochen@chromium.org [Tue, 1 Apr 2014 10:56:16 +0000 (10:56 +0000)]
Store i18n meta data in hidden symbols instead of js accessible properties

There were some tests that are supposed to protect against js messing
with the meta data, however, they just didn't try hard enough.

BUG=354967
R=dcarney@chromium.org
LOG=y

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

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

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

10 years agoOnly allow automatic FrameScope types for FrameAndConstantPoolScope
rmcilroy@chromium.org [Tue, 1 Apr 2014 10:49:44 +0000 (10:49 +0000)]
Only allow automatic FrameScope types for FrameAndConstantPoolScope

In certain situations the PP register would be invalid in a FrameScope::Manual FrameAndConstantPoolScope

R=ulan@chromium.org

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

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

10 years agoFixed assertions on ARM64.
svenpanne@chromium.org [Tue, 1 Apr 2014 10:39:09 +0000 (10:39 +0000)]
Fixed assertions on ARM64.

TBR=ulan@chromium.org

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

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

10 years agoSet kTruncatingToSmi for HChange only when To rep is Smi
verwaest@chromium.org [Tue, 1 Apr 2014 10:32:25 +0000 (10:32 +0000)]
Set kTruncatingToSmi for HChange only when To rep is Smi

BUG=
R=verwaest@chromium.org

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

Patch from Weiliang Lin <weiliang.lin@intel.com>.

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

10 years agoFixed power-of-2 predicates, excluding 0.
svenpanne@chromium.org [Tue, 1 Apr 2014 09:20:28 +0000 (09:20 +0000)]
Fixed power-of-2 predicates, excluding 0.

R=dslomov@chromium.org

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

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

10 years agoTighten object verification.
yangguo@chromium.org [Tue, 1 Apr 2014 08:57:48 +0000 (08:57 +0000)]
Tighten object verification.

Often, when we call MaybeObject::Verify, what we want is Object::ObjectVerify.

R=hpayer@chromium.org

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

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

10 years agoRevert r20375.
machenbach@chromium.org [Tue, 1 Apr 2014 08:05:45 +0000 (08:05 +0000)]
Revert r20375.

Store i18n meta data in hidden symbols instead of js accessible properties

BUG=354967
LOG=N
TBR=jochen@chromium.org

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

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

10 years agoOnly assign environments when they are actually needed. (ARM and ARM64 only)
svenpanne@chromium.org [Tue, 1 Apr 2014 07:21:31 +0000 (07:21 +0000)]
Only assign environments when they are actually needed. (ARM and ARM64 only)

Twin of https://codereview.chromium.org/210783003/ and https://codereview.chromium.org/211153003/.

Cleaned up DoChange a bit on the way, making things more uniform across platforms, removed useless comments etc.

R=yangguo@chromium.org

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

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

10 years agoStore i18n meta data in hidden symbols instead of js accessible properties
jochen@chromium.org [Tue, 1 Apr 2014 07:21:05 +0000 (07:21 +0000)]
Store i18n meta data in hidden symbols instead of js accessible properties

There were some tests that are supposed to protect against js messing
with the meta data, however, they just didn't try hard enough.

BUG=354967
R=dcarney@chromium.org
LOG=y

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

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

10 years agoMIPS: Fix PrepareKeyedOperand on MIPS.
palfia@homejinni.com [Mon, 31 Mar 2014 22:50:53 +0000 (22:50 +0000)]
MIPS: Fix PrepareKeyedOperand on MIPS.

Port r20363 (235f866c)

Original commit message:
When additional_offset is specified, the 'key' operand can be negative
and still pass the bounds check. Therefore, when converting key from
Smi, arithmetic and not logical shift must be used.

BUG=
R=plind44@gmail.com

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

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

10 years agoMIPS: Reland and fix "Fix LoadFieldByIndex to take mutable heap-numbers into account."
palfia@homejinni.com [Mon, 31 Mar 2014 22:48:54 +0000 (22:48 +0000)]
MIPS: Reland and fix "Fix LoadFieldByIndex to take mutable heap-numbers into account."

Port r20358 (5e9b653d)

BUG=
R=plind44@gmail.com

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

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

10 years agoWe should perform the illegal redeclaration check earlier so that we do not confuse...
jarin@chromium.org [Mon, 31 Mar 2014 16:45:46 +0000 (16:45 +0000)]
We should perform the illegal redeclaration check earlier so that we do not confuse the AST typer with missing type feedback nodes.

R=yangguo@chromium.org

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

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

10 years agoUse JSObject::SetMapAndElements rather than set_map + set_elements.
verwaest@chromium.org [Mon, 31 Mar 2014 16:21:20 +0000 (16:21 +0000)]
Use JSObject::SetMapAndElements rather than set_map + set_elements.

BUG=
R=ishell@chromium.org

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

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

10 years agoFix Type::Intersect to skip uninhabited bitsets
rossberg@chromium.org [Mon, 31 Mar 2014 15:53:21 +0000 (15:53 +0000)]
Fix Type::Intersect to skip uninhabited bitsets

R=verwaest@chromium.org, bmeurer@chromium.org
BUG=chromium:357330
LOG=Y

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

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

10 years agoUpdate list of V8 try bots.
machenbach@chromium.org [Mon, 31 Mar 2014 15:47:18 +0000 (15:47 +0000)]
Update list of V8 try bots.

R=jarin@chromium.org
TBR=jarin@chromium.org
BUG=353487
LOG=n

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

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

10 years agoReplace set_map_and_elements by MigrateToMap-based SetMapAndElements
verwaest@chromium.org [Mon, 31 Mar 2014 15:30:13 +0000 (15:30 +0000)]
Replace set_map_and_elements by MigrateToMap-based SetMapAndElements

BUG=
R=ishell@chromium.org

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

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

10 years agoFix PrepareKeyedOperand on arm.
dslomov@chromium.org [Mon, 31 Mar 2014 15:14:28 +0000 (15:14 +0000)]
Fix PrepareKeyedOperand on arm.

When additional_offset is specified, the 'key' operand can be negative
and still pass the bounds check. Therefore, when converting key from
Smi, arithmetic and not logical shift must be used.

R=verwaest@chromium.org
BUG=358057
LOG=Y

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

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

10 years agoFix left trimming check for large objects
jarin@chromium.org [Mon, 31 Mar 2014 15:01:46 +0000 (15:01 +0000)]
Fix left trimming check for large objects

BUG=358090
TEST=test/mjsunit/regress/regress-358090.js
LOG=N
R=hpayer@chromium.org

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

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

10 years agoMake sure when we shrink an object that we store a filler first into the free memory...
hpayer@chromium.org [Mon, 31 Mar 2014 14:29:01 +0000 (14:29 +0000)]
Make sure when we shrink an object that we store a filler first into the free memory before updating the map or size.

BUG=
R=jarin@chromium.org

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

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

10 years agoReland and fix "Fix LoadFieldByIndex to take mutable heap-numbers into account.""
verwaest@chromium.org [Mon, 31 Mar 2014 14:21:04 +0000 (14:21 +0000)]
Reland and fix "Fix LoadFieldByIndex to take mutable heap-numbers into account.""

BUG=
R=hpayer@chromium.org

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

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

10 years agoDo not check for interrupt when allocating stack locals.
yangguo@chromium.org [Mon, 31 Mar 2014 14:14:54 +0000 (14:14 +0000)]
Do not check for interrupt when allocating stack locals.

R=dcarney@chromium.org
BUG=357137
LOG=N

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

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

10 years agoARM64: Optimize AllocateHeapNumber to use STP.
alexandre.rames@arm.com [Mon, 31 Mar 2014 14:06:42 +0000 (14:06 +0000)]
ARM64: Optimize AllocateHeapNumber to use STP.

R=jochen@chromium.org

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

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

10 years agoFinalisation disclaimer
rossberg@chromium.org [Mon, 31 Mar 2014 13:35:12 +0000 (13:35 +0000)]
Finalisation disclaimer

R=svenpanne@chromium.org
BUG=

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

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

10 years agoRevert 20348 - "Fix LoadFieldByIndex to take mutable heap-numbers into account."
jochen@chromium.org [Mon, 31 Mar 2014 13:23:32 +0000 (13:23 +0000)]
Revert 20348 - "Fix LoadFieldByIndex to take mutable heap-numbers into account."

Reason for revert: crashes benchmarks/sunspider/string-fasta on ia32.debug

This also reverts r20350 and r20352

> Fix LoadFieldByIndex to take mutable heap-numbers into account.
>
> BUG=
> R=ishell@chromium.org
>
> Review URL: https://codereview.chromium.org/213213002

BUG=none
LOG=n
TBR=verwaest@chromium.org

Revert "Use sarq on x64"

This reverts commit e2a8ef9321345c6bc091054443bf2b9535ff6b1c.

Revert "Don't | int and bool"

This reverts commit c90d713d3a8ceba4fec41933a63beb6e50a3d7c0.

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

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

10 years agoRevert 20313 - "Ship promises and weak collections"
jochen@chromium.org [Mon, 31 Mar 2014 12:40:32 +0000 (12:40 +0000)]
Revert 20313 - "Ship promises and weak collections"

> R=mstarzinger@chromium.org
> BUG=
>
> Committed: https://code.google.com/p/v8/source/detail?r=20211
>
> Review URL: https://codereview.chromium.org/206163004

R=rossberg@chromium.org
TBR=rossberg@chromium.org
LOG=y
BUG=n

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

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

10 years agoDon't | int and bool
verwaest@chromium.org [Mon, 31 Mar 2014 12:24:51 +0000 (12:24 +0000)]
Don't | int and bool

BUG=
R=ishell@chromium.org

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

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

10 years agoSkip cctest/test-mark-compact/NoPromotion on ARM64
jochen@chromium.org [Mon, 31 Mar 2014 12:09:59 +0000 (12:09 +0000)]
Skip cctest/test-mark-compact/NoPromotion on ARM64

BUG=v8:3247
TBR=machenbach@chromium.org
LOG=n

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

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

10 years agoUse sarq on x64
verwaest@chromium.org [Mon, 31 Mar 2014 12:07:41 +0000 (12:07 +0000)]
Use sarq on x64

BUG=
R=bmeurer@chromium.org

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

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

10 years agoCleanup bootstrapper, execution and factory modules.
bmeurer@chromium.org [Mon, 31 Mar 2014 12:01:02 +0000 (12:01 +0000)]
Cleanup bootstrapper, execution and factory modules.

R=svenpanne@chromium.org

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

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

10 years agoFix LoadFieldByIndex to take mutable heap-numbers into account.
verwaest@chromium.org [Mon, 31 Mar 2014 11:59:29 +0000 (11:59 +0000)]
Fix LoadFieldByIndex to take mutable heap-numbers into account.

BUG=
R=ishell@chromium.org

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

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

10 years agoAdd missing lazy deopt point for the TransitionElementsKind instruction.
jarin@chromium.org [Mon, 31 Mar 2014 11:58:53 +0000 (11:58 +0000)]
Add missing lazy deopt point for the TransitionElementsKind instruction.

R=mvstanton@chromium.org, yangguo@chromium.org
BUG=357105
TEST=test/mjsunit/regress/regress-357105.js
LOG=N

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

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

10 years agoCleanup string-stream module.
bmeurer@chromium.org [Mon, 31 Mar 2014 11:13:39 +0000 (11:13 +0000)]
Cleanup string-stream module.

R=svenpanne@chromium.org

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

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

10 years agoImplement PersistentValueVector, analogous to PersistentValueMap.
dcarney@chromium.org [Mon, 31 Mar 2014 10:03:20 +0000 (10:03 +0000)]
Implement PersistentValueVector, analogous to PersistentValueMap.

BUG=
R=dcarney@chromium.org

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

Patch from Daniel Vogelheim <vogelheim@chromium.org>.

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

10 years agoSkip crashing harmony mjsunit tests on NaCL
jochen@chromium.org [Mon, 31 Mar 2014 07:54:22 +0000 (07:54 +0000)]
Skip crashing harmony mjsunit tests on NaCL

BUG=none
TBR=machenbach@chromium.org
LOG=n

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

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

10 years agoHandlify DescriptorArray::Merge().
bmeurer@chromium.org [Mon, 31 Mar 2014 07:48:13 +0000 (07:48 +0000)]
Handlify DescriptorArray::Merge().

R=svenpanne@chromium.org

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

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

10 years agoInline internal getters for typed arrays & friends.
dslomov@chromium.org [Fri, 28 Mar 2014 15:25:24 +0000 (15:25 +0000)]
Inline internal getters for typed arrays & friends.

R=hpayer@chromium.org, yangguo@chromium.org

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

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

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

10 years agoRevert r20335 - "Raise StackOverflow during bootstrapping"
jochen@chromium.org [Fri, 28 Mar 2014 14:16:11 +0000 (14:16 +0000)]
Revert r20335 - "Raise StackOverflow during bootstrapping"

Reason for revert: New test crashes on nosnap bots

> See https://github.com/joyent/node/issues/7120
>
> R=jarin@chromium.org
> BUG=
>
> Review URL: https://codereview.chromium.org/178073002
>
> Patch from Alexis Campailla <alexis@janeasystems.com>.

TBR=jarin@chromium.org
BUG=none
LOG=n

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

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

10 years agoRevert "Inline internal getters for typed arrays & friends."
dslomov@chromium.org [Fri, 28 Mar 2014 13:33:50 +0000 (13:33 +0000)]
Revert "Inline internal getters for typed arrays & friends."

This reverts commit r20330 for breaking arm64 nosnap tests.

TBR=svenpanne@chromium.org

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

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

10 years agoRaise StackOverflow during bootstrapping
jarin@chromium.org [Fri, 28 Mar 2014 13:26:20 +0000 (13:26 +0000)]
Raise StackOverflow during bootstrapping

See https://github.com/joyent/node/issues/7120

R=jarin@chromium.org
BUG=

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

Patch from Alexis Campailla <alexis@janeasystems.com>.

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

10 years agoCleanup scanner character streams.
marja@chromium.org [Fri, 28 Mar 2014 13:11:12 +0000 (13:11 +0000)]
Cleanup scanner character streams.

- GenericStringUtf16CharacterStream::start_position_ was unused.
- GenericStringUtf16CharacterStream inherits from BufferedUtf16CharacterStream,
so no need to initialize buffer_cursor_ and buffer_end_ twice (this makes it
clearer which class in the inheritance chain takes care of which variables).

R=yangguo@chromium.org
BUG=

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

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

10 years agoMove FillWithHoles FixedArray and FixedDoubleArray functions to the given classes.
hpayer@chromium.org [Fri, 28 Mar 2014 13:05:23 +0000 (13:05 +0000)]
Move FillWithHoles FixedArray and FixedDoubleArray functions to the given classes.

BUG=
R=verwaest@chromium.org

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

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

10 years agoMake it clearer that PreParser doesn't depend on Isolate.
marja@chromium.org [Fri, 28 Mar 2014 12:49:34 +0000 (12:49 +0000)]
Make it clearer that PreParser doesn't depend on Isolate.

The Isolate* member of ParserBase::FunctionState was only used by
Parser. Removing it makes it clear that there are no isolates in
PreParser. (There's also no Zone, since PreParserTraits::Type::Zone is void.)

R=yangguo@chromium.org
BUG=

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

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

10 years agoInline internal getters for typed arrays & friends.
dslomov@chromium.org [Fri, 28 Mar 2014 12:02:52 +0000 (12:02 +0000)]
Inline internal getters for typed arrays & friends.

R=hpayer@chromium.org, yangguo@chromium.org

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

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

10 years agoRefactor the arithmetic instructions for x64
haitao.feng@intel.com [Fri, 28 Mar 2014 11:13:14 +0000 (11:13 +0000)]
Refactor the arithmetic instructions for x64

R=verwaest@chromium.org

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

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

10 years agoReland "Clean up runtime functions for Maths."
yangguo@chromium.org [Fri, 28 Mar 2014 10:07:23 +0000 (10:07 +0000)]
Reland "Clean up runtime functions for Maths."
BUG=
R=dslomov@chromium.org

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

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

10 years agoClean up some "GetProperty" methods/functions.
yangguo@chromium.org [Fri, 28 Mar 2014 09:49:27 +0000 (09:49 +0000)]
Clean up some "GetProperty" methods/functions.

Runtime::GetObjectProperty:
  - handled string.charAt, element access and property access
  - now handlified
GetProperty in handles.cc:
  - called to Runtime::GetObjectProperty
  - now removed
Object::GetProperty (handlified version):
  - handled element access and property access
  - now changed to only do property access
New: Object::GetPropertyOrElement:
  - handles element access and property access

R=ishell@chromium.org

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

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

10 years agoAmend PersistentValueMap:
marja@chromium.org [Fri, 28 Mar 2014 09:35:50 +0000 (09:35 +0000)]
Amend PersistentValueMap:
- Use the surrounding map (instead of Traits::Impl) for weak callback.
- Provide for a fast reference to a mapped value.
- Restructure Traits to accomondate for the first point above.

[Why?] As discussed, I proceeded to replace Impl with the map.
The problem I encountered with that version is that now the
Traits class depends on itself: The weak-related methods require the
map type in their signature. But the map type includes the Traits class
and hence the Traits class method signatures depend on the specific Traits class. That
makes them practically un-derivable: While you can derive a Traits class
from another one, since the compiler now expects methods with a different
signature. To accommodate, I pulled the dispose traits into the weak traits
class. I also removed the Impl*/MapType* parameter from the Dispose call,
since no implementation seems to need it.

R=dcarney@chromium.org
BUG=

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

Patch from Daniel Vogelheim <vogelheim@chromium.org>.

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

10 years agoDeprecate Start/StopCpuProfiling methods
yurys@chromium.org [Fri, 28 Mar 2014 09:24:49 +0000 (09:24 +0000)]
Deprecate Start/StopCpuProfiling methods

BUG=v8:3213
LOG=Y
R=alph@chromium.org, svenpanne@chromium.org

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

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

10 years agoFix deopts causing uninitialized fixed typed arrays.
dslomov@chromium.org [Fri, 28 Mar 2014 08:59:46 +0000 (08:59 +0000)]
Fix deopts causing uninitialized fixed typed arrays.

The deopt will not happen in production code, since we check that
lengths of fixed typed arrays are smis before calling
TypedArrayInitialze, but that makes deopt bot happy.

R=svenpanne@chromium.org

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

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

10 years agoDon't crash if we get a timezone change notification on an uninitialized isolate
jochen@chromium.org [Fri, 28 Mar 2014 08:59:25 +0000 (08:59 +0000)]
Don't crash if we get a timezone change notification on an uninitialized isolate

Also make the date cache's timestamp more robust.

BUG=357362
R=svenpanne@chromium.org
LOG=y

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

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

10 years agoFix TSAN issue wrt assertions in the optimizing compiler thread.
yangguo@chromium.org [Fri, 28 Mar 2014 08:49:58 +0000 (08:49 +0000)]
Fix TSAN issue wrt assertions in the optimizing compiler thread.

R=hpayer@chromium.org

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

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

10 years agoReland "Fix property enum cache creation to include only own properties"
jarin@chromium.org [Fri, 28 Mar 2014 06:59:20 +0000 (06:59 +0000)]
Reland "Fix property enum cache creation to include only own properties"

Reland r20308 (reverted by r20310).

TBR=verwaest@chromium.org

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

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

10 years agoIntroduce rolp, rorp, rclp, rcrp, shlp, shrp and sarp for x64 port
haitao.feng@intel.com [Fri, 28 Mar 2014 04:55:00 +0000 (04:55 +0000)]
Introduce rolp, rorp, rclp, rcrp, shlp, shrp and sarp for x64 port

R=verwaest@chromium.org

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

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

10 years agoUse RegisterSize to count the pushq size and the argument slot size from JS to C++
haitao.feng@intel.com [Fri, 28 Mar 2014 00:35:23 +0000 (00:35 +0000)]
Use RegisterSize to count the pushq size and the argument slot size from JS to C++

R=verwaest@chromium.org

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

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

10 years agoDon't pass the hole to SetElement when creating Array.observe change records
adamk@chromium.org [Thu, 27 Mar 2014 18:29:07 +0000 (18:29 +0000)]
Don't pass the hole to SetElement when creating Array.observe change records

Also added comments to remind us why we were using the hole here in the first
place (it's used for the case where Object.observe, rather than Array.observe,
has been called on Array that's undergoing truncation).

BUG=356589
LOG=N
R=rossberg@chromium.org

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

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

10 years agoAdd Bogus initialization for external_elements_kind and fixed_elements_kind
dslomov@chromium.org [Thu, 27 Mar 2014 17:40:52 +0000 (17:40 +0000)]
Add Bogus initialization for external_elements_kind and fixed_elements_kind

R=dslomov@chromium.org

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

Patch from Haitao Feng <haitao.feng@intel.com>.

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

10 years agoFix some missing includes and forward declarations.
marja@chromium.org [Thu, 27 Mar 2014 16:43:44 +0000 (16:43 +0000)]
Fix some missing includes and forward declarations.

R=yangguo@chromium.org
BUG=

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

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

10 years agoShip promises and weak collections
rossberg@chromium.org [Thu, 27 Mar 2014 16:42:34 +0000 (16:42 +0000)]
Ship promises and weak collections

R=mstarzinger@chromium.org
BUG=

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

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

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

10 years agoElementsAccessor::CopyElements() and its callers handlified.
ishell@chromium.org [Thu, 27 Mar 2014 16:41:09 +0000 (16:41 +0000)]
ElementsAccessor::CopyElements() and its callers handlified.

R=yangguo@chromium.org

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

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

10 years agoRevert "Clean up runtime functions for Maths."
yangguo@chromium.org [Thu, 27 Mar 2014 16:30:03 +0000 (16:30 +0000)]
Revert "Clean up runtime functions for Maths."

This reverts r20307.

TBR=jarin@chromium.org

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

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