platform/upstream/v8.git
10 years agoRemove flag track-allocation-sites.
mvstanton@chromium.org [Fri, 20 Dec 2013 11:46:31 +0000 (11:46 +0000)]
Remove flag track-allocation-sites.

The flag has been on in the build for ~9 months, and we aren't likely to turn it off. The only customer of the flag is a set of tests that want to verify transitioning behavior in isolation. This CL removes the flag and updates those tests to get what they want without the flag.

R=verwaest@chromium.org

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

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

10 years agoRevert "More API cleanup."
svenpanne@chromium.org [Fri, 20 Dec 2013 11:35:53 +0000 (11:35 +0000)]
Revert "More API cleanup."

This reverts r18383. The CL in itself is OK, we just have to wait until Chrome's commit queue lands the final corresponding change and re-land this CL. :-/

TBR=hpayer@chromium.org

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

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

10 years agoMore API cleanup.
svenpanne@chromium.org [Fri, 20 Dec 2013 10:49:27 +0000 (10:49 +0000)]
More API cleanup.

* Removed String::Empty, Number::New, Integer::New, Integer::NewFromUnsigned, FunctionTemplate::New and Object::New without Isolate* parameter.

* Removed Integer::New and Integer::NewUnsigned with weird argument order.

Chrome CLs matching this change are prepared, BTW.

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

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

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

10 years agoAlways terminate the task queue
jochen@chromium.org [Fri, 20 Dec 2013 09:09:04 +0000 (09:09 +0000)]
Always terminate the task queue

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

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

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

10 years agoLazily initialize thread pool to avoid allocating all the threads during startup
jochen@chromium.org [Fri, 20 Dec 2013 08:34:42 +0000 (08:34 +0000)]
Lazily initialize thread pool to avoid allocating all the threads during startup

R=hpayer@chromium.org
BUG=none
LOG=n

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

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

10 years ago[platform] Implement a worker pool
jochen@chromium.org [Fri, 20 Dec 2013 07:52:58 +0000 (07:52 +0000)]
[platform] Implement a worker pool

We don't use the worker pool yet, however, there are tests. Yay. The
next step is to use the worker pool for parallel sweeping.

I've also started to move the platform related files into a sub
directory. The goal is to eventually build all the platform stuff as
a separate library which is used by d8 and cctest (and other embedders
that wish to use the default implementation) but not by chromium.

BUG=v8:3015
R=hpayer@chromium.org, svenpanne@chromium.org
LOG=n

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

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

10 years agoFix number of parameters passed into PrepareCallCFunction in code age stubs
yurys@chromium.org [Fri, 20 Dec 2013 07:46:02 +0000 (07:46 +0000)]
Fix number of parameters passed into PrepareCallCFunction in code age stubs

In r16710 Additional parameter (Isolate) was added to parameter lists of some native functions called from the generated code. However, corresponding PrepareCallCFunction arguments changed only on i32. This CL updates other architectures to match actual value.

BUG=None
LOG=None
R=dcarney@chromium.org

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

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

10 years agoAvoid SLOW_ASSERT when calling HeapGraphNode::GetChildrenCount
yurys@chromium.org [Fri, 20 Dec 2013 07:33:22 +0000 (07:33 +0000)]
Avoid SLOW_ASSERT when calling HeapGraphNode::GetChildrenCount

It may occur that GetChildrenCount is called on the node which has no children and stored last in the internal nodes array. In that case HeapEntry::children_arr() would fail when taking address of the element at index children_index_ which is past the last element in the children's array.

BUG=None
LOG=N
R=alph@chromium.org, ulan@chromium.org

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

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

10 years agoImprove check elimination with branch sensitivity on HCompareObjectEqAndBranch.
titzer@chromium.org [Thu, 19 Dec 2013 17:42:21 +0000 (17:42 +0000)]
Improve check elimination with branch sensitivity on HCompareObjectEqAndBranch.

BUG=
R=mvstanton@chromium.org

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

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

10 years agoTry fixing NaCl V8 compilation failure by initializing interrupt_callback_data_.
vegorov@chromium.org [Thu, 19 Dec 2013 17:09:38 +0000 (17:09 +0000)]
Try fixing NaCl V8 compilation failure by initializing interrupt_callback_data_.

TBR=dcarney@chromium.org
BUG=

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

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

10 years agoReland r18363.
vegorov@chromium.org [Thu, 19 Dec 2013 16:45:58 +0000 (16:45 +0000)]
Reland r18363.

Introduce API to temporarily interrupt long running JavaScript code.

