machenbach@chromium.org
eef8694a7e
[Sheriff] Revert "Add support for keyed-call on arrays of fast elements"
...
This reverts commit r17746 for breaking layout tests.
TBR=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/72753002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17751 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-14 15:00:13 +00:00
verwaest@chromium.org
607a175cbc
Add support for keyed-call on arrays of fast elements
...
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/23537067
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17746 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-14 13:46:18 +00:00
yurys@chromium.org
c7b1b79e4d
This is the exact copy of r17365 which was reverted in r17488 due to memory corruption. The root cause for the memory corruption - missing check for bump pointer limit before storing filler map must be addressed in r17626 where allocation hooks were removed from the generated code and left only in the runtime.
...
This is initial implementation of allocation profiler.
Whenever new object allocation is reported to the HeapProfiler and allocation tracking is on we will capture current stack trace, add it to the collection of the allocation traces (a tree) and attribute the allocated size to the top JS function on the stack.
Format of serialized heap snapshot is extended to include information about recorded allocation stack traces.
This patch is r17301 plus a fix for the test crash in debug mode. The test crashed because we were traversing stack trace when just allocated object wasn't completely configured, in particular the map pointer was incorrect. Invalid Map pointer broke heap iteration required to find Code object for a given pc during stack traversal. The solution is to insert free space filler in the newly allocated block just before collecting stack trace.
BUG=chromium:277984,v8:2949
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/61893031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17742 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-14 12:13:26 +00:00
mvstanton@chromium.org
3cf157b43b
Inline zero argument array constructor.
...
patch from issue 54583003 (dependent code).
Zero arguments - very easy
1 argument - three special cases:
a) If length is a constant in valid array length range,
no need to check it at runtime.
b) respect DoNotInline feedback on the AllocationSite for
cases that the argument is not a smi or is an integer
with a length that should create a dictionary.
c) if kind feedback is non-holey, and length is non-constant,
we'd have to generate a lot of code to be correct.
Don't inline this case.
N arguments - one special case:
a) If a deopt ever occurs because an input argument isn't
compatible with the elements kind, then set the
DoNotInline flag.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/55933002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17741 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-14 12:05:09 +00:00
danno@chromium.org
28ed69b8fb
Fix overflow in TypedArray initialization function
...
BUG=chromium:319120
TEST=test/mjsunit/regress/regress-319120.js
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/61753013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17711 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-14 06:20:48 +00:00
machenbach@chromium.org
cbe604f4df
[Sheriff] Mark flaky webkit test.
...
TBR=jkummerow@chromium.org
BUG=v8:2989
Review URL: https://codereview.chromium.org/62283008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17686 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-13 11:09:47 +00:00
machenbach@chromium.org
6822e027b3
[Sheriff] Mark flaky webkit test.
...
TBR=jkummerow@chromium.org
BUG=v8:2989
Review URL: https://codereview.chromium.org/68573003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17684 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-13 10:43:43 +00:00
rossberg@chromium.org
cec8383cff
Provide private symbols through internal APIs
...
Adds a notion of private symbols, mainly intended for internal use, especially, self-hosting of built-in types that would otherwise require new C++ classes.
On the JS side (i.e., in built-ins), private properties can be created and accessed through a set of macros:
NEW_PRIVATE(print_name)
HAS_PRIVATE(obj, sym)
GET_PRIVATE(obj, sym)
SET_PRIVATE(obj, sym, val)
DELETE_PRIVATE(obj, sym)
In the V8 API, they are accessible via a new class Private, and respective HasPrivate/Get/Private/SetPrivate/DeletePrivate methods on calss Object.
These APIs are designed and restricted such that their implementation can later be replaced by whatever ES7+ will officially provide.
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/48923002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17683 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-13 10:34:06 +00:00
yangguo@chromium.org
e83fd01ce6
Reland "Implement Math.sin, cos and tan using table lookup and spline interpolation."
...
This relands r17594 with necessary fixes.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/70003004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17654 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-12 14:43:18 +00:00
machenbach@chromium.org
fadaa0f6a3
[Sheriff] Mark flaky test on windows.
...
BUG=v8:2999
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/68773007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17643 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-12 12:28:48 +00:00
jkummerow@chromium.org
6aad7fb992
Fix compilation with GCC 4.8
...
BUG=v8:2767,v8:2149
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/69413002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17641 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-12 12:09:38 +00:00
yangguo@chromium.org
df9665032e
Introduce %_IsMinusZero.
...
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/63423004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17639 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-12 11:53:13 +00:00
jochen@chromium.org
7df10557a5
Add explicit Isolate parameter to External::New
...
We can't deprecate the non-Isolate version yet but soon will.
R=svenpanne@chromium.org , svenpanne@google.com
BUG=266838
Review URL: https://codereview.chromium.org/70163002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17638 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-12 11:44:58 +00:00
machenbach@chromium.org
fc9d804d27
[Sheriff] Skip failing test on nacl.
...
TBR=danno@chromium.org
BUG=v8:2998
Review URL: https://codereview.chromium.org/68163012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17637 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-12 11:36:20 +00:00
bmeurer@chromium.org
6f75e92902
Add initial hydrogenized NewStringAddStub.
...
The new stub is enabled via the --new-string-add flag, which is
disabled by default. For now, it's only a stripped down version
of the native StringAddStub, it's still work-in-progress.
BUG=v8:2990
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/61893009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17635 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-12 10:21:08 +00:00
mstarzinger@chromium.org
d5cb83f4aa
Fix invalid reuse of weak global handle in GetScriptWrapper.
...
This fixes a direct usage of a weak global handle in GetScriptWrapper
that just casted it to a strong local handle, while a subsequent GC
might clear it. Handlepocalypse anyone?
R=machenbach@chromium.org
BUG=v8:2988
TEST=mjsunit/regress/regress-2988
Review URL: https://codereview.chromium.org/67273004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17622 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-11 16:27:36 +00:00
mstarzinger@chromium.org
c6841f1180
Tame mjsunit/fast-literal after fixing allocations.
...
Not that allocations go through Heap::AllocateRaw and actually respect
the allocation timeout, the runtime of this test spiked. This adjusts
the limit to sane values now that the values are actually respected.
R=mvstanton@chromium.org
TEST=mjsunit/fast-literal
Review URL: https://codereview.chromium.org/63603009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17615 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-11 10:22:46 +00:00
danno@chromium.org
6fdec542bb
Reland 17588: Add signed/unsigned 8-bit and 16-bit Representations to Crankshaft
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/66193004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17606 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-08 17:35:58 +00:00
machenbach@chromium.org
20e99185cb
[Sheriff] Mark flaky webkit tests.
...
BUG=v8:2989
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/66163004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17604 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-08 17:14:54 +00:00
ulan@chromium.org
bc4ad49b25
Do not add values to HGraph in Lithium.
...
Lithium uses indexes after the maximium value ID in the HGraph as indexes
of virtual registers and assumes that the maximum value ID does not change.
The IsStandardConstant and GetConstantXX functions could add constants to
HGraph, which aliased virtual registers with real values. This could confuse
the register allocator to think that a value in a virtual register is tagged
and to incorrectly set it in the pointer map.
BUG=298269
TEST=mjsunit/regress/regress-298269.js
R=verwaest@chromium.org
Review URL: https://chromiumcodereview.appspot.com/66693002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17599 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-08 14:16:34 +00:00
verwaest@chromium.org
af66a0b300
Revert "Add signed/unsigned 8-bit and 16-bit Representations to Crankshaft"
...
Revert "Fix ARM build"
Revert "Fix ARM build (again)"
TBR=danno@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/66553004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17597 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-08 13:54:34 +00:00
yangguo@chromium.org
9f104a1a3e
Revert "Implement Math.sin, cos and tan using table lookup and spline interpolation."
...
This reverts commit r17594.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/59153007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17596 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-08 13:44:27 +00:00
yangguo@chromium.org
063b7c4ebb
Implement Math.sin, cos and tan using table lookup and spline interpolation.
...
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/50563003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17594 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-08 13:10:39 +00:00
danno@chromium.org
412af94bbb
Fix ARM build (again)
...
R=yangguo@chromium.org
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/66673002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17592 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-08 12:41:02 +00:00
danno@chromium.org
7fbd65a7f7
Fix ARM build
...
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/62203010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17590 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-08 12:23:48 +00:00
danno@chromium.org
1222255b9c
Add signed/unsigned 8-bit and 16-bit Representations to Crankshaft
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/61623004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17588 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-08 11:50:23 +00:00
yangguo@chromium.org
94eb5904a6
Fix error message wording when instanceof throws.
...
R=bmeurer@chromium.org
BUG=82797, v8:1593
Review URL: https://codereview.chromium.org/66463002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17587 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-08 11:45:56 +00:00
svenpanne@chromium.org
e0388823c5
Fixed build.
...
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/66523002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17586 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-08 11:20:18 +00:00
yangguo@chromium.org
fc1dadce9b
Use register allocator for context on x64.
...
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/50863002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17585 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-08 10:58:51 +00:00
svenpanne@chromium.org
ba24c3a79f
Removed dead function V8::FillHeapNumberWithRandom.
...
Removed a useless test case along the way.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/65143007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17584 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-08 10:55:01 +00:00
mstarzinger@chromium.org
59536de77d
Make HCapturedObjects non-deletable for DCE.
...
R=jkummerow@chromium.org
BUG=v8:2987
TEST=mjsunit/regress/regress-2987
Review URL: https://codereview.chromium.org/64433002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17569 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-07 16:07:19 +00:00
rafaelw@chromium.org
ef0c647c49
Handlify Runtime::SetObjectProperty
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/62333002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17560 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-07 12:35:57 +00:00
verwaest@chromium.org
dccc06e132
Disable stress-gc for memento-related test.
...
R=mvstanton@chromium.org
Review URL: https://chromiumcodereview.appspot.com/64003004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17559 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-07 12:20:45 +00:00
haitao.feng@intel.com
e7ef18110d
Refine CountOperation of FullCodeGen
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/42973002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17547 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-07 09:34:52 +00:00
yangguo@chromium.org
eb550c6da4
Fix y-umlaut to uppercase.
...
R=dcarney@chromium.org
BUG=v8:2984
Review URL: https://codereview.chromium.org/59853006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17545 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-07 09:08:34 +00:00
haitao.feng@intel.com
6e0ccacc7a
Refactor loading a pointer and loading an integer64 into a register instructions for X64
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/39543003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17540 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-07 08:14:27 +00:00
verwaest@chromium.org
c809433941
Revert "Landing https://codereview.chromium.org/40133004 for mnita@google.com." due to test failures.
...
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/62563002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17533 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-06 18:19:26 +00:00
cira@chromium.org
ef05eef033
Landing https://codereview.chromium.org/40133004 for mnita@google.com.
...
Implements ES6 String.prototype.normalize method.
BUG=v8:2943
TEST=Unit tests for "real life" use cases, edge cases, various types of normalization.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/60013010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17532 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-06 17:27:31 +00:00
mvstanton@chromium.org
1d835561ac
Change test expectations for webkit/fast/js/object-slow-put and friends.
...
R=verwaest@chromium.org
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/62213002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17530 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-06 16:38:40 +00:00
mvstanton@chromium.org
cec8548d0e
Correct handling of arrays with callbacks in the prototype chain.
...
Our generic KeyedStoreIC doesn't handle the case when a callback is
set on array elements in the prototype chain of the object, nor do
we recognize that we need to avoid the monomorphic case if these
callbacks exist.
This CL addresses the issue by looking for dictionary elements in
the prototype chain on IC misses and crankshaft element store
instructions. When found, the generic IC is used. The generic IC is
changed to go to the runtime in this case too.
In general, keyed loads are immune from this problem because they
won't return the hole: discovery of the hole goes to the runtime where
the callback will be found in the prototype chain. Double array loads
in crankshaft can return the hole but only if the prototype chain is
unaltered (we will catch such alterations).
Includes the following patch as well (already reviewed by bmeurer):
Performance regression found in test regress-2185-2.js. The problem was
that the bailout method for TransitionAndStoreStub was not performing
the appropriate transition.
(Review URL for the ElementsTransitionAndStoreIC_Miss change:
https://codereview.chromium.org/26911007 )
R=danno@chromium.org
Review URL: https://codereview.chromium.org/35413006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17525 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-06 15:45:43 +00:00
bmeurer@chromium.org
980739a29c
Improve implementation of HSeqStringSetChar.
...
This improves the generated code for HSeqStringSetChar across
all platforms, taking advantage of constant operands whenever
possible. It also drops the unused DefineSameAsFirst constraint
for the register allocator on x64 and ia32, where it caused
unnecessary spills when the string operand was live across the
HSeqStringSetChar instruction.
A new GVN flag StringChars is introduced to express dependencies
between HSeqStringSetChar, HStringCharCodeAt and the upcoming
HSeqStringGetChar (the GVNFlags type is now 64bit in size).
Also improves the test case.
TEST=mjsunit/string-natives
R=mstarzinger@chromium.org , yangguo@chromium.org
Review URL: https://codereview.chromium.org/57383004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17521 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-06 13:09:22 +00:00
rafaelw@chromium.org
13f722cae4
[Object.observe] rename intrinsic change record types for consitency.
...
Note the spec now reflects the updated naming:
http://wiki.ecmascript.org/doku.php?id=harmony:observe_spec_changes
R=rossberg@chromium.org , rossberg
BUG=v8:2940
Review URL: https://codereview.chromium.org/46043020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17520 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-06 12:14:24 +00:00
machenbach@chromium.org
4539c6ba5f
[Sheriff] Mark flaky test on windows.
...
It was marked as flaky on linux nosnap, arm and nacl before. Now it's marked universally flaky since windows joined the list.
BUG=v8:2921
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/54713002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17506 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 19:29:58 +00:00
yangguo@chromium.org
371265eec4
Revert "Handlify concat string and substring."
...
This reverts r17490.
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/59973004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17497 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 15:36:15 +00:00
yangguo@chromium.org
23d085c691
Handlify concat string and substring.
...
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/50073005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17490 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 14:07:07 +00:00
bmeurer@chromium.org
b8660f2091
Revert "Record allocation stack traces".
...
This reverts commit r17365 for memory corruption. The issues
are most probably related to storing a filler map without
checking the bump pointer first, and traversing the stack
when called from within a stub (or builtin), while the code
assumes that it's called from a JS function.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/59583003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17488 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 13:46:11 +00:00
loislo@chromium.org
a4b4cfdc58
HeapProfiler: provide human readable names for code objects.
...
It is very hard to understand the structure of the heap even for about:blank page
because code objects in the heap have no names. This patch propagates the names
for Code::STUB and Code::BUILTIN code objects.
Also it assign function names from SharedFunctionInfo to the code objects.
BUG=
R=alph@chromium.org , svenpanne@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/52643002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17486 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 13:23:03 +00:00
yangguo@chromium.org
a5ed9a71c8
Correctly load message from an Error object.
...
R=mstarzinger@chromium.org
BUG=306220
Review URL: https://codereview.chromium.org/46593010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17484 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 13:04:51 +00:00
rafaelw@chromium.org
e78081ca1c
Make Object.freeze/seal/preventExtensions observable
...
Note: spec has been updated here: http://wiki.ecmascript.org/doku.php?id=harmony:observe_spec_changes .
R=rossberg@chromium.org , rossberg
BUG=v8:2975,v8:2941
Review URL: https://codereview.chromium.org/47703003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17481 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 12:25:32 +00:00
svenpanne@chromium.org
74ad230a8e
Introduce orps for IA32/X64
...
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/53573004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17479 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 12:04:46 +00:00
rafaelw@chromium.org
ada13dfc3f
Remove calls to JSObject::SetLocalPropertyIgnoreAttributesTrampoline within objects.cc
...
This includes handlifing:
-SetHiddenPropertiesHashTable
-ObjectHashSet::Add/Remove
-ObjectHashTable::Put
And splitting the following methods which previously took "allow creation" enum arguments to into side-effect-free getters and GetOrCreate*-handlfied getters.
-GetHash (now GetHash & handlified GetOrCreateHash)
-GetIdentityHash (now GetIdentityHash & handlified GetOrCreateIdentityHash)
-GetHiddenPropertiesHashTable (now GetHiddenPropertiesHashTable & handlified GetOrCreateaHiddenPropertiesHashTable)
BUG=v8:2877
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/48913008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17477 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 11:47:11 +00:00
rafaelw@chromium.org
4a8319c7c6
[Object.observe] Implement implicit notification from performChange
...
R=arv@chromium.org , rossberg@chromium.org , rossberg
BUG=v8:2942
Review URL: https://codereview.chromium.org/36313002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17476 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 11:23:08 +00:00
mvstanton@chromium.org
ee6e52f292
Remove CreateArrayLiteralShallow, as it's fundamentally the same now as
...
CreateArrayLiteral.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/54333003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17470 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-05 09:54:59 +00:00
jkummerow@chromium.org
2ebfd6e90e
Add missing negative dictionary lookup to NonexistentHandlerFrontend
...
BUG=v8:2980
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/57433003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17459 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-04 14:14:09 +00:00
machenbach@chromium.org
3e6044d3f3
[Sheriff] Mark failing test for nacl port.
...
BUG=v8:2978
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/50333005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17445 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-31 11:51:59 +00:00
machenbach@chromium.org
230b47a63b
[Sheriff] Mark flaky test.
...
BUG=v8:2921
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/54423002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17444 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-31 11:48:31 +00:00
jkummerow@chromium.org
316271fc35
Fix uint32-to-smi conversion in Lithium
...
BUG=chromium:309623
R=vegorov@google.com , yangguo@chromium.org
Review URL: https://codereview.chromium.org/54393002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17441 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-31 10:18:51 +00:00
yangguo@chromium.org
3f1a833524
Do not remove HAdd with zero if the other operand is a double.
...
The other operand might be minus zero, and -0 + 0 = +0
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/52173003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17432 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-30 10:22:52 +00:00
jkummerow@chromium.org
9e88c23cbf
ia32: Fix comparisons of two constant double operands when exactly one of them is in new space.
...
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/46883008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17428 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-29 14:34:07 +00:00
svenpanne@chromium.org
19a2e803bb
Introduce andps for IA32/X64
...
replace andpd and pand in Math.abs
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/44153002
Patch from Weiliang Lin <weiliang.lin@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17413 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 10:38:40 +00:00
bmeurer@chromium.org
38e198109f
Remove unused function MoveBytes().
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/24584004
Patch from Bangfu Tao <bangfu.tao@samsung.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17411 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 09:59:15 +00:00
svenpanne@chromium.org
acb06df0e9
Tune mjsunit/compiler/expression-trees.
...
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/43703002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17404 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 07:24:19 +00:00
svenpanne@chromium.org
ee87c867e9
Tune mjsunit/array-functions-prototype-misc
...
Again, this brings testing times down quite a bit without losing test
coverage.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/44143003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17403 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-28 07:23:27 +00:00
mstarzinger@chromium.org
e7226e3f8a
Simplify test-mark-compact/NoPromotion test.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/42543008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17398 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-25 13:10:25 +00:00
mvstanton@chromium.org
a85c825bb9
The Elements pointer in a JSObject can have a filler map instead of a
...
valid fixed array, iff a gc occurred while allocating a fixed array as
part of array construction. Heap verification needs protection against
examining the elements object in this case.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/43383004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17397 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-25 12:26:47 +00:00
yangguo@chromium.org
7dd2d6c590
Reland "Make Array.prototype.pop throw if the last element is not configurable."
...
This relands r17346.
R=machenbach@chromium.org
BUG=311164
Review URL: https://codereview.chromium.org/43923002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17394 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-25 11:55:56 +00:00
svenpanne@chromium.org
2e2579da1b
Tune mjsunit/regexp-global.
...
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/42993004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17387 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-25 08:57:50 +00:00
svenpanne@chromium.org
5074ecf13b
Tune cctest/test-parsing/ParserSync.
...
This test suffers heavily from combinatorial explosion. To redemedy
this situation a bit, two independent parsing flags are tested
separately, reducing the runtime by a factor of 4. Furthermore, the
code has been cleaned up a bit.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/40113002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17385 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-25 07:24:08 +00:00
mstarzinger@chromium.org
f3aa0b315a
Make the message test suite run without slow asserts.
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/39303004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17381 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-24 17:27:58 +00:00
svenpanne@chromium.org
c2596a257c
Temporarily disable mjsunit/regress/regress-2612 to make our tree green again.
...
TBR=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/40203002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17379 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-24 13:30:40 +00:00
svenpanne@chromium.org
7fb61a78d4
Tune mjsunit/regress/regress-2612.
...
Lower the bounds to something bearable which would still timeout if we
used a quadratic algorithm.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/39863003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17377 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-24 13:07:16 +00:00
bmeurer@chromium.org
56a46e591b
Add performance.now() to the d8 shell.
...
TEST=mjsunit/d8-performance-now
R=hpayer@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=17366
Committed: https://code.google.com/p/v8/source/detail?r=17368
Review URL: https://codereview.chromium.org/32433010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17375 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-24 12:25:40 +00:00
bmeurer@chromium.org
bef9819190
Revert "Fix shared library build after r17368." and "Add performance.now() to the d8 shell.".
...
This reverts commit r17372 and r17368 for breaking the shared
library build.
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/40043002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17374 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-24 12:16:00 +00:00
bmeurer@chromium.org
0a90cab56a
Add performance.now() to the d8 shell.
...
TEST=mjsunit/d8-performance-now
R=hpayer@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=17366
Review URL: https://codereview.chromium.org/32433010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17368 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-24 10:48:18 +00:00
bmeurer@chromium.org
67b4eb9ac1
Revert "Add window.performance.now() to the d8 shell."
...
This reverts commit r17366 for breaking the mozilla tests.
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/38753006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17367 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-24 10:42:02 +00:00
bmeurer@chromium.org
d07231021e
Add window.performance.now() to the d8 shell.
...
TEST=mjsunit/d8-performance-now
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/32433010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17366 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-24 09:27:17 +00:00
yurys@chromium.org
a083601e73
Record allocation stack traces
...
This is initial implementation of allocation profiler.
Whenever new object allocation is reported to the HeapProfiler and allocation tracking is on we will capture current stack trace, add it to the collection of the allocation traces (a tree) and attribute the allocated size to the top JS function on the stack.
Format of serialized heap snapshot is extended to include information about recorded allocation stack traces.
This patch is r17301 plus a fix for the test crash in debug mode. The test crashed because we were traversing stack trace when just allocated object wasn't completely configured, in particular the map pointer was incorrect. Invalid Map pointer broke heap iteration required to find Code object for a given pc during stack traversal. The solution is to insert free space filler in the newly allocated block just before collecting stack trace.
BUG=chromium:277984,v8:2949
R=hpayer@chromium.org , loislo@chromium.org
Review URL: https://codereview.chromium.org/34733004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17365 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-24 09:26:55 +00:00
svenpanne@chromium.org
f2122438e0
Removed long-running obselete test case.
...
The test was the 2nd longest-running test case in debug mode, and the
stuff it tests has already been moved long ago to some other place,
which is in turn heavily tested by far simpler and faster things
(%TruncateString etc.).
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/39233003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17361 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-24 08:09:32 +00:00
yangguo@chromium.org
0f564cb1b0
Revert "Make Array.prototype.pop throw if the last element is not configurable."
...
This reverts commit r17346.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/39593002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17360 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-24 07:48:23 +00:00
haitao.feng@intel.com
29bb076770
Introduce xchgl, orl, roll, subl, testl and xorl into X64 assembler
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/26780004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17352 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-24 02:12:51 +00:00
yangguo@chromium.org
e25920da19
Make Array.prototype.pop throw if the last element is not configurable.
...
Popping an element from an array should call [[Delete]] internal method
and pass true as the second argument (ECMA-262/5.1/#sec-15.4.4.6).
When the last element can't be deleted, throw a Type Error.
Not throwing the error would result in endless loop in the following test.
TEST=var a=[];Object.defineProperty(a,0,{});while(a.length)a.pop();
By the way fix another bug, or else i can't post any issues.
"presubmit.py" throw a "missing a correct copyright header" on windows.
Both the slash and the backslash are valid path separator on windows.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/29513004
Patch from Yanagi <admin@web-tinker.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17346 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-23 16:19:24 +00:00
jkummerow@chromium.org
8259439ae8
Fix HObjectAccess for loads from migrating prototypes
...
BUG=chromium:305309
R=danno@chromium.org
Review URL: https://codereview.chromium.org/35173005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17345 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-23 15:15:15 +00:00
danno@chromium.org
bdeaf7514a
Enable preaging of code objects when --optimize-for-size.
...
This change means that code which is never executed is garbage collected immediately, and code which is only executed once is collected more quickly (limiting heap growth), however, code which is re-executed is reset to the young age, thus being kept around for the same number of GC generations as currently.
BUG=280984
R=danno@chromium.org , hpayer@chromium.org
Review URL: https://codereview.chromium.org/23480031
Patch from Ross McIlroy <rmcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17343 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-23 13:48:04 +00:00
yurys@chromium.org
8385804c55
Expose v8::Function::GetDisplayName to public API.
...
BUG=chromium:17356
R=mstarzinger@chromium.org , yurys@chromium.org , yangguo@chromium.org , yurys
Committed: https://code.google.com/p/v8/source/detail?r=17324
Review URL: https://codereview.chromium.org/26709011
Patch from Andrey Adaikin <aandrey@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17340 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-23 12:38:06 +00:00
yurys@chromium.org
d37c1cfc2f
Revert "Disable allocation folding when allocations tracking is on"
...
This reverts r17337. The new test fails on V8 linux - shared: http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20shared/builds/4726/steps/Check/logs/stdio
TBR=mvstanton@chromium.org
BUG=None
Review URL: https://codereview.chromium.org/37073003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17338 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-23 12:30:38 +00:00
yurys@chromium.org
66bfe59307
Disable allocation folding when allocations tracking is on
...
BUG=chromium:277984
R=hpayer@chromium.org , loislo@chromium.org , mvstanton@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/32583002
Patch from Alexandra Mikhaylova <amikhaylova@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17337 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-23 12:19:12 +00:00
hpayer@chromium.org
fbaf016b6d
Add a soft-deopt in keyed element access when current IC is pre-monomorphic and no type feedback was collected.
...
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/32643004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17335 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-23 10:41:21 +00:00
dslomov@chromium.org
42f85b538e
Crankshaft builtins.
...
Enable optimizing compiler for V8 built-ins. Also fixes an issue uncovered in
x64 codegen.
R=danno@chromium.org , mstarzinger@chromium.org , svenpanne@chromium.org
Review URL: https://codereview.chromium.org/34503003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17334 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-23 08:57:54 +00:00
yurys@chromium.org
87b37f81c1
Revert "Expose v8::Function::GetDisplayName to public API."
...
This reverts commit 54c7b9af65dd349405944bd9ae2f064202dc6e1d.
The new test fails in debug mode.
BUG=chromium:17356
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/30443006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17325 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-22 15:46:15 +00:00
yurys@chromium.org
5177d5b5cd
Expose v8::Function::GetDisplayName to public API.
...
BUG=chromium:17356
R=mstarzinger@chromium.org , yurys@chromium.org , yangguo@chromium.org , yurys
Review URL: https://codereview.chromium.org/26709011
Patch from Andrey Adaikin <aandrey@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17324 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-22 14:57:19 +00:00
yurys@chromium.org
c71eccf95f
Expose v8::Function::IsBuiltin to public API.
...
This will be used by DevTools so that we could generate a better preview in console. Namely, we could assume that a preview of an object is lossless if all its member functions are builtin.
We also may want to expose this to DevTools users via remote debugging protocol in Debugger.FunctionDetails struct.
BUG=chromium:261470
R=mstarzinger@chromium.org , yurys@chromium.org , dcarney@chromium.org , yurys
Review URL: https://codereview.chromium.org/27701002
Patch from Andrey Adaikin <aandrey@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17323 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-22 14:50:20 +00:00
mstarzinger@chromium.org
be3ed75ff3
Fix materialization of captured objects with field tracking.
...
R=titzer@chromium.org
BUG=chromium:298990
TEST=mjsunit/compiler/escape-analysis-representation
Review URL: https://codereview.chromium.org/35133003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17321 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-22 13:48:54 +00:00
svenpanne@chromium.org
d65cc1e21b
Temporarily deactive regress-2185-2 until our array handling is in good shape again.
...
BUG=v8:2950
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/30443005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17320 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-22 13:02:04 +00:00
svenpanne@chromium.org
dd74f5aa08
Removed obsolete unit tests.
...
As discussed offline, these tests don't test what they were supposed to
test anymore and were the longest running ones.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/32433009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17317 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-22 11:26:07 +00:00
svenpanne@chromium.org
7ea4b9204c
Do not run useless test variants for test-parsing/ParserSync.
...
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/34733002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17314 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-22 09:13:33 +00:00
bmeurer@chromium.org
9c26c6a3f2
[Sheriff] Revert "Record allocation stack traces" and "Temporarily disable test-heap-profiler/TrackHeapAllocations".
...
This reverts commit r17301 and r17303 for breaking the nosnap builds.
TBR=yurys@chromium.org
Review URL: https://codereview.chromium.org/34523002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17307 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-22 06:56:19 +00:00
yurys@chromium.org
6b840f563e
Temporarily disable test-heap-profiler/TrackHeapAllocations
...
The test started failing on V8 Linux - nosnap - debug after r17301 which added stack traversal to the allocation tracker. I'm disabling it for now until the problem is fixed.
BUG=v8:2949
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/30633005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17303 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-21 16:21:16 +00:00
yurys@chromium.org
66bb9d1563
Record allocation stack traces
...
This is initial implementation of allocation profiler.
Whenever new object allocation is reported to the HeapProfiler and allocation tracking is on we will capture current stack trace, add it to the collection of the allocation traces (a tree) and attribute the allocated size to the top JS function on the stack.
Format of serialized heap snapshot is extended to include information about recorded allocation stack traces.
BUG=chromium:277984
R=hpayer@chromium.org , loislo@chromium.org
Review URL: https://codereview.chromium.org/27227005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17301 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-21 15:22:11 +00:00
titzer@chromium.org
a255312491
Handle misaligned loads and stores in load elimination. Do not track misaligned loads and be conservative about invalidating misaligned stores. Add more tests for number conversion to string (NumberToStringStub exhibits misaligned loads)
...
BUG=v8:2934
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/28383003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17294 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-21 13:33:03 +00:00
yangguo@chromium.org
2d6dab1f2e
Harmony: implement Math.trunc.
...
BUG=v8:2938
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/28793002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17286 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-21 11:15:11 +00:00
yangguo@chromium.org
575438518c
Harmony: implement Math.sign.
...
R=dslomov@chromium.org
BUG=v8:2938
Review URL: https://codereview.chromium.org/28723002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17279 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-21 09:16:31 +00:00
titzer@chromium.org
4d0f2cdd3b
Implement global load elimination based on flow engine.
...
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/27148004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17273 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-18 14:28:24 +00:00
loislo@chromium.org
b50be9ff12
HeapProfiler: integrate FindUntrackedObjects into js code.
...
In some cases we would like to check untracked objects right from the js code.
Otherwise the objects might be collected rigth before check.
BUG=none
R=hpayer@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/27717003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17270 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-18 11:25:43 +00:00
jkummerow@chromium.org
4e96d4dee6
Tweak Math.log on ia32/x64
...
ia32 and x64 more consistent now
1. use non-transcendental cache version of log for x64
2. use negative infinity constant instead of pushing to stack and loading to XMM register
3. remove movdbl, use movsd directly. movdbl seems confusing
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/27197013
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17268 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-18 10:54:45 +00:00
rafaelw@chromium.org
ce2c9b1db1
Prevent changes to hidden properties from being observable via Object.observe
...
This addresses the leak that mstarzinger points out (https://codereview.chromium.org/26390003/ ) and includes the test.
Note that this adds a test that observing changes to the empty-string property remains possible.
BUG=
R=mstarzinger@chromium.org , rossberg@chromium.org
Review URL: https://codereview.chromium.org/26592012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17257 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-17 20:49:45 +00:00
svenpanne@chromium.org
882778bf09
Make it possible to run a test only in the standard variant.
...
Use this for mjsunit/unicode-case-overoptimization, which is not
related to Crankshaft at all and takes ages.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/27704002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17255 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-17 13:09:28 +00:00
mstarzinger@chromium.org
0a2b4ecdcc
Add regression test for optimized count operation.
...
This is a regression test for a bug with handling of count operations
that target a JavaScript accessor on the prototype chain in Crankshaft.
R=jkummerow@chromium.org
BUG=chromium:306851
TEST=mjsunit/regress/regress-crbug-306851
Review URL: https://codereview.chromium.org/27702002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17254 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-17 12:48:28 +00:00
marja@chromium.org
f039f334f5
Enable calling the SetReference* & SetObjectGroupId functions with a Persistent<SubclassOfValue>.
...
This is needed for https://codereview.chromium.org/26792002/
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/27512003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17253 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-17 11:48:03 +00:00
mstarzinger@chromium.org
3e0f828b8f
Revert "TransitionAndStoreStub bailout needs to transition (and store)."
...
This reverts commit r17216 breaking fast/js/cross-frame-bad-time.html test.
R=mvstanton@chromium.org
TEST=webkit:fast/js/cross-frame-bad-time.html
Review URL: https://codereview.chromium.org/27516002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17241 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-16 14:17:31 +00:00
yurys@chromium.org
5b105b248e
Fix unexpected stack traces in test-cpu-profiler/JsNativeJsSample
...
This is a follow-up fix for r17140 which makes sure that cpu profiler is started before profiled js functions are compiled so that the profiler gets information about "no frame" ranges along with add code events.
BUG=v8:2933
R=jkummerow@chromium.org , loislo@chromium.org
Review URL: https://codereview.chromium.org/27121003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17229 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-16 08:15:06 +00:00
mvstanton@chromium.org
8f9f192f6e
AllocationSites for all literals
...
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/24250005
Review URL: https://codereview.chromium.org/27366003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17228 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-16 08:10:36 +00:00
svenpanne@chromium.org
a4f9ef1827
Fix for non-SSE2.
...
BUG=cctest/test-assembler-ia32/AssemblerIa32Extractps
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/27476004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17227 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-16 08:08:41 +00:00
mvstanton@chromium.org
f4edc076d8
Revert "AllocationSites for all literals"
...
This reverts commit r17219 due to WebKit failures.
R=mstarzinger@chromium.org
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/26539010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17222 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-15 15:35:23 +00:00
mvstanton@chromium.org
362c0cfbca
AllocationSites for all literals
...
BUG=
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/24250005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17219 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-15 14:52:58 +00:00
svenpanne@chromium.org
3c9a322eaa
Do not rely on actual NaN value for testing extractps.
...
BUG=cctest/test-assembler-ia32/AssemblerIa32Extractps, cctest/test-assembler-x64/AssemblerX64Extractps
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/26704004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17218 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-15 14:04:49 +00:00
svenpanne@chromium.org
258cee8f72
Fixed bug in extractps instruction on ia32 and x64
...
This is a fixed version of https://codereview.chromium.org/27097002/
which was originally written by weiliang.lin@intel.com .
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/27301003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17217 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-15 12:51:58 +00:00
mvstanton@chromium.org
3769a2d24d
TransitionAndStoreStub bailout needs to transition (and store).
...
Performance regression found in test regress-2185-2.js. The problem was
that the bailout method for TransitionAndStoreStub was not performing
the appropriate transition.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/26911007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17216 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-15 12:42:03 +00:00
dslomov@chromium.org
5ccd697875
Do not look up ArrayBuffer on global object in typed array constructor.
...
BUG=v8:2931
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/27238009
Patch from Ben Noordhuis <info@bnoordhuis.nl>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17215 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-15 11:27:12 +00:00
yangguo@chromium.org
cf2aea3ea1
Disable RegExpInterruption test for interpreted irregexp.
...
Interrupts are not currently supported by interpreted irregexp.
R=mvstanton@chromium.org
BUG=
Review URL: https://codereview.chromium.org/27312002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17209 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-15 08:59:26 +00:00
yangguo@chromium.org
c9eeedf342
Fix regexp interrupt test.
...
R=jochen@chromium.org
BUG=
Review URL: https://codereview.chromium.org/26848011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17203 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-15 08:06:01 +00:00
yangguo@chromium.org
71ba8c5fb4
Retire concurrent recompilation delay for non-stress testing.
...
Instead, we block concurrent recompilation until unblocked. This makes
affected tests more predictable and run shorter.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/26758003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17199 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-14 14:15:22 +00:00
ulan@chromium.org
83c63cf555
Out-of-line constant pool on Arm: Stage 2 - Introduce ConstantPoolArray object.
...
Second stage of implementing an out-of-line constant pool on Arm. This CL
Introduces the ConstantPoolArray object which will be used as the backing
store of out-of-line constant pools. Nothing uses this object yet.
BUG=
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/22601003
Patch from Ross McIlroy <rmcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17197 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-14 13:35:06 +00:00
mstarzinger@chromium.org
00125f43f0
Remove deprecated v8::preparser namespace.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/27174002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17192 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-14 13:07:20 +00:00
yurys@chromium.org
15db1d7c3a
Track JS allocations as they arrive with no affection on performance when tracking is switched off.
...
BUG=277984
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/22852024
Patch from Alexandra Mikhaylova <amikhaylova@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17191 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-14 12:41:28 +00:00
rossberg@chromium.org
814fe1f5cb
Reenable 17167: "Ensure lower <= upper bound"
...
Fixed handlification bug (see 2nd patch).
Will handlify Type::Union and Type::Intersect in separate CL.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/27164003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17189 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-14 12:14:42 +00:00
rossberg@chromium.org
19d716989e
Unify handling of position info in AST, part 1
...
* AstNode now has a position info.
* Removed various ad-hoc position infos from subclasses (most of which had it).
* Position is always set with the constructor, instead of later.
* Take care to use kNoPosition in the right spots, to not crash the debugger.
Still to do:
* Eliminate Conditional::then/else_position and WhileStatement::condition_position.
* Make CaseClause a proper AstNode and eliminate its custom position.
* If possible, eliminate all uses of kNoPosition.
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/24076007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17183 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-14 09:24:58 +00:00
cira@chromium.org
c0ff0b284d
Original review https://codereview.chromium.org/25855005 .
...
Reverting reverted r17148 and fixing build (test) breakage by side stepping the Windows vs. Linux issue of different Date object for the same millisecond time stamp.
We do that by using UTC Date methods (they eliminate DST problems).
Windows:
new Date(129193200000);
Sun Feb 03 1974 23:00:00 GMT-0800 (Pacific Standard Time)
Linux:
new Date(129193200000);
Mon Feb 04 1974 00:00:00 GMT-0700 (PST)
BUG=2919
R=dslomov@chromium.org , mnita@google.com
Review URL: https://codereview.chromium.org/26918002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17171 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-11 17:54:31 +00:00
danno@chromium.org
f55fc759dc
Revert 17167: "Ensure lower <= upper bound"
...
Due to crashes in nosnap ia32
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/27046002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17170 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-11 16:41:34 +00:00
danno@chromium.org
4d67b70ea4
Adding Cira & Mihai to OWNERS for internationalization (i18n)
...
Keeping the names together so that I can put one comment for both.
Might also sort alphabetically, with the comment after each email.
Not sure what option was best, I have seen it done both ways.
R=cira@chromium.org , danno@chromium.org
Review URL: https://codereview.chromium.org/26534002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17168 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-11 15:24:45 +00:00
rossberg@chromium.org
68cc8da20c
Ensure lower <= upper bound
...
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/26959004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17167 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-11 15:17:58 +00:00
olivf@chromium.org
93d4fbd2ee
Truncate booleans to 0/1 in truncating t-to-i.
...
Thanks to weiliang.lin2@gmail.com for discovering the issue.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/26824002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17166 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-11 15:13:12 +00:00
mstarzinger@chromium.org
f878c1c359
Fix pre-parsing of 'use strict' directive after string literals.
...
R=ulan@chromium.org
TEST=mjsunit/regress/regress-parse-use-strict
Review URL: https://codereview.chromium.org/27025002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17164 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-11 14:03:54 +00:00
rossberg@chromium.org
b9d639cd9d
Minor tweaks to types cctest
...
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/26223006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17163 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-11 13:59:01 +00:00
bmeurer@chromium.org
2c631933d5
Load/Store cannot handle double representation.
...
Assert that the representation for Load/Store in the X64 MacroAssembler
is never Double. Also add missing test case for the Load/Store macros.
TEST=cctest/test-macro-assembler-x64
R=mvstanton@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=17135
Review URL: https://codereview.chromium.org/25990002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17151 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-11 07:12:06 +00:00
dslomov@chromium.org
0610773db7
Revert "Fixing timezone issues with date-time/parse-* tests."
...
This reverts commit r17148 for breaking tests on Windows.
TBR=cira@google.com ,titzer@chromium.org
Review URL: https://codereview.chromium.org/26467005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17149 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-10 19:43:05 +00:00
cira@chromium.org
2986f94c14
Fixing timezone issues with date-time/parse-* tests.
...
BUG=2919
TEST=All tests passing when local timezone was set to EST.
R=mnita@google.com , titzer@chromium.org
Review URL: https://codereview.chromium.org/25855005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-10 17:54:33 +00:00
olivf@chromium.org
4b6d0e33f2
Only set binary operation side effects flags, when observable.
...
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/26712002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17147 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-10 16:49:25 +00:00
yurys@chromium.org
344d836d0f
Add column getter to CpuProfileNode
...
CpuProfileNode currently exposes only line number which is not enough for the cases when there is more than one function on the same line. This change exposes column number on CpuProfileNode.
BUG=302537
R=jkummerow@chromium.org , loislo@chromium.org
Review URL: https://codereview.chromium.org/25541003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17142 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-10 13:15:47 +00:00
yurys@chromium.org
3228e953f9
Unflake cctest/test-cpu-profiler/JsNativeJsRuntimeJsSample on Win32 Debug
...
Profiler is now started from JavaScript. Since we always capture stack trace when starting profiler there should always be at least one expected sample in the profile.
Also changed ProfilerEventsProcessor::AddCurrentStack to make sure it call TickSample::Init to instead of custom initialization code.
BUG=v8:2920
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/25686011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17140 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-10 13:03:41 +00:00
rossberg@chromium.org
3c01f30e3f
Revert "Load/Store cannot handle double representation."
...
This reverts r17135 -- test crashes on x64.
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/26653004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17138 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-10 12:28:52 +00:00
mstarzinger@chromium.org
63d8abb6c6
Unify and fix checkers for duplicate object literal properties.
...
R=ulan@chromium.org
TEST=preparser/duplicate-property,mjsunit/regress/regress-parse-object-literal
Review URL: https://codereview.chromium.org/26375004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17136 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-10 11:58:16 +00:00
bmeurer@chromium.org
ef8dc50e55
Load/Store cannot handle double representation.
...
Assert that the representation for Load/Store in the X64 MacroAssembler
is never Double. Also add missing test case for the Load/Store macros.
TEST=cctest/test-macro-assembler-x64
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/25990002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17135 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-10 11:42:00 +00:00
mvstanton@chromium.org
59c8d36c00
Revert "Debug: Allow stepping into on a given call frame."
...
This reverts commit r17095.
There were test failures (flaky).
BUG=chromium:296963
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/26703009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17125 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-10 09:05:28 +00:00
mvstanton@chromium.org
fc95207750
Revert "Unify and fix checkers for duplicate object literal properties."
...
This reverts commit 12c68518bd2c74dc4e44d928c84c17f98ca63359.
(r17114)
R=mstarzinger@chromium.org
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/26732006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17122 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-10 08:45:19 +00:00
dslomov@chromium.org
380d0ca582
Implement ArrayBuffer.isView.
...
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/25700010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17121 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-10 08:36:44 +00:00
mstarzinger@chromium.org
067a266426
Unify and fix checkers for duplicate object literal properties.
...
R=ulan@chromium.org
TEST=preparser/duplicate-property
Review URL: https://codereview.chromium.org/25755002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17114 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-04 16:58:01 +00:00
mstarzinger@chromium.org
3c8e87d840
Remove obsolete preparser binary.
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/25277003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17113 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-04 16:21:23 +00:00
bmeurer@chromium.org
a9d8970bf6
Fix SmiMove unit test.
...
TEST=cctest/test-macro-assembler-x64.cc
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/25426006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17101 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-04 07:21:31 +00:00
yurys@chromium.org
ce61a704e3
Debug: Allow stepping into on a given call frame.
...
BUG=chromium:296963
R=yangguo@chromium.org , yurys
Review URL: https://codereview.chromium.org/25605005
Patch from Andrey Adaikin <aandrey@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17095 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-03 07:42:44 +00:00
olivf@chromium.org
24c2336d75
Inline some more compare operations.
...
BUG=
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/25009003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17091 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-02 18:15:57 +00:00
adamk@chromium.org
e5f2d0f7bd
Avoid allocations in Object.observe access check tests
...
BUG=v8:2907
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/24999007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17090 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-02 18:06:20 +00:00
bmeurer@chromium.org
81e4550796
Always use timeGetTime() for TimeTicks::Now() on Windows.
...
This way, we also ensure that timeGetTime() is used for Time::Now(),
and thereby Date.now() even if GetTickCount64() is available.
Also add test coverage for Time::Now(), TimeTicks::Now() and
TimeTicks::HighResNow().
BUG=chromium:288924
TEST=cctest/test-timer
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/25468003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17080 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-02 13:30:31 +00:00
verwaest@chromium.org
7e0ea6ab46
Only fold polymorphic into monomorphic load if all load from either receiver or same prototype.
...
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/25718002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17078 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-02 13:24:08 +00:00
haitao.feng@intel.com
7fc8679c4e
Tweak SmiAdd for X64
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/24754002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17074 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-02 11:46:01 +00:00
yurys@chromium.org
b3c440f8da
Fix threading problems in test-api when running on simulator
...
Sampler can retrieve current simulator for profiled isolate from its ThreadLocalTop without calls to Isolate::FindPerThreadDataForThread which sometimes leads to acquring same mutex second time.
BUG=v8:2874
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/25053002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 13:54:53 +00:00
dcarney@chromium.org
7fae9959e9
remove Isolate::Current from ScriptData and Script
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/25037002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17041 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 09:56:04 +00:00
mstarzinger@chromium.org
191bcf20cc
Limit entry points into the parser API.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/24104006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17033 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 09:27:03 +00:00
dcarney@chromium.org
6dd72b6416
change of V8_DEPRECATED to be enabled behind a gyp flag
...
also add a deprecation message for newer gcc versions
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/25226002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17006 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 13:28:23 +00:00
mstarzinger@chromium.org
f03dbcff94
Function::Call and Object::CallAsFunction APIs should allow v8::Value as a receiver
...
Since the primitive values can be a receiver of strict mode functions in
ECMA262 5.1th, v8::Function::Call and Object::CallAsFunction should take
v8::Value as a receiver instead of v8::Object.
BUG=v8:2915
TEST=cctest/test-api
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/24920003
Patch from Yusuke Suzuki <yusukesuzuki@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17003 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 11:47:36 +00:00
mvstanton@chromium.org
81557f21fc
Use a walking visitor to traverse JSObject structure. The purpose is to prepare for more complex context-dependent walks of the structure, needed for allocation site and pretenuring work. Different visitors can be created that annotate the object in various ways.
...
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/25025002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 11:36:50 +00:00
dcarney@chromium.org
b81c581b38
make v8::Locker not use Isolate::GetCurrent()
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/25002004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16988 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 11:32:13 +00:00
hpayer@chromium.org
8f60f65bdf
Disable gc stress mode for mjsunit timer test.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/24979002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16984 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 11:04:16 +00:00
dcarney@chromium.org
7fcd0f395e
remove Local::New with no isolate parameter
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/24550006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 07:04:02 +00:00
titzer@chromium.org
d441160cab
Implement local check elimination on basic blocks.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/23866016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16970 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 16:25:57 +00:00
mstarzinger@chromium.org
9c3ffc4f58
Fix replaying of HCapturedObject for nested objects.
...
R=titzer@chromium.org
TEST=mjsunit/compiler/property-refs,mjsunit/compiler/escape-analysis
Review URL: https://codereview.chromium.org/24561002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16969 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 15:28:46 +00:00
dcarney@chromium.org
47e32d0339
Add EscapableHandleScope to api to fix problems with HandleScope::Close
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/24245005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16965 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 13:46:37 +00:00
dcarney@chromium.org
6245d34b95
build fix for 16957
...
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/24726002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16958 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 08:47:59 +00:00
dcarney@chromium.org
7bad4ba648
remove uses of static oddball accessors using GetCurrent in advance of removal from api
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/24508006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16957 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 08:21:48 +00:00
dcarney@chromium.org
2efd6aa179
add isolate parameter to ThrowException
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/24538002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16955 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 07:37:59 +00:00
machenbach@chromium.org
7c0c861e7a
Fix comment in test case.
...
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/24643002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16949 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 18:53:33 +00:00
machenbach@chromium.org
9fd455872c
Let timer test retry for 20ms to reduce flakiness.
...
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/24484003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16948 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 16:47:56 +00:00
verwaest@chromium.org
3ee82ddc3f
Special handle for mul/div minus one when kAllUsesTruncatingToInt32
...
BUG=
R=verwaest@chromium.org
Review URL: https://chromiumcodereview.appspot.com/24521002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16943 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 15:10:48 +00:00
hpayer@chromium.org
77000f2d59
Disable timer mjsunit test on Windows.
...
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/24485004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16942 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 12:46:45 +00:00
hpayer@chromium.org
f59bcf2f3b
Revert OS::TimeCurrentMillis on Windows introduced in r16413.
...
BUG=chromium:288924
R=danno@chromium.org , jkummerow@chromium.org
Review URL: https://codereview.chromium.org/24529002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16938 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 09:50:48 +00:00
verwaest@chromium.org
d0e12549ed
Reset IC to premonomorphic rather than uninitialized.
...
R=mstarzinger@chromium.org
Review URL: https://chromiumcodereview.appspot.com/24512003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16936 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 09:25:39 +00:00
olivf@chromium.org
d268078ce0
Fix flaky parallel recompilation test.
...
On very rare circumstances parallel recompilation would install
the optimized method earlier than expected and the test would fail.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/24495005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16933 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 08:23:14 +00:00
mstarzinger@chromium.org
45ab50673e
Expose SameValue equality comparison algorithm
...
Since SameValue algorithm is defined formally in ECMA262 and V8 already
exported Equals and StrictEquals algorithms, SameValue should be exposed.
And in this issue, we fix the issue of Object::SameValue implementation,
SameValue(0.0, -0.0) returnes true.
BUG=v8:2909
TEST=cctest/test-api/Equality
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/24360017
Patch from Yusuke Suzuki <yusukesuzuki@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16924 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 16:51:43 +00:00
jkummerow@chromium.org
e7130a1e2b
Migrate to new test status file syntax
...
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/23498058
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16919 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 12:08:33 +00:00
ulan@chromium.org
9de5748460
Android: sync test/intl to device and disable default-locale.js test.
...
R=jochen@chromium.org
Review URL: https://chromiumcodereview.appspot.com/24031008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16918 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 11:49:33 +00:00
mstarzinger@chromium.org
e48a09896d
Disable GC stress for mjsunit/opt-elements.kind test.
...
R=mvstanton@chromium.org
TEST=mjsunit/opt-elements-kind (in GC stress mode)
Review URL: https://codereview.chromium.org/23889043
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16916 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 11:35:57 +00:00
mstarzinger@chromium.org
1e142f0e00
Correctly check for AllowHeapAllocation::IsAllowed().
...
R=adamk@chromium.org , hpayer@chromium.org
Review URL: https://codereview.chromium.org/24302009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16915 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 11:19:37 +00:00
rodolph.perfetta@gmail.com
6d8f4d52bf
ARM: Tweak Math.exp.
...
Avoid corrupting the input and small assembly tuning.
BUG=none
TEST=test/mjsunit/lithium/MathExp.js
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/24278004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16913 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 10:40:03 +00:00
palfia@homejinni.com
2ad4ad92ea
MIPS: Fixed a bug in CopyBytes() and new test cases for MIPS macro assembler.
...
Port r16873 (c2880bc)
BUG=
TEST=cctest/test-macro-assembler-mips
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/24266007
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16904 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 19:38:54 +00:00
olivf@chromium.org
42ce84134f
Revert "Allow control intructions to have side effects."
...
Breaks arm build.
BUG=
TBR=titzer@chromium.org
Review URL: https://codereview.chromium.org/24255015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16903 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 18:57:32 +00:00
olivf@chromium.org
3e13af46e4
Allow control intructions to have side effects.
...
As a first application convert HCompareGeneric to a control Instruction, thus avoid materializing a boolean result value.
BUG=
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/23710070
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16902 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 16:56:34 +00:00
dcarney@chromium.org
9a62b1dab7
move CopyablePersistentTraits to v8.h
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/24356002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16880 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 11:27:07 +00:00
dcarney@chromium.org
86a2e4849a
remove Isolate::GetCurrent from Context api functions
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/24345003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16877 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 11:25:52 +00:00
bmeurer@chromium.org
eac59b81ff
Fixed a bug in CopyBytes() and new test cases for ARM macro assembler
...
TEST=cctest/test-macro-assembler-arm
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/23447035
Patch from Bangfu Tao <bangfu.tao@samsung.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16873 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 08:06:58 +00:00
prybin@chromium.org
f536eb164f
LiveEdit to mark more closure functions for re-instantiation when scope layout changes
...
BUG=v8:2872
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/23783007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16868 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 13:15:31 +00:00
jochen@chromium.org
a3cef1a9db
Skip tests failing on the no-i18n bot
...
R=machenbach@chromium.org , mstarzinger@chromium.org , jkummerow@chromium.org
Review URL: https://codereview.chromium.org/23708055
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16867 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 13:13:57 +00:00
mstarzinger@chromium.org
e59cf6214d
Test that we can bootstrap into the first page of each space.
...
R=olivf@chromium.org
TEST=cctest/test-spaces/SizeOfFirstPageIsLargeEnough
Review URL: https://codereview.chromium.org/24261007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16863 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 12:18:17 +00:00
dcarney@chromium.org
de39d37d5d
build fix for 16858
...
TBR=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23750008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16860 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 11:29:20 +00:00
dcarney@chromium.org
545728334a
remove remaining uses of default isolate in tests
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23929006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16858 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 10:52:20 +00:00
machenbach@chromium.org
1a3f3b0569
Skip intl tests from test262 when intl support is disabled.
...
Skips the whole intl directory if intl support is disabled through the test driver.
One test outside the intl directory is skipped separately. It will be handled in an extra CL.
R=jochen@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/23792008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16854 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 09:26:25 +00:00
mstarzinger@chromium.org
b4f120eadd
Prevent test-log.cc from creating log files.
...
R=dcarney@chromium.org
TEST=cctest/test-log/EquivalenceOfLoggingAndTraversal
Review URL: https://codereview.chromium.org/23526073
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16852 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 08:49:33 +00:00
olivf@chromium.org
6fc2875d51
Fix Environment size mismatch in r6849.
...
TBR=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23983043
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16851 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 08:34:23 +00:00
mvstanton@chromium.org
16f73f525b
Turn off GcStress for another mjsunit test that asserts heavily on array
...
ElementsKind.
BUG=
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/23983041
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16850 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 07:26:11 +00:00
titzer@chromium.org
e1ebbcbb02
Use Unique<Map> in CompareMap.
...
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/24243005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16843 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 17:02:57 +00:00
mstarzinger@chromium.org
ad51bf945e
Mark failing test262 tests for Windows and Mac.
...
TRB=jochen@chromium.org
TEST=test262
Review URL: https://codereview.chromium.org/23694046
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16841 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 16:25:35 +00:00
dcarney@chromium.org
4aabca0dfd
stop writing isolate-* files
...
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/24072008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16837 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 15:06:20 +00:00