platform/upstream/v8.git
10 years agoParser / PreParser: Simplify error message arguments.
marja@chromium.org [Thu, 15 May 2014 09:44:57 +0000 (09:44 +0000)]
Parser / PreParser: Simplify error message arguments.

In some places, we pretended that there can be multiple arguments, though in
practice there was only one. In other places (most importantly, PreParser), we
only handled one argument. (This means that we were not able to produce a
multi-argument error inside a lazy function anyway.)

This CL makes it clear that there is ever only one argument.

R=ulan@chromium.org
BUG=

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

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

10 years agoIgnore Eclipse project description files.
mstarzinger@chromium.org [Thu, 15 May 2014 09:34:47 +0000 (09:34 +0000)]
Ignore Eclipse project description files.

R=jkummerow@chromium.org

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

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

10 years agoOmit stack check in non-looping loops.
svenpanne@chromium.org [Thu, 15 May 2014 09:25:03 +0000 (09:25 +0000)]
Omit stack check in non-looping loops.

R=jkummerow@chromium.org

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

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

10 years agoRemove custom JSON implementation from d8.
yangguo@chromium.org [Thu, 15 May 2014 09:19:02 +0000 (09:19 +0000)]
Remove custom JSON implementation from d8.

R=jkummerow@chromium.org

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

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

10 years agoAvoid memset(NULL, ...).
svenpanne@chromium.org [Thu, 15 May 2014 07:16:46 +0000 (07:16 +0000)]
Avoid memset(NULL, ...).

R=yangguo@chromium.org

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

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

10 years agoMIPS: Fix FlooringDivByPowerOf2I.
plind44@gmail.com [Wed, 14 May 2014 17:34:09 +0000 (17:34 +0000)]
MIPS: Fix FlooringDivByPowerOf2I.

Port r21313 (3b4cb0b)

Original commit message:
Fix for divisor=1, found during code inspection. We can't hit this bug, due to
HDiv::Canonicalize() discarding the operation, but it might avoid a future bug
hunt. Patch also includes a small tidying of the ARM64 code.

BUG=
R=plind44@gmail.com

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

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

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

10 years agoRemove socket implementation from V8.
yangguo@chromium.org [Wed, 14 May 2014 16:34:13 +0000 (16:34 +0000)]
Remove socket implementation from V8.

R=jkummerow@chromium.org, svenpanne@chromium.org

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

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

10 years agoRemove DebuggerAgent.
yangguo@chromium.org [Wed, 14 May 2014 16:28:46 +0000 (16:28 +0000)]
Remove DebuggerAgent.

R=svenpanne@chromium.org

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

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

10 years agoMark slow mozilla test.
machenbach@chromium.org [Wed, 14 May 2014 15:05:44 +0000 (15:05 +0000)]
Mark slow mozilla test.

This test is the remaining low hanging fruit in quick check and blocks the runner for 5 extra seconds.

BUG=
R=jkummerow@chromium.org

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

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

10 years agoFix FlooringDivByPowerOf2I on ARM/ARM64
m.m.capewell@googlemail.com [Wed, 14 May 2014 14:34:37 +0000 (14:34 +0000)]
Fix FlooringDivByPowerOf2I on ARM/ARM64

Fix for divisor=1, found during code inspection. We can't hit this bug, due to
HDiv::Canonicalize() discarding the operation, but it might avoid a future bug
hunt. Patch also includes a small tidying of the ARM64 code.

BUG=
R=ulan@chromium.org

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

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

10 years agoARM64: Enable PIE on Android.
ulan@chromium.org [Wed, 14 May 2014 14:11:54 +0000 (14:11 +0000)]
ARM64: Enable PIE on Android.

BUG=373219
LOG=N
R=rmcilroy@chromium.org

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

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

10 years agoA number of small changes:
m.m.capewell@googlemail.com [Wed, 14 May 2014 14:01:29 +0000 (14:01 +0000)]
A number of small changes:
  - Change ConstantD for +/-zero constants to use the fp_zero register.
  - Use Bfi in DoConstructDouble.
  - Use Tbz for positive dividend check in mod by constant.
  - Optimize some deoptimize checks.
  - Fix a couple of style/consistency issues.

BUG=
R=ulan@chromium.org

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

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

10 years agoIntroduce a dynamic process pool for the local test driver
machenbach@chromium.org [Wed, 14 May 2014 13:30:57 +0000 (13:30 +0000)]
Introduce a dynamic process pool for the local test driver

The new process pool allows adding jobs after testing has been started. It will also allow to restructure building the job queue (in a follow up CL), so that testing can start instantly while the queue is being built.