It is different from termination API as interrupted JavaScript will continue to execute normally when registered InterruptCallback returns.

  /**
   * Request V8 to interrupt long running JavaScript code and invoke
   * the given |callback| passing the given |data| to it. After |callback|
   * returns control will be returned to the JavaScript code.
   * At any given moment V8 can remember only a single callback for the very
   * last interrupt request.
   * Can be called from another thread without acquiring a |Locker|.
   * Registered |callback| must not reenter interrupted Isolate.
   */
  void RequestInterrupt(InterruptCallback callback, void* data);

  /**
   * Clear interrupt request created by |RequestInterrupt|.
   * Can be called from another thread without acquiring a |Locker|.
   */
  void ClearInterrupt();

Fix Hydrogen SCE pass to avoid eliminating stack guards too aggressively. Only normal JavaScript functions are guaranteed to have stack guard in the prologue. If function is a builtin or has a custom call IC it will lack one.

Changes from r18363:

- includes r18364 to fix compilation errors: removes debugging only code;

- makes interrupiton related tests not threaded, because they rely on having exclusive access to the V8 instance and the fact that they can only interrupt themselves, if they are interrupted from the outside they break;

- changes HasStackCheck predicate used during SCE pass to avoid handles dereference to make SCE compatible with parallel recompilation.

R=dcarney@chromium.org

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

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

10 years agoUse concurrent sweeping instead of parallel sweeping by default.
jochen@chromium.org [Thu, 19 Dec 2013 16:04:08 +0000 (16:04 +0000)]
Use concurrent sweeping instead of parallel sweeping by default.

LOG=n
R=hpayer@chromium.org, mstarzinger@chromium.org
BUG=none

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

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

10 years agoPrepare push to trunk. Now working on version 3.24.6.
hpayer@chromium.org [Thu, 19 Dec 2013 16:02:43 +0000 (16:02 +0000)]
Prepare push to trunk.  Now working on version 3.24.6.

R=jkummerow@chromium.org
BUG=

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

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

10 years agoFix switch statements with non-Smi integer labels and no type feedback
jkummerow@chromium.org [Thu, 19 Dec 2013 14:25:58 +0000 (14:25 +0000)]
Fix switch statements with non-Smi integer labels and no type feedback

BUG=chromium:329709
LOG=Y
R=hpayer@chromium.org

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

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

10 years agoPretty printing for array code stubs. The minor keys encode things like specialized...
mvstanton@chromium.org [Wed, 18 Dec 2013 22:51:23 +0000 (22:51 +0000)]
Pretty printing for array code stubs. The minor keys encode things like specialized ElementsKind for each stub. This can be useful to see in disassembly traces.

R=bmeurer@chromium.org

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

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

10 years agoPretenure mode was erroneously consulted in FastCloneShallowObjectStub.
mvstanton@chromium.org [Wed, 18 Dec 2013 22:43:56 +0000 (22:43 +0000)]
Pretenure mode was erroneously consulted in FastCloneShallowObjectStub.

FastCloneShallowObjectStub is only called from full code. When the code
is optimized, then we'll inline the cloning and respect pretenure mode.

R=hpayer@chromium.org

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

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

10 years agoUse an allocation site scratchpad to speed up allocaton site processing during gc.
hpayer@chromium.org [Wed, 18 Dec 2013 21:23:56 +0000 (21:23 +0000)]
Use an allocation site scratchpad to speed up allocaton site processing during gc.

BUG=
R=mvstanton@chromium.org

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

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

10 years agoGeneralize AllocationMemento::FindForHeapObject and remove corresponding new space...
hpayer@chromium.org [Wed, 18 Dec 2013 20:08:54 +0000 (20:08 +0000)]
Generalize AllocationMemento::FindForHeapObject and remove corresponding new space check.

BUG=
R=mvstanton@chromium.org

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

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

10 years agoRevert "Introduce API to temporarily interrupt long running JavaScript code."
vegorov@chromium.org [Wed, 18 Dec 2013 19:21:27 +0000 (19:21 +0000)]
Revert "Introduce API to temporarily interrupt long running JavaScript code."

This reverts commit r18363.

Revert "Fix compilation error introduced by r18363."

This reverts commit r18364.

Changes in SCE pass are incompatible with parallel compilation

TBR=dcarney@chromium.org
BUG=

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

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

10 years agoFix compilation error introduced by r18363.
vegorov@chromium.org [Wed, 18 Dec 2013 19:01:02 +0000 (19:01 +0000)]
Fix compilation error introduced by r18363.

Remove debugging related code.

TBR=dcarney@chromium.org

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

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

10 years agoIntroduce API to temporarily interrupt long running JavaScript code.
vegorov@chromium.org [Wed, 18 Dec 2013 18:38:35 +0000 (18:38 +0000)]
Introduce API to temporarily interrupt long running JavaScript code.

It is different from termination API as interrupted JavaScript will continue to execute normally when registered InterruptCallback returns.

  /**
   * Request V8 to interrupt long running JavaScript code and invoke
   * the given |callback| passing the given |data| to it. After |callback|
   * returns control will be returned to the JavaScript code.
   * At any given moment V8 can remember only a single callback for the very
   * last interrupt request.
   * Can be called from another thread without acquiring a |Locker|.
   * Registered |callback| must not reenter interrupted Isolate.
   */
  void RequestInterrupt(InterruptCallback callback, void* data);

  /**
   * Clear interrupt request created by |RequestInterrupt|.
   * Can be called from another thread without acquiring a |Locker|.
   */
  void ClearInterrupt();

Fix Hydrogen SCE pass to avoid eliminating stack guards too aggressively. Only normal JavaScript functions are guaranteed to have stack guard in the prologue. If function is a builtin or has a custom call IC it will lack one.

BUG=
R=danno@chromium.org, dcarney@chromium.org

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

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

10 years agoHStoreKeyed for Smis optimized for x64 + related redundant moves of elements removed
ishell@chromium.org [Wed, 18 Dec 2013 18:05:10 +0000 (18:05 +0000)]
HStoreKeyed for Smis optimized for x64 + related redundant moves of elements removed

R=verwaest@chromium.org

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

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

10 years agoMIPS: Enable optimization of functions with generic switches.
palfia@homejinni.com [Wed, 18 Dec 2013 17:56:30 +0000 (17:56 +0000)]
MIPS: Enable optimization of functions with generic switches.

Port r18347 (64ac25c)

Fix of r18351

BUG=
R=hpayer@chromium.org

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

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

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

10 years agoHStoreNamedField for Smis optimized for x64
ishell@chromium.org [Wed, 18 Dec 2013 17:53:50 +0000 (17:53 +0000)]
HStoreNamedField for Smis optimized for x64

R=verwaest@chromium.org

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

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

10 years agoHLoadKeyed for Smis optimized for x64
ishell@chromium.org [Wed, 18 Dec 2013 17:40:53 +0000 (17:40 +0000)]
HLoadKeyed for Smis optimized for x64

R=verwaest@chromium.org

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

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

10 years ago--predictable mode added
ishell@chromium.org [Wed, 18 Dec 2013 17:31:12 +0000 (17:31 +0000)]
--predictable mode added

R=hpayer@chromium.org

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

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

10 years agoImprove ==/=== comparison in Hydrogen for monomorphic maps
danno@chromium.org [Wed, 18 Dec 2013 17:18:23 +0000 (17:18 +0000)]
Improve ==/=== comparison in Hydrogen for monomorphic maps

R=titzer@chromium.org

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

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

10 years agoUse constant 0 instead of constant null when clearing map words during allocation...
hpayer@chromium.org [Wed, 18 Dec 2013 17:16:25 +0000 (17:16 +0000)]
Use constant 0 instead of constant null when clearing map words during allocation folding.

BUG=
R=bmeurer@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.24.5.
hpayer@chromium.org [Wed, 18 Dec 2013 16:20:59 +0000 (16:20 +0000)]
Prepare push to trunk.  Now working on version 3.24.5.

R=jkummerow@chromium.org
BUG=

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

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

10 years agoBump codesize limit for OSR.
verwaest@chromium.org [Wed, 18 Dec 2013 16:17:42 +0000 (16:17 +0000)]
Bump codesize limit for OSR.

R=jkummerow@chromium.org

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

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

10 years agoFix MIPS switch statement breakage.
hpayer@chromium.org [Wed, 18 Dec 2013 15:31:41 +0000 (15:31 +0000)]
Fix MIPS switch statement breakage.

BUG=

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

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

10 years agoHandle Math.log(NaN) correctly in Crankshaft on Intel platforms.
svenpanne@chromium.org [Wed, 18 Dec 2013 13:31:16 +0000 (13:31 +0000)]
Handle Math.log(NaN) correctly in Crankshaft on Intel platforms.

This never worked...

TBR=yangguo@chromium.org

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

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

10 years agoImprove the fix for r18344.
svenpanne@chromium.org [Wed, 18 Dec 2013 12:09:14 +0000 (12:09 +0000)]
Improve the fix for r18344.

Our toolchains differ in mysterious ways, especially regarding
overloading resolution, templates, etc. :-P This fix avoids a
call/return just for resolution and uses a static_cast instead.

R=dcarney@chromium.org

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

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

10 years agoHydrogen: Re-use regular comparisons infrastructure for switch statements
jkummerow@chromium.org [Wed, 18 Dec 2013 11:58:58 +0000 (11:58 +0000)]
Hydrogen: Re-use regular comparisons infrastructure for switch statements

R=rossberg@chromium.org

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

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

10 years agoEnable optimization of functions with generic switches.
verwaest@chromium.org [Wed, 18 Dec 2013 11:44:38 +0000 (11:44 +0000)]
Enable optimization of functions with generic switches.

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

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

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