Also attempts to clean up the keyboard-interrupt logic. Idea: Only catch keyboard interrupt once per process at the outermost level. Use proper "finally" clauses to clean up everywhere where a keyboard interrupt might occur. Never turn named exceptions into none-exceptions using anonymous "raise".

TEST=python -m unittest pool_unittest
R=jkummerow@chromium.org

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

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

10 years agoAdd randomized test generation capability to tools/generate-runtime-tests.py
jkummerow@chromium.org [Wed, 14 May 2014 12:54:34 +0000 (12:54 +0000)]
Add randomized test generation capability to tools/generate-runtime-tests.py

R=jarin@chromium.org

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

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

10 years agoRemove a race between sweepers and the free space skipping code (while iterating...
jarin@chromium.org [Wed, 14 May 2014 12:35:13 +0000 (12:35 +0000)]
Remove a race between sweepers and the free space skipping code (while iterating new space pointers).

There has been a race between a sweeper setting the next pointer on
free list node and the main thread skipping free space during update of
new space pointers in the heap.

This change removes the free space skipping code.

R=hpayer@chromium.org
BUG=370551
LOG=N

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

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

10 years agoTemporarily skip test-heap/NoWeakHashTableLeakWithIncrementalMarking on Windows.
ulan@chromium.org [Wed, 14 May 2014 12:28:34 +0000 (12:28 +0000)]
Temporarily skip test-heap/NoWeakHashTableLeakWithIncrementalMarking on Windows.

BUG=3331
LOG=N
R=machenbach@chromium.org

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

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

10 years agoPrint new space survival rate in --trace-gc-nvp.
hpayer@chromium.org [Wed, 14 May 2014 11:45:33 +0000 (11:45 +0000)]
Print new space survival rate in --trace-gc-nvp.

BUG=
R=jarin@chromium.org

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

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

10 years agoFix test after r21299.
ulan@chromium.org [Wed, 14 May 2014 11:43:21 +0000 (11:43 +0000)]
Fix test after r21299.

This fixes Win and Mac test failures.

TBR=danno@chromium.org

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

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

10 years agoAdd layout dbg trybot to default list.
machenbach@chromium.org [Wed, 14 May 2014 11:11:22 +0000 (11:11 +0000)]
Add layout dbg trybot to default list.

BUG=353487
LOG=n
R=jkummerow@chromium.org

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

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

10 years agoDrop thenable coercion cache
rossberg@chromium.org [Wed, 14 May 2014 10:44:34 +0000 (10:44 +0000)]
Drop thenable coercion cache

R=dslomov@chromium.org
BUG=372788
LOG=Y

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

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

10 years agoFix chromium trunk url in DEPS.
machenbach@chromium.org [Wed, 14 May 2014 09:29:50 +0000 (09:29 +0000)]
Fix chromium trunk url in DEPS.

Makes "svn/trunk" part of the variable so that it can be replaced with "chrome/trunk" when using mirrors.

BUG=372738
LOG=n
R=jkummerow@chromium.org

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

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

10 years agoSkip write barriers when updating the weak hash table.
ulan@chromium.org [Wed, 14 May 2014 09:12:21 +0000 (09:12 +0000)]
Skip write barriers when updating the weak hash table.

Write barrier on the weak hash table makes all its pointers strong,
which can cause a memory leak.

BUG=359401
LOG=Y
TEST=cctest/test-heap/NoWeakHashTableLeakWithIncrementalMarking
R=hpayer@chromium.org, mstarzinger@chromium.org

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

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

10 years agoAvoid name clashes of builtins and runtime functions.
jkummerow@chromium.org [Wed, 14 May 2014 08:51:10 +0000 (08:51 +0000)]
Avoid name clashes of builtins and runtime functions.

This makes it possible to use %Percent() notation to call any given builtin or runtime function in tests.

R=dslomov@chromium.org

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

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

10 years agoRevert PropertyCallbackInfo::This() signature change from r21022.
svenpanne@chromium.org [Wed, 14 May 2014 08:34:05 +0000 (08:34 +0000)]
Revert PropertyCallbackInfo::This() signature change from r21022.

This exposed an internal implementation detail, which could be handled
differently.

BUG=v8:3274
LOG=y
R=yangguo@chromium.org

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

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

10 years agoAllow chromium url to be overwritten as a custom variable in DEPS.
machenbach@chromium.org [Wed, 14 May 2014 08:30:49 +0000 (08:30 +0000)]
Allow chromium url to be overwritten as a custom variable in DEPS.

Using this work around, buildbot can set the chromium_url variable to the golo mirror.

BUG=372738
LOG=n
R=jkummerow@chromium.org

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

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

10 years agoRename debug API methods.
yangguo@chromium.org [Wed, 14 May 2014 08:07:21 +0000 (08:07 +0000)]
Rename debug API methods.

R=yurys@chromium.org

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

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

10 years agoARM64: Fix cache line size computation.
rodolph.perfetta@arm.com [Tue, 13 May 2014 15:13:22 +0000 (15:13 +0000)]
ARM64: Fix cache line size computation.

BUG=
R=svenpanne@chromium.org

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

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

10 years agoPrevent interference of allocation sites with array-natives-elements test.
jarin@chromium.org [Tue, 13 May 2014 10:31:53 +0000 (10:31 +0000)]
Prevent interference of allocation sites with array-natives-elements test.

This should make the arm64 build green again.

R=mvstanton@chromium.org
BUG=

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

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

10 years agoARM64: Fix native builds
m.m.capewell@googlemail.com [Tue, 13 May 2014 09:55:26 +0000 (09:55 +0000)]
ARM64: Fix native builds

On ARM64, HasListItem() isn't used, so the compiler complains. Use the
preprocessor to remove it from ARM64 builds.

BUG=
R=ulan@chromium.org

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

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

10 years agoSimplify DoubleRegister for the ia32 port.
yangguo@chromium.org [Tue, 13 May 2014 09:05:00 +0000 (09:05 +0000)]
Simplify DoubleRegister for the ia32 port.

R=jkummerow@chromium.org

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

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

10 years agoFix incremental marking of native context when bootstrapping.
jarin@chromium.org [Tue, 13 May 2014 08:48:39 +0000 (08:48 +0000)]
Fix incremental marking of native context when bootstrapping.

This should fix one of the arm64 build breaks - we have tried to mark
half-initialized native context there, but the normalized_map_cache
entry was still undefined.

R=hpayer@chromium.org
BUG=

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

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

10 years agoRevert "Sync change log from trunk."
machenbach@chromium.org [Tue, 13 May 2014 08:48:37 +0000 (08:48 +0000)]
Revert "Sync change log from trunk."

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

10 years agoSync change log from trunk.
machenbach@chromium.org [Tue, 13 May 2014 08:40:30 +0000 (08:40 +0000)]
Sync change log from trunk.

BUG=
R=jkummerow@chromium.org

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

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

10 years agoRemove unused -p option from d8.
yangguo@chromium.org [Tue, 13 May 2014 08:31:27 +0000 (08:31 +0000)]
Remove unused -p option from d8.

R=ishell@chromium.org

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

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

10 years agoRequire CMOV support for the ia32 port.
yangguo@chromium.org [Tue, 13 May 2014 08:16:26 +0000 (08:16 +0000)]
Require CMOV support for the ia32 port.

R=svenpanne@chromium.org

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

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

10 years agoSimplified slot buffer logic during weak list visiting.
svenpanne@chromium.org [Tue, 13 May 2014 06:22:49 +0000 (06:22 +0000)]
Simplified slot buffer logic during weak list visiting.

Tiny reformatting cleanup on the way.

R=mstarzinger@chromium.org

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

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

10 years agoRevert "v8::TryCatch now works correctly with ASAN's UseAfterReturn mode enabled."
ishell@chromium.org [Mon, 12 May 2014 20:10:47 +0000 (20:10 +0000)]
Revert "v8::TryCatch now works correctly with ASAN's UseAfterReturn mode enabled."

This reverts commit r21273.

TBR=danno@chromium.org

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

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

10 years agoUse stability to only conditionally flush information from the map check table.
ishell@chromium.org [Mon, 12 May 2014 20:05:52 +0000 (20:05 +0000)]
Use stability to only conditionally flush information from the map check table.

R=ishell@chromium.org

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

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

10 years agov8::TryCatch now works correctly with ASAN's UseAfterReturn mode enabled.
ishell@chromium.org [Mon, 12 May 2014 19:32:12 +0000 (19:32 +0000)]
v8::TryCatch now works correctly with ASAN's UseAfterReturn mode enabled.

BUG=chromium:369962
LOG=N
R=jkummerow@chromium.org

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

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

10 years agoARM64: Fix and improve MacroAssembler::Printf.
Jacob.Bramley@arm.com [Mon, 12 May 2014 15:44:21 +0000 (15:44 +0000)]
ARM64: Fix and improve MacroAssembler::Printf.

  - W-sized values passed to Printf are now handled correctly by the
    simulator. In AAPCS64, int32_t and int64_t are passed in the same
    way, so this didn't affect non-simulator builds.
  - Since Printf now records the type and size of each argument, it is
    possible to mix argument types.
  - It is now possible to print the stack pointer. There is only one
    remaining restriction: The `csp` register cannot be printed unless
    it is the current stack pointer. This is because it is modified by
    BumpSystemStackPointer when the caller-saved registers are
    preserved.

BUG=
R=rmcilroy@chromium.org

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

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

10 years agoHarden more runtime functions
jkummerow@chromium.org [Mon, 12 May 2014 15:30:00 +0000 (15:30 +0000)]
Harden more runtime functions

BUG=chromium:372239
LOG=n
R=jarin@chromium.org

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

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

10 years agoClean up debugger flags.
yangguo@chromium.org [Mon, 12 May 2014 13:47:01 +0000 (13:47 +0000)]
Clean up debugger flags.

R=ulan@chromium.org

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

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

10 years agoRevert "Read internal properties [[PromiseStatus]] and [[PromiseValue]] of the promise."
yangguo@chromium.org [Mon, 12 May 2014 13:38:39 +0000 (13:38 +0000)]
Revert "Read internal properties [[PromiseStatus]] and [[PromiseValue]] of the promise."

This reverts r21266.

TBR=danno@chromium.org

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

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

10 years agoDo not scavenge while marking incrementally when FLAG_gc_global is on.
hpayer@chromium.org [Mon, 12 May 2014 13:35:53 +0000 (13:35 +0000)]
Do not scavenge while marking incrementally when FLAG_gc_global is on.

BUG=
R=yangguo@chromium.org

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

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

10 years agoARM64: Optimize MathRoundI
m.m.capewell@googlemail.com [Mon, 12 May 2014 13:30:54 +0000 (13:30 +0000)]
ARM64: Optimize MathRoundI

Optimize code generated for MathRoundI based on technique used in MathRoundD.

BUG=
R=ulan@chromium.org

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

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

10 years agoRead internal properties [[PromiseStatus]] and [[PromiseValue]] of the promise.
yangguo@chromium.org [Mon, 12 May 2014 12:42:35 +0000 (12:42 +0000)]
Read internal properties [[PromiseStatus]] and [[PromiseValue]] of the promise.

BUG=v8:3093
LOG=N
R=aandrey@chromium.org, yangguo@chromium.org

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

Patch from Alexandra Mikhaylova <amikhaylova@google.com>.

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

10 years agoHarden %WeakCollectionSet.
jarin@chromium.org [Mon, 12 May 2014 12:05:00 +0000 (12:05 +0000)]
Harden %WeakCollectionSet.

R=mstarzinger@chromium.org
BUG=

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

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

10 years agoRevert "Revert interrupt handling code changed in r21208."
yangguo@chromium.org [Mon, 12 May 2014 11:52:44 +0000 (11:52 +0000)]
Revert "Revert interrupt handling code changed in r21208."

This reverts commit r21252.

R=svenpanne@chromium.org

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

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

10 years agoFix windows x64 build.
yangguo@chromium.org [Mon, 12 May 2014 11:42:53 +0000 (11:42 +0000)]
Fix windows x64 build.

TBR=svenpanne@chromium.org

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

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

10 years agoGuard against stack overflow in Runtime::StringReplaceOneCharWithString.
jarin@chromium.org [Mon, 12 May 2014 11:36:47 +0000 (11:36 +0000)]
Guard against stack overflow in Runtime::StringReplaceOneCharWithString.

Unfortunately, this only triggers with "ulimit -s 1024" (or less), so we
cannot have an mjsunit test. The test that fails is
test/mjsunit/string-replace-one-char.js on x64.debug.

R=ishell@chromium.org
BUG=

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

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

10 years agoTurn off --logfile-per-isolate by default in d8.
yangguo@chromium.org [Mon, 12 May 2014 11:25:21 +0000 (11:25 +0000)]
Turn off --logfile-per-isolate by default in d8.

R=svenpanne@chromium.org

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

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

10 years agoFix %SetFlags("--stress-compaction")
jarin@chromium.org [Mon, 12 May 2014 10:39:08 +0000 (10:39 +0000)]
Fix %SetFlags("--stress-compaction")

BUG=369943
LOG=N
R=hpayer@chromium.org

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

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

10 years agoHarden runtime functions (part 6).
jkummerow@chromium.org [Mon, 12 May 2014 09:37:26 +0000 (09:37 +0000)]
Harden runtime functions (part 6).

Also blacklist LiveEdit-related functions from generated runtime tests.

R=jarin@chromium.org

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

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

10 years agoARM: update defaults for flags
m.m.capewell@googlemail.com [Mon, 12 May 2014 09:25:32 +0000 (09:25 +0000)]
ARM: update defaults for flags

R=bmeurer@chromium.org, ulan@chromium.org

BUG=

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

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

10 years agoPartially revert r21254 due to WebKit test failure.
mstarzinger@chromium.org [Mon, 12 May 2014 09:18:45 +0000 (09:18 +0000)]
Partially revert r21254 due to WebKit test failure.

TBR=danno@chromium.org
BUG=

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

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

10 years agoHarden %SetIsObserved with RUNTIME_ASSERTs
adamk@chromium.org [Mon, 12 May 2014 08:49:51 +0000 (08:49 +0000)]
Harden %SetIsObserved with RUNTIME_ASSERTs

Now throws if its argument is already observed, or if the argument is
the global proxy.

BUG=371782
LOG=Y
R=jkummerow@chromium.org

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

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

10 years agoMake escape analysis preserve all representations required by HCompareNumericAndBranch.
jarin@chromium.org [Mon, 12 May 2014 08:43:18 +0000 (08:43 +0000)]
Make escape analysis preserve all representations required by HCompareNumericAndBranch.

R=mstarzinger@chromium.org
BUG=

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

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

10 years agoMove more builtin files to strict mode.
mstarzinger@chromium.org [Mon, 12 May 2014 08:43:01 +0000 (08:43 +0000)]
Move more builtin files to strict mode.

R=rossberg@chromium.org
BUG=v8:1955
LOG=N

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

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

10 years agoReland r20974: Unify and simplify the FastCloneShallowArrayStub
danno@chromium.org [Mon, 12 May 2014 07:49:11 +0000 (07:49 +0000)]
Reland r20974: Unify and simplify the FastCloneShallowArrayStub

- Don't bake in length/capacity into full codegen calls of stubs,
allowing boilerplates to increase their capacity without regenerating
code.
- Unify all variants of the clone stub into a single,
length-independent version.
- Various tweaks to make sure that the clone stub doesn't spill and
therefore need an eager stack frame.
- Handle all lengths of array literals in the fast case.

R=mvstanton@chromium.org

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

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

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

10 years agoRevert interrupt handling code changed in r21208.
yangguo@chromium.org [Mon, 12 May 2014 07:43:47 +0000 (07:43 +0000)]
Revert interrupt handling code changed in r21208.

R=svenpanne@chromium.org

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

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

10 years agoDrop unused static microtask API
jochen@chromium.org [Mon, 12 May 2014 07:41:06 +0000 (07:41 +0000)]
Drop unused static microtask API

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

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

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

10 years agoIntroduce an api to query the microtask autorun state of an isolate
jochen@chromium.org [Mon, 12 May 2014 06:27:38 +0000 (06:27 +0000)]
Introduce an api to query the microtask autorun state of an isolate

BUG=none
R=adamk@chromium.org, svenpanne@chromium.org
LOG=y

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

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

10 years agoRevert "MIPS: Reland r20974: Unify and simplify the FastCloneShallowArrayStub."
palfia@homejinni.com [Fri, 9 May 2014 20:18:12 +0000 (20:18 +0000)]
Revert "MIPS: Reland r20974: Unify and simplify the FastCloneShallowArrayStub."

Port r21242 (99bd67aa)

Original commit message:
This breaks nosnap.

BUG=
R=plind44@gmail.com

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

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

10 years agoClean up hash creation code to use Handle<Smi> where possible
adamk@chromium.org [Fri, 9 May 2014 18:31:08 +0000 (18:31 +0000)]
Clean up hash creation code to use Handle<Smi> where possible

Also remove apparently-bogus TODO and reorder arguments in
Object::GetOrCreateHash to put Isolate first (as seems to
be the custom).

R=verwaest@chromium.org

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

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

10 years agoUpdated runtime function counts after r21243
adamk@chromium.org [Fri, 9 May 2014 18:28:11 +0000 (18:28 +0000)]
Updated runtime function counts after r21243

TBR=verwaest@chromium.org

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

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

10 years agoObject.observe: avoid accessing acceptList properties more than once
adamk@chromium.org [Fri, 9 May 2014 18:22:28 +0000 (18:22 +0000)]
Object.observe: avoid accessing acceptList properties more than once

BUG=v8:3315
LOG=Y
R=rossberg@chromium.org

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

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

10 years agoDirectly create API functions with readonly prototypes rather than converting. Remove...
verwaest@chromium.org [Fri, 9 May 2014 17:59:15 +0000 (17:59 +0000)]
Directly create API functions with readonly prototypes rather than converting. Remove FunctionSetReadOnlyPrototype.

BUG=
R=ishell@chromium.org

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

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

10 years agoRevert "Reland r20974: Unify and simplify the FastCloneShallowArrayStub"
verwaest@chromium.org [Fri, 9 May 2014 17:56:55 +0000 (17:56 +0000)]
Revert "Reland r20974: Unify and simplify the FastCloneShallowArrayStub"

This breaks nosnap.

BUG=
R=ishell@chromium.org

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

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

10 years agoRename NewFunction without prototype to NewFunctionWithoutPrototype
verwaest@chromium.org [Fri, 9 May 2014 17:39:54 +0000 (17:39 +0000)]
Rename NewFunction without prototype to NewFunctionWithoutPrototype

BUG=
R=ishell@chromium.org

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

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

10 years agoMIPS: Reland and fix r21225 and r21226.
plind44@gmail.com [Fri, 9 May 2014 17:39:04 +0000 (17:39 +0000)]
MIPS: Reland and fix r21225 and r21226.

Port r21232 (5681b0b)

BUG=
R=plind44@gmail.com

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

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

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

10 years agoMIPS: Reland r20974: Unify and simplify the FastCloneShallowArrayStub.
plind44@gmail.com [Fri, 9 May 2014 17:29:21 +0000 (17:29 +0000)]
MIPS: Reland r20974: Unify and simplify the FastCloneShallowArrayStub.

Port r21230 (56ef3ac)

Original commit message:
- Don't bake in length/capacity into full codegen calls of stubs,
allowing boilerplates to increase their capacity without regenerating
code.
- Unify all variants of the clone stub into a single,
length-independent version.
- Various tweaks to make sure that the clone stub doesn't spill and
therefore need an eager stack frame.
- Handle all lengths of array literals in the fast case.

BUG=
R=plind44@gmail.com

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

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

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

10 years agoAlways set the class name on installed functions if the target is the JSGlobal
verwaest@chromium.org [Fri, 9 May 2014 17:21:51 +0000 (17:21 +0000)]
Always set the class name on installed functions if the target is the JSGlobal

BUG=
R=ishell@chromium.org

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

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

10 years agoReplace NewFunction(MaybeHandle<> prototype by Handle<> prototype
verwaest@chromium.org [Fri, 9 May 2014 16:59:03 +0000 (16:59 +0000)]
Replace NewFunction(MaybeHandle<> prototype by Handle<> prototype

BUG=
R=ishell@chromium.org

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

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

10 years agoRemove "force_initial_map"
verwaest@chromium.org [Fri, 9 May 2014 16:42:57 +0000 (16:42 +0000)]
Remove "force_initial_map"

BUG=
R=ishell@chromium.org

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

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

10 years agoReplace NewFunctionWithPrototype(name, prototype) by NewFunction(name)
verwaest@chromium.org [Fri, 9 May 2014 16:39:33 +0000 (16:39 +0000)]
Replace NewFunctionWithPrototype(name, prototype) by NewFunction(name)

BUG=
R=ishell@chromium.org

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

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

10 years agoArray Iterator prototype should not have a constructor.
verwaest@chromium.org [Fri, 9 May 2014 16:37:04 +0000 (16:37 +0000)]
Array Iterator prototype should not have a constructor.

BUG=v8:3293
LOG=Y
R=verwaest@chromium.org

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

Patch from Erik Arvidsson <arv@chromium.org>.

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

10 years agoMerge NewFunction and NewFunctionWithPrototype
verwaest@chromium.org [Fri, 9 May 2014 16:34:58 +0000 (16:34 +0000)]
Merge NewFunction and NewFunctionWithPrototype

BUG=
R=ishell@chromium.org

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

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

10 years agoReland and fix r21225 and r21226
verwaest@chromium.org [Fri, 9 May 2014 16:18:58 +0000 (16:18 +0000)]
Reland and fix r21225 and r21226

BUG=
R=ishell@chromium.org

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

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

10 years agoFix typos in unit test for Array.prototype.fill()
ishell@chromium.org [Fri, 9 May 2014 16:11:50 +0000 (16:11 +0000)]
Fix typos in unit test for Array.prototype.fill()

BUG=
LOG=y
R=ishell@chromium.org

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

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

10 years agoReland r20974: Unify and simplify the FastCloneShallowArrayStub
danno@chromium.org [Fri, 9 May 2014 15:55:45 +0000 (15:55 +0000)]
Reland r20974: Unify and simplify the FastCloneShallowArrayStub

- Don't bake in length/capacity into full codegen calls of stubs,
allowing boilerplates to increase their capacity without regenerating
code.
- Unify all variants of the clone stub into a single,
length-independent version.
- Various tweaks to make sure that the clone stub doesn't spill and
therefore need an eager stack frame.
- Handle all lengths of array literals in the fast case.

R=mvstanton@chromium.org

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

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

10 years agoMIPS: Improve Array.shift() performance for small arrays.
plind44@gmail.com [Fri, 9 May 2014 15:49:42 +0000 (15:49 +0000)]
MIPS: Improve Array.shift() performance for small arrays.

Port r21203 (eaa92e4)

TEST=mjsunit/array-shift,mjsunit/array-shift2,mjsunit/array-shift3
BUG=
R=plind44@gmail.com

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

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

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

10 years agoPrevent calls to ReturnValue::Set with pointer-valued types.
vogelheim@chromium.org [Fri, 9 May 2014 15:36:51 +0000 (15:36 +0000)]
Prevent calls to ReturnValue::Set with pointer-valued types.
  [2nd try, after the previous version broke the build]

Currently, this code will compile:
SomePointer* p = ...;
ReturnValue r = ...;
r.Set(p);

What happens is that ReturnValue::Set has no pointer-ish overloads, but
a bool one, and hence C++ will convert the pointer to a bool and use
the Set(bool) overload. In other words, the example above is equivalent
to: r.Set(p ? true : false); Which probably isn't what the author had
in mind. This change adds a Set(void*) overload whose body forces a
compile error, to prevent this from happening inadvertently. The only
use of this indeed turned out to be an error.

(Said error was fixed/removed in crrev.com/267393002.)

Why was crrev.com/240013004 reverted?
The orginal version compiled fine on gcc (+ MSVC), but not on clang.
There's no clang try-bots, but the ASAN-based buildbots used clang
and hence the build broke. I'm slightly unsure on why, but clang -
unlike those other compilers - eagerly compiled the non-compilable
setter, which predictably broke. Now, the non-compilable setter uses
the same template logic that all other, comparable cases use. I've
tried 'make qc' with both gcc and clang versions.

BUG=
R=dcarney@chromium.org

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

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

10 years ago[Sheriff] This reverts commits r21225 and r21226 for breaking Linux64 build.
ishell@chromium.org [Fri, 9 May 2014 14:28:59 +0000 (14:28 +0000)]
[Sheriff] This reverts commits r21225 and r21226 for breaking Linux64 build.

Revert "Make BitField3 a raw uint32 field, and move to the start of the map."
Revert "Make space available in bf3 by moving FunctionWithPrototype to bf1"

TBR=verwaest@chromium.org

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

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

10 years agoMake space available in bf3 by moving FunctionWithPrototype to bf1
verwaest@chromium.org [Fri, 9 May 2014 13:20:40 +0000 (13:20 +0000)]
Make space available in bf3 by moving FunctionWithPrototype to bf1

BUG=
R=ishell@chromium.org

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

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

10 years agoMake BitField3 a raw uint32 field, and move to the start of the map.
verwaest@chromium.org [Fri, 9 May 2014 13:18:25 +0000 (13:18 +0000)]
Make BitField3 a raw uint32 field, and move to the start of the map.

BUG=
R=bmeurer@chromium.org

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

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

10 years agoShorten autogenerated error message for functions only.
yangguo@chromium.org [Fri, 9 May 2014 13:14:09 +0000 (13:14 +0000)]
Shorten autogenerated error message for functions only.

R=yangguo@chromium.org, Yang, rossberg@chromium.org
BUG=v8:3019, chromium:331971
LOG=Y

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

Patch from Andrey Adaykin <aandrey@chromium.org>.

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

10 years agoRequire SSE2 support for the ia32 port.
yangguo@chromium.org [Fri, 9 May 2014 13:01:50 +0000 (13:01 +0000)]
Require SSE2 support for the ia32 port.

R=svenpanne@chromium.org

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

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

10 years agoPresubmit checks recover:
ishell@chromium.org [Fri, 9 May 2014 12:59:24 +0000 (12:59 +0000)]
Presubmit checks recover:
1) runtime/references checks temporarily disabled (56 items left)
2) other errors fixed

R=jkummerow@chromium.org

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

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

10 years agoReland - Arm64: Ensure that csp is always aligned to 16 byte values even if jssp...
rmcilroy@chromium.org [Fri, 9 May 2014 12:51:52 +0000 (12:51 +0000)]
Reland - Arm64: Ensure that csp is always aligned to 16 byte values even if jssp is not.

Even although the Arm64 specification specifies that csp
only needs to be aligned to 16 bytes if it is dereferenced, some
implementations show poor performance.

Also makes the following change:
 - Enable CPU support for arm64 to enable probing of cpu implementer and cpu part.
 - Add ALWAYS_ALIGN_CSP CpuFeature for Arm64 and set it based on runtime probing of the cpu imp
 - Rename PrepareForPush and PrepareForPop to PushPreamble and PopPostamble and move PopPostabl

Original Review URL: https://codereview.chromium.org/264773004

R=ulan@chromium.org

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

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

10 years agoAdd flag to set minimum semi-space size.
hpayer@chromium.org [Fri, 9 May 2014 12:37:11 +0000 (12:37 +0000)]
Add flag to set minimum semi-space size.

BUG=
R=mstarzinger@chromium.org

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

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

10 years agoRevert of Prevent calls to ReturnValue::Set with pointer-valued types. (https://coder...
vogelheim@chromium.org [Fri, 9 May 2014 12:33:29 +0000 (12:33 +0000)]
Revert of Prevent calls to ReturnValue::Set with pointer-valued types. (https://codereview.chromium.org/240013004/)

Reason for revert:
Looks like this broke the "V8 Linux64 ASAN" build.

Original issue's description:
> Prevent calls to ReturnValue::Set with pointer-valued types.
>
> Currently, this code will compile:
>   SomePointer* p = ...;
>   ReturnValue r = ...;
>   r.Set(p);
>
> What happens is that ReturnValue::Set has no pointer-ish overloads, but
> a bool one, and hence C++ will convert the pointer to a bool and use
> the Set(bool) overload. In other words, the example above is equivalent
> to: r.Set(p ? true : false); Which probably isn't what the author had
> in mind. This change adds a Set(void*) overload whose body forces a
> compile error, to prevent this from happening inadvertently. The only
> use of this indeed turned out to be an error.
>
> (Said error was fixed/removed in crrev.com/267393002.)
>
> BUG=
> R=dcarney@chromium.org
>
> Committed: https://code.google.com/p/v8/source/detail?r=21217

R=ishell@chromium.org

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

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

10 years agoFix new space array check limit.
bmeurer@chromium.org [Fri, 9 May 2014 12:19:59 +0000 (12:19 +0000)]
Fix new space array check limit.

Also inline BuildNewSpaceArrayCheck() into its caller, because
the name BuildNewSpaceArrayCheck was confusing anyway, since
it has nothing do with new space actually.

R=hpayer@chromium.org

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

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

10 years agoPrevent calls to ReturnValue::Set with pointer-valued types.
vogelheim@chromium.org [Fri, 9 May 2014 12:07:38 +0000 (12:07 +0000)]
Prevent calls to ReturnValue::Set with pointer-valued types.

Currently, this code will compile:
  SomePointer* p = ...;
  ReturnValue r = ...;
  r.Set(p);

What happens is that ReturnValue::Set has no pointer-ish overloads, but
a bool one, and hence C++ will convert the pointer to a bool and use
the Set(bool) overload. In other words, the example above is equivalent
to: r.Set(p ? true : false); Which probably isn't what the author had
in mind. This change adds a Set(void*) overload whose body forces a
compile error, to prevent this from happening inadvertently. The only
use of this indeed turned out to be an error.

(Wait for issue 364025 before submitting.)

BUG=
R=dcarney@chromium.org

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

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

10 years agoEliminate further write barriers for old space allocations.
bmeurer@chromium.org [Fri, 9 May 2014 12:06:48 +0000 (12:06 +0000)]
Eliminate further write barriers for old space allocations.

Storing a map or an immortal immovable object to old space
allocations requires no write barriers if the object is the
new space dominator.

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

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

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

10 years agoUse HType::NonPrimitive() for unclassified HeapObjects (i.e. Maps).
bmeurer@chromium.org [Fri, 9 May 2014 12:05:56 +0000 (12:05 +0000)]
Use HType::NonPrimitive() for unclassified HeapObjects (i.e. Maps).

R=verwaest@chromium.org

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

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

10 years agoFixed d8 shutdown.
svenpanne@chromium.org [Fri, 9 May 2014 11:29:29 +0000 (11:29 +0000)]
Fixed d8 shutdown.

It is crucial that the Isolate is cleanly disposed, otherwise the
optimizing compiler thread happily continues to run.

R=yangguo@chromium.org

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

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

10 years agoSync change log and version file with trunk.
machenbach@chromium.org [Fri, 9 May 2014 11:17:45 +0000 (11:17 +0000)]
Sync change log and version file with trunk.

BUG=
R=ishell@chromium.org

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

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

10 years agoClean up Debugger::NotifyMessageHandler.
yangguo@chromium.org [Fri, 9 May 2014 09:24:32 +0000 (09:24 +0000)]
Clean up Debugger::NotifyMessageHandler.

R=ulan@chromium.org

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

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

10 years agoMake new space iterable for --log-gc and --heap-stats options
jarin@chromium.org [Fri, 9 May 2014 09:23:10 +0000 (09:23 +0000)]
Make new space iterable for --log-gc and --heap-stats options

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

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

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

10 years agoClean up stack guard interrupts.
yangguo@chromium.org [Fri, 9 May 2014 09:13:12 +0000 (09:13 +0000)]
Clean up stack guard interrupts.

R=jkummerow@chromium.org

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

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