10 years agoFixed Windows build (hopefully).
svenpanne@chromium.org [Wed, 18 Dec 2013 11:27:18 +0000 (11:27 +0000)]
Fixed Windows build (hopefully).

TBR=dcarney@chromium.org

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

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

10 years agoFix build after r18344
jkummerow@chromium.org [Wed, 18 Dec 2013 11:08:10 +0000 (11:08 +0000)]
Fix build after r18344

"log" is an overloaded function, it cannot be resolved without explicit parameter type information

TBR=svenpanne@chromium.org

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

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

10 years agoRemove the last remnants of the TranscendentalCache.
svenpanne@chromium.org [Wed, 18 Dec 2013 10:40:26 +0000 (10:40 +0000)]
Remove the last remnants of the TranscendentalCache.

It was only used for Math.log, and even then only in full code and in %_MathLog. For crankshafted code, Intel already used the FP operations directly, while the ARM/MIPS ports were a bit lazy and simply called the stub. The latter directly call the C library now without any cache. It would be possible to directly generate machine code if somebody has the time, from what I've seen out in the wild it should be only about a dozen instructions.

LOG=y
R=yangguo@chromium.org

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

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

10 years agoCollect type information based on stack allocated values for OSR.
yangguo@chromium.org [Wed, 18 Dec 2013 10:38:58 +0000 (10:38 +0000)]
Collect type information based on stack allocated values for OSR.

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

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

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

10 years agoRemoved internal uses of (almost) deprecated FunctionTemplate::New version.
svenpanne@chromium.org [Wed, 18 Dec 2013 10:31:42 +0000 (10:31 +0000)]
Removed internal uses of (almost) deprecated FunctionTemplate::New version.

LOG=y
R=dcarney@chromium.org

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

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

10 years agoRemoved unused ShouldTrackAllocationInfo method.
hpayer@chromium.org [Wed, 18 Dec 2013 10:30:31 +0000 (10:30 +0000)]
Removed unused ShouldTrackAllocationInfo method.

BUG=
R=mvstanton@chromium.org

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

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

10 years agoFix Linux shared compilation after r18337
yurys@chromium.org [Wed, 18 Dec 2013 09:52:37 +0000 (09:52 +0000)]
Fix Linux shared compilation after r18337

BUG=chromium:327298
LOG=N
TBR=hpayer@chromium.org

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

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

10 years agoFix debug compilation after r18337
yurys@chromium.org [Wed, 18 Dec 2013 09:12:31 +0000 (09:12 +0000)]
Fix debug compilation after r18337

BUG=chromium:327298
LOG=N
TBR=hpayer@chromium.org

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

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

10 years agoDelete several deprecated methods on v8::CpuProfiler
yurys@chromium.org [Wed, 18 Dec 2013 08:59:09 +0000 (08:59 +0000)]
Delete several deprecated methods on v8::CpuProfiler

All methods for accessing collected profiles by index are deprecated. The indexed storage may well be implemented by the embedder should he need it. CpuProfiler's responsibility is just to create CpuProfile object that contains all collected data and whose lifetime can be managed by the embedder.

BUG=chromium:327298
LOG=Y
R=svenpanne@chromium.org

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

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

10 years agoRoll ICU 214189:239289
jochen@chromium.org [Wed, 18 Dec 2013 08:47:12 +0000 (08:47 +0000)]
Roll ICU 214189:239289

Too many updates to summarize them here.

This version of ICU allows for using a .dat file on posix systems that is mmaped
instead of compiling the data in like we currently do.

BUG=72633
LOG=n
R=jshin@chromium.org, machenbach@chromium.org

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

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

10 years agoInitialize the embedder data array on v8::Context to three elements
jochen@chromium.org [Wed, 18 Dec 2013 08:45:17 +0000 (08:45 +0000)]
Initialize the embedder data array on v8::Context to three elements

Blink uses three slots, so instead of having to reallocate the array
everytime, make it big enough to begin with.

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

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

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

10 years agoAdd methods for finding object by its snapshot id and id for an object
yurys@chromium.org [Wed, 18 Dec 2013 08:17:03 +0000 (08:17 +0000)]
Add methods for finding object by its snapshot id and id for an object

Object<-->id mapping doesn't depend on a particular snapshot, actually same object may appear in several heap snapshots. The API for converting between id and heap object should be provided by HeapProfiler itself. There is already GetObjectId method which I extended with FindObjectById/ClearObjectIds. As the next step I'm going to deprecate and remove HeapGraphNode::GetHeapValue.

BUG=chromium:324769
LOG=N
R=alph@chromium.org, hpayer@chromium.org, mstarzinger@chromium.org

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

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

10 years agoRemove all stuff marked as V8_DEPRECATED.
svenpanne@chromium.org [Wed, 18 Dec 2013 08:09:37 +0000 (08:09 +0000)]
Remove all stuff marked as V8_DEPRECATED.

R=jochen@chromium.org, mstarzinger@chromium.org, yurys@chromium.org

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

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

10 years agoMake offsets to inner allocated objects aligned in allocation folding.
plind44@gmail.com [Wed, 18 Dec 2013 04:27:48 +0000 (04:27 +0000)]
Make offsets to inner allocated objects aligned in allocation folding.

Folded allocations marked for double alignment is not aligned if old dominator
size is used for offset to inner object.

TEST=mjsunit/big-array-literal on MIPS
BUG=
R=hpayer@chromium.org

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

Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.

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

10 years agoPrepare push to trunk. Now working on version 3.24.4.
danno@chromium.org [Tue, 17 Dec 2013 22:11:27 +0000 (22:11 +0000)]
Prepare push to trunk.  Now working on version 3.24.4.

R=hpayer@google.com, hpayer@chromium.org

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

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

10 years agoMIPS: Move the receiver into r0 for PatchGlobalProxy.
palfia@homejinni.com [Tue, 17 Dec 2013 18:41:35 +0000 (18:41 +0000)]
MIPS: Move the receiver into r0 for PatchGlobalProxy.

Port r18327 (372ee171)

Original commit message:
This fixes the ARM/android bug http://build.chromium.org/p/tryserver.chromium/builders/android_dbg_triggered_tests/builds/112686/steps/androidwebview_instrumentation_tests

BUG=
R=plind44@gmail.com

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

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

10 years agoMove the receiver into r0 for PatchGlobalProxy.
verwaest@chromium.org [Tue, 17 Dec 2013 17:36:39 +0000 (17:36 +0000)]
Move the receiver into r0 for PatchGlobalProxy.
This fixes the ARM/android bug http://build.chromium.org/p/tryserver.chromium/builders/android_dbg_triggered_tests/builds/112686/steps/androidwebview_instrumentation_tests TBR=dcarney@chromium.org

BUG=

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

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

10 years agoAdd settings for try server.
machenbach@chromium.org [Tue, 17 Dec 2013 12:24:25 +0000 (12:24 +0000)]
Add settings for try server.

BUG=324775
R=jkummerow@chromium.org

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

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

10 years agoFix NotifyStubFailureSaveDoubles generation for ia32.
ulan@chromium.org [Tue, 17 Dec 2013 09:09:55 +0000 (09:09 +0000)]
Fix NotifyStubFailureSaveDoubles generation for ia32.

R=jkummerow@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.24.3.
hpayer@chromium.org [Tue, 17 Dec 2013 07:52:27 +0000 (07:52 +0000)]
Prepare push to trunk.  Now working on version 3.24.3.

R=svenpanne@chromium.org
BUG=

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

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

10 years agoFix standalone Android and NaCl Makefiles to support arm_version=7 and optdebug
jkummerow@chromium.org [Mon, 16 Dec 2013 15:50:34 +0000 (15:50 +0000)]
Fix standalone Android and NaCl Makefiles to support arm_version=7 and optdebug

R=ulan@chromium.org

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

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

10 years agoFlush instruction cache for deserialized code objects.
ulan@chromium.org [Mon, 16 Dec 2013 13:08:24 +0000 (13:08 +0000)]
Flush instruction cache for deserialized code objects.

This fixes the flaky crashes on ARM when running preparser test suite in
optdebug mode.

R=svenpanne@chromium.org

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

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

10 years agoAdd named options to push-to-trunk script.
machenbach@chromium.org [Mon, 16 Dec 2013 10:56:52 +0000 (10:56 +0000)]
Add named options to push-to-trunk script.

Also make sure that on exceptions from the test infrastructure there is no retry.

BUG=
R=ulan@chromium.org

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

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

10 years agoPrepare push to trunk. Now working on version 3.24.2.
jkummerow@chromium.org [Fri, 13 Dec 2013 15:13:13 +0000 (15:13 +0000)]
Prepare push to trunk.  Now working on version 3.24.2.

R=ulan@chromium.org
TBR=ulan@chromium.org

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

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

10 years agoEnsure that Code objects' kind specific flags are initialized properly.
jkummerow@chromium.org [Fri, 13 Dec 2013 10:27:19 +0000 (10:27 +0000)]
Ensure that Code objects' kind specific flags are initialized properly.

Also, have the stub cache set a valid MajorKey on stubs it creates.
Getting weird random bits frightens and confuses the poor simple type feedback oracle.

R=hpayer@chromium.org

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

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

10 years agoFix off-by-one error in AstTyper, part 2.
yangguo@chromium.org [Thu, 12 Dec 2013 15:19:57 +0000 (15:19 +0000)]
Fix off-by-one error in AstTyper, part 2.

R=jkummerow@chromium.org

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

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

10 years agoFix polymorphic inlined calls with migrating prototypes
jkummerow@chromium.org [Thu, 12 Dec 2013 14:57:00 +0000 (14:57 +0000)]
Fix polymorphic inlined calls with migrating prototypes

LOG=Y
R=verwaest@chromium.org

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

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

10 years agoAdd last-push check to automatic push-to-trunk script.
machenbach@chromium.org [Wed, 11 Dec 2013 15:27:38 +0000 (15:27 +0000)]
Add last-push check to automatic push-to-trunk script.

Make sure the script is not trying a push-to-trunk twice in a row.

This also passes through some command line parameters.

TEST=python -m unittest test_scripts.ScriptTest.testCheckLastPushRecently
R=ulan@chromium.org

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

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

10 years agoMake squash commits step more pythony in push-to-trunk script.
machenbach@chromium.org [Wed, 11 Dec 2013 15:05:53 +0000 (15:05 +0000)]
Make squash commits step more pythony in push-to-trunk script.

Get rid of linux-only shell commands. Solve issue with quotation marks in commit messages.

Further behavioral change: Strip white space on line endings. Strip trailing new lines.

Test=python -m unittest test_scripts

R=ulan@chromium.org

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

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

10 years agoDo not stop profiling if all finished profiles were deleted
yurys@chromium.org [Wed, 11 Dec 2013 14:39:18 +0000 (14:39 +0000)]
Do not stop profiling if all finished profiles were deleted

Deleting finished profiles shouldn't interrupt profile recording.

BUG=chromium:327298
LOG=N
R=alph@chromium.org, jkummerow@chromium.org

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

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

10 years agoFixed global object leak caused by overwriting the global receiver (the global proxy...
verwaest@chromium.org [Wed, 11 Dec 2013 13:51:48 +0000 (13:51 +0000)]
Fixed global object leak caused by overwriting the global receiver (the global proxy) in the global object with the global object itself.

This CL additionally removes the API function to reattach a global proxy to a
global object.

BUG=324812
LOG=y
R=dcarney@chromium.org, titzer@chromium.org

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

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

10 years agoInitialize Date parse cache with SMI instead of double to workaround sharing mutable...
ulan@chromium.org [Wed, 11 Dec 2013 13:11:44 +0000 (13:11 +0000)]
Initialize Date parse cache with SMI instead of double to workaround sharing mutable heap numbers in snapshot.

This is the only field in the snapshot that was tracked as double.

R=verwaest@chromium.org
TEST=mjsunit/regress/regress-280531.js
BUG=280531
LOG=Y

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

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

10 years agoSwitch armv7 setting to arm_version==7 in v8 gyp files
jkummerow@chromium.org [Wed, 11 Dec 2013 11:58:07 +0000 (11:58 +0000)]
Switch armv7 setting to arm_version==7 in v8 gyp files

BUG=chromium:234135
LOG=Y
R=jkummerow@chromium.org

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

Patch from Mostyn Bramley-Moore <mostynb@opera.com>.

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

10 years agoFix off-by-one error in AstTyper.
yangguo@chromium.org [Wed, 11 Dec 2013 11:34:09 +0000 (11:34 +0000)]
Fix off-by-one error in AstTyper.

This causes the first parameter to be confused with the first
stack local when we collect type information.

R=jkummerow@chromium.org

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

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

10 years agoMIPS: Fix popping order on ARM.
palfia@homejinni.com [Tue, 10 Dec 2013 23:03:56 +0000 (23:03 +0000)]
MIPS: Fix popping order on ARM.

Port r18291 (f5a50cf3)

BUG=
R=gergely@homejinni.com

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

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

10 years agoMIPS: Properly restore the receiver after the interceptor call.
palfia@homejinni.com [Tue, 10 Dec 2013 23:01:40 +0000 (23:01 +0000)]
MIPS: Properly restore the receiver after the interceptor call.

Port r18289 (6bc886d3)

BUG=
R=gergely@homejinni.com

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

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

10 years agoMIPS: Fix patching the receiver (global object -> global proxy) after the interceptor.
palfia@homejinni.com [Tue, 10 Dec 2013 23:00:10 +0000 (23:00 +0000)]
MIPS: Fix patching the receiver (global object -> global proxy) after the interceptor.

Port r18286 (f6277add)

Original commit message:
This is a temporary fix that will be replaced by loading the proxy from the target function.

BUG=
R=gergely@homejinni.com

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

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

10 years agoPush receiver and holder separately, given that they can be the same.
verwaest@chromium.org [Tue, 10 Dec 2013 22:43:15 +0000 (22:43 +0000)]
Push receiver and holder separately, given that they can be the same.

TBR=dcarney@chromium.org

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

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

10 years agoFix popping order on ARM.
verwaest@chromium.org [Tue, 10 Dec 2013 16:28:58 +0000 (16:28 +0000)]
Fix popping order on ARM.

R=dcarney@chromium.org

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

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

10 years agoAdded regression test for escape analysis.
hpayer@chromium.org [Tue, 10 Dec 2013 15:54:20 +0000 (15:54 +0000)]
Added regression test for escape analysis.

BUG=
R=jarin@chromium.org

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

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

10 years agoProperly restore the receiver after the interceptor call.
verwaest@chromium.org [Tue, 10 Dec 2013 14:36:10 +0000 (14:36 +0000)]
Properly restore the receiver after the interceptor call.

R=dcarney@chromium.org

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

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

10 years agoUse FAR jump in GenerateCompareFlatAsciiStrings.
dslomov@chromium.org [Tue, 10 Dec 2013 14:28:41 +0000 (14:28 +0000)]
Use  FAR jump in GenerateCompareFlatAsciiStrings.

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

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

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

10 years agoAdd a regression test for boolean concatenation in strings.
titzer@chromium.org [Tue, 10 Dec 2013 14:05:25 +0000 (14:05 +0000)]
Add a regression test for boolean concatenation in strings.

BUG=
R=bmeurer@chromium.org

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

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

10 years agoFix patching the receiver (global object -> global proxy) after the interceptor.
verwaest@chromium.org [Tue, 10 Dec 2013 13:11:08 +0000 (13:11 +0000)]
Fix patching the receiver (global object -> global proxy) after the interceptor.

This is a temporary fix that will be replaced by loading the proxy from the target function.

R=dcarney@chromium.org

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

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

10 years agoTrack *all* external strings in the external string table.
yangguo@chromium.org [Tue, 10 Dec 2013 12:11:45 +0000 (12:11 +0000)]
Track *all* external strings in the external string table.

Up till now, external strings may be tracked in the string table
(for internalized strings) or the external string table, depending
on in which order internalize and externalize happened.

The internalized string table should not have to deal with external
strings, all of which should be tracked by the external string table.

R=svenpanne@chromium.org
BUG=326489
LOG=N

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

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

10 years agoIncrease number of available major keys.
bmeurer@chromium.org [Tue, 10 Dec 2013 09:44:44 +0000 (09:44 +0000)]
Increase number of available major keys.

This also adds a static assert checking that we do not
exceed the available number of major keys. The safepoint
table offset is now max 2^24 instead of 2^25.

R=hpayer@chromium.org

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

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

10 years agoHLoadNamedField for Smis optimized for x64
ishell@chromium.org [Mon, 9 Dec 2013 16:51:57 +0000 (16:51 +0000)]
HLoadNamedField for Smis optimized for x64

R=verwaest@chromium.org

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

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

10 years agox64: save a bit code size
verwaest@chromium.org [Mon, 9 Dec 2013 16:41:42 +0000 (16:41 +0000)]
x64: save a bit code size

It would be better use macro always

BUG=
R=verwaest@chromium.org

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

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

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

10 years agoPrepare push to trunk. Now working on version 3.24.1.
machenbach@chromium.org [Mon, 9 Dec 2013 16:11:54 +0000 (16:11 +0000)]
Prepare push to trunk.  Now working on version 3.24.1.

R=jkummerow@chromium.org
TBR=jkummerow@chromium.org

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

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

10 years agoFast-forward version number on bleeding_edge to 3.24.0
machenbach@chromium.org [Mon, 9 Dec 2013 16:00:58 +0000 (16:00 +0000)]
Fast-forward version number on bleeding_edge to 3.24.0

BUG=
R=jkummerow@chromium.org

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

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

10 years agoAvoid FP exceptions when doing integer division.
svenpanne@chromium.org [Mon, 9 Dec 2013 10:15:19 +0000 (10:15 +0000)]
Avoid FP exceptions when doing integer division.

BUG=v8:3039
R=titzer@chromium.org

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

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

10 years agoFix trivial error when building with clang.
svenpanne@chromium.org [Mon, 9 Dec 2013 10:14:20 +0000 (10:14 +0000)]
Fix trivial error when building with clang.

$ ninja -C out/Debug
...

../../src/d8.cc:171:11: error: unused variable 'MB'
[-Werror,-Wunused-const-variable]
const int MB = 1024 * 1024;
          ^
          1 error generated.

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

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

Patch from Thiago Farina <tfarina@chromium.org>.

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

10 years agoReplace 'operator*' with explicit 'get' method on SmartPointer
yurys@chromium.org [Mon, 9 Dec 2013 07:41:20 +0000 (07:41 +0000)]
Replace 'operator*' with explicit 'get' method on SmartPointer

Made operator* return reference to the raw type, not pointer. New method 'get()' should be used when raw pointer is needed.

Also removed useless inline modifier from the SmaprtPointer methods and added const modifier to the methods that don't change smart pointer.

Made ~SmartPointerBase protected to avoid accidental calls of the non-virtual base class's destructor.

drive-by: fixed use after free in src/factory.cc

BUG=None
LOG=N
R=alph@chromium.org, svenpanne@chromium.org

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

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

10 years agoMIPS: Faster memcpy.
plind44@gmail.com [Fri, 6 Dec 2013 16:23:49 +0000 (16:23 +0000)]
MIPS: Faster memcpy.

BUG=
R=jkummerow@chromium.org, plind44@gmail.com

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

Patch from yuyin QQ <xwafish@gmail.com>.

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

10 years agoMIPS: Fix compilation with clang.
plind44@gmail.com [Fri, 6 Dec 2013 14:14:32 +0000 (14:14 +0000)]
MIPS: Fix compilation with clang.

Port r18267 (12a613f)

BUG=
R=gergely@homejinni.com

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

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

10 years agoFix compilation with clang
jkummerow@chromium.org [Fri, 6 Dec 2013 11:45:26 +0000 (11:45 +0000)]
Fix compilation with clang

R=bmeurer@chromium.org

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

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

10 years agoRemove outdated profiler flags
jkummerow@chromium.org [Fri, 6 Dec 2013 09:52:40 +0000 (09:52 +0000)]
Remove outdated profiler flags

R=yangguo@chromium.org

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

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

10 years agoBugfix: HCheckInstanceType::GetCheckMaskAndTag used an incorrect mask.
mvstanton@chromium.org [Fri, 6 Dec 2013 09:43:07 +0000 (09:43 +0000)]
Bugfix: HCheckInstanceType::GetCheckMaskAndTag used an incorrect mask.

The mask to check for an internalized string was incorrectly formed. Hat
tip to Weiliang Lin for discovering the bug.

BUG=v8:3038
LOG=N
R=yangguo@chromium.org

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

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

10 years agoMIPS: Fix parameter passing in callback store ics on arm
palfia@homejinni.com [Thu, 5 Dec 2013 20:27:43 +0000 (20:27 +0000)]
MIPS: Fix parameter passing in callback store ics on arm

Port r18260 (d708e244)

BUG=
R=gergely@homejinni.com

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

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

10 years agoFix loop side-effects of deoptimizing loops with a nested live OSR loop.
verwaest@chromium.org [Thu, 5 Dec 2013 18:31:06 +0000 (18:31 +0000)]
Fix loop side-effects of deoptimizing loops with a nested live OSR loop.

R=titzer@chromium.org

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

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

10 years agoAdd tests and extension verifying CHECK and ASSERT.
machenbach@chromium.org [Thu, 5 Dec 2013 17:26:22 +0000 (17:26 +0000)]
Add tests and extension verifying CHECK and ASSERT.

The new native functions can also be used in blink tests to ensure that V8 asserts are turned on where they should be.

BUG=
R=dslomov@chromium.org

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

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

10 years agoFix incorrect patching for OSR.
yangguo@chromium.org [Thu, 5 Dec 2013 16:17:44 +0000 (16:17 +0000)]
Fix incorrect patching for OSR.

If OSR happens before regular recompilation, the unoptimized function code
on the stack may not have deoptimization support.  In that case, graph
creation compiles the unoptimized code again to include support.  That
code is then installed as shared code.  When we patch code for OSR, the
function code on the stack and not the shared code is what we want.

R=titzer@chromium.org
TEST=block-conflicts.js with --always-osr --concurrent-osr

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

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

10 years agoFix parameter passing in callback store ics on arm
dcarney@chromium.org [Thu, 5 Dec 2013 12:38:50 +0000 (12:38 +0000)]
Fix parameter passing in callback store ics on arm

R=svenpanne@chromium.org

BUG=

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

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

10 years ago'make quickcheck': Assorted improvements.
jkummerow@chromium.org [Thu, 5 Dec 2013 12:37:24 +0000 (12:37 +0000)]
'make quickcheck': Assorted improvements.

'make ia32' should not build ia32.optdebug.
'make ia32.clean' should delete ia32.optdebug output.
'make quickcheck' should be terminatable by hitting Ctrl+C just once.

R=bmeurer@chromium.org

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

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

10 years agoReland "Implement hyperbolic math functions for ES6."
yangguo@chromium.org [Thu, 5 Dec 2013 12:36:42 +0000 (12:36 +0000)]
Reland "Implement hyperbolic math functions for ES6."

BUG=v8:2938
LOG=N
R=jarin@chromium.org

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

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