rafaelw@chromium.org
1b270ef5ea
Re-enable Object.observe and add enforcement for security invariants.
...
This patch reverts r21062 which disabled Object.observe and the relevant tests.
It also adds enforcement for the following three invariants:
1) No observer may receive a change record describing changes to an object which is in different security origin (context have differing security tokens)
2) No observer may receive a change record whose context's security token is different from that of the object described by the change.
3) Object.getNotifier will return null if the caller and the provided object are in differing security origins
Further, it ensures that the global object can never be observed nor a notifier retrieved for it.
Tests are included.
R=verwaest@chromium.org , rossberg
LOG=Y
Review URL: https://codereview.chromium.org/265503002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21122 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-02 13:55:11 +00:00
mvstanton@chromium.org
53d7aa29bb
v8:3303 MultithreadedParallelIsolates has a race condition
...
Disabling test until bug is fixed.
R=svenpanne@chromium.org
BUG=v8:3303
LOG=N
Review URL: https://codereview.chromium.org/263893003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21120 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-02 12:59:48 +00:00
yangguo@chromium.org
88144ee17f
Kiss goodbye to MaybeObject.
...
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/259173003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-30 12:25:18 +00:00
mvstanton@chromium.org
15dc39a86f
Simplify feedback vector creation and store in SharedFunctionInfo.
...
LOG=N
BUG=v8:3212
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/254623002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21085 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-30 10:51:01 +00:00
hpayer@chromium.org
c7768f4cd8
Remove BootUpMemoryUse test.
...
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/254273002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21073 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-30 08:19:38 +00:00
yangguo@chromium.org
ace81fd71b
Hide some more heap allocators.
...
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/252213002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21069 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-30 06:26:50 +00:00
danno@chromium.org
55fbf13ec1
disable Object.observe
...
R=danno@chromium.org , danno
BUG=
Review URL: https://codereview.chromium.org/252063003
Patch from Rafael Weinstein <rafaelw@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21062 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-29 15:11:57 +00:00
ishell@chromium.org
9ca2fc30a9
OrderedHashTable::FindEntry() handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/260313003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21057 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-29 14:16:38 +00:00
ishell@chromium.org
c3d349f028
OrderedHashMap::Lookup() and ObjectHashTable::Lookup() handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/256743008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21055 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-29 14:09:14 +00:00
yangguo@chromium.org
30e2802e12
Hide heap methods where possible.
...
Factory is already a friend class of Heap.
We introduce a TestHeap class in cctest.h to access protected methods.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/247263003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21053 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-29 13:58:55 +00:00
ishell@chromium.org
c8e95c411c
JSObject::GetHiddenProperty() handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/255153002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21052 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-29 13:51:14 +00:00
yangguo@chromium.org
99d9712bb0
Return MaybeHandle from Object::ToSmi.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/260083011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-29 13:18:27 +00:00
dcarney@chromium.org
7b1e830489
Remove String::Visit
...
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/254763008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21046 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-29 13:09:31 +00:00
danno@chromium.org
af46ecddda
Micro-optimizations to pop() and shift()
...
R=verwaest@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/247613002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21043 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-29 11:33:39 +00:00
ulan@chromium.org
1a2d652658
Remove old-style accessor support from runtime.
...
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/258243003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21041 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-29 10:59:14 +00:00
ulan@chromium.org
39c4b3c18d
Fix android_arm64 build after r21001.
...
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/253873010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-29 10:58:16 +00:00
yangguo@chromium.org
14f132c2d9
Refactor calls to CALL_HEAP_FUNCTION.
...
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/258953009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-29 07:02:11 +00:00
yangguo@chromium.org
ee0cd292d7
Tighten OpenHandle's extra checks.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/240113010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-28 13:42:03 +00:00
yangguo@chromium.org
0b8d76f74d
Fix assertion when collecting stack trace from debug break.
...
R=mstarzinger@chromium.org
BUG=v8:3296
LOG=N
Review URL: https://codereview.chromium.org/256113003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21015 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-28 12:08:17 +00:00
alph@chromium.org
a9655b7d37
Add timestamps to CPU profile samples.
...
BUG=363976
LOG=Y
R=bmeurer@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/259803002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20993 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-25 18:53:06 +00:00
jochen@chromium.org
c27da0c9b2
Remove static CallCompletedCallback handlers
...
BUG=none
R=svenpanne@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/249313002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20985 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-25 13:49:22 +00:00
jochen@chromium.org
8795d02bfd
Enter a description of the change.
...
Reland 20968 - "Merge v8utils.* and utils.*"
> BUG=none
> R=mstarzinger@chromium.org
> LOG=n
>
> Review URL: https://codereview.chromium.org/256753002
BUG=none
LOG=n
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/250733004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20984 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-25 13:47:01 +00:00
ishell@chromium.org
3ce912038e
ObjectHashTable's key and WeakHashTable's key types are now Handle<Object> instead of Object*.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/257853003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20982 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-25 13:35:03 +00:00
ishell@chromium.org
fd02e1220c
HashTable::New() handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/257633002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20980 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-25 13:06:21 +00:00
jochen@chromium.org
f2a1176f90
Revert 20968 - "Merge v8utils.* and utils.*"
...
> BUG=none
> R=mstarzinger@chromium.org
> LOG=n
>
> Review URL: https://codereview.chromium.org/256753002
BUG=none
LOG=n
TBR=danno@chromium.org
Review URL: https://codereview.chromium.org/250823003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20975 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-25 12:21:32 +00:00
yangguo@chromium.org
cb2f43cb14
Always include debugger support.
...
Motivation: we do not have test coverage for debuggersupport=off.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/256653004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20969 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-25 11:00:37 +00:00
jochen@chromium.org
c0380f6a56
Merge v8utils.* and utils.*
...
BUG=none
R=mstarzinger@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/256753002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20968 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-25 10:57:34 +00:00
hpayer@chromium.org
20107bf2d8
Remove lazy sweeping.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/254603002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20966 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-25 09:50:42 +00:00
plind44@gmail.com
01ef9aef0a
MIPS: CodeStubs contain their corresponding Isolate* now. (part 2)
...
Port r20940 (a5dde97)
Original commit message:
This CL mechanically removes all useless Isolate* parameters from code
stub functions, making things quite a bit simpler.
BUG=359977
LOG=y
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/251473004
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20945 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-24 14:51:25 +00:00
plind44@gmail.com
bb1abb7f01
MIPS: CodeStubs contain their corresponding Isolate* now. (part 1)
...
Port r20919 (aa51355)
Original commit message:
This is a purely mechanical change, adding an Isolate* to the CodeStub
constructor and a corresponding field plus a getter. A few methods in
CodeStub and its subclasses can be simplified now, but this is done in
a separate CL.
The underlying reason apart from simplicity is that deep down in the
call chain we need to detect if the serializer is active or not. This
information will be part of the Isolate, not a global variable with
funky synchronization primitives around it (which is fundamentally
wrong and the underlying cause for race conditions and a catch-22
during initialization).
BUG=359977
LOG=y
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/252383005
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20944 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-24 14:42:33 +00:00
svenpanne@chromium.org
b8d27f9d38
CodeStubs contain their corresponding Isolate* now. (part 2)
...
This CL mechanically removes all useless Isolate* parameters from code
stub functions, making things quite a bit simpler.
BUG=359977
LOG=y
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/255543003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20940 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-24 12:07:40 +00:00
ulan@chromium.org
484442d1f5
Mark test-cpu-profiler/SampleWhenFrameIsNotSetup as flaky.
...
BUG=v8:3287
LOG=N
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/252493002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20930 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-24 09:23:38 +00:00
hpayer@chromium.org
738f85c7d8
Don't move the object start of objects on non-swept pages.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/255603002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20929 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-24 09:04:12 +00:00
ishell@chromium.org
e493dc9ca9
Tiny cleanup.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/247953003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20925 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-24 08:35:04 +00:00
svenpanne@chromium.org
dd30db9021
CodeStubs contain their corresponding Isolate* now. (part 1)
...
This is a purely mechanical change, adding an Isolate* to the CodeStub
constructor and a corresponding field plus a getter. A few methods in
CodeStub and its subclasses can be simplified now, but this is done in
a separate CL.
The underlying reason apart from simplicity is that deep down in the
call chain we need to detect if the serializer is active or not. This
information will be part of the Isolate, not a global variable with
funky synchronization primitives around it (which is fundamentally
wrong and the underlying cause for race conditions and a catch-22
during initialization).
BUG=359977
LOG=y
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/246643014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20919 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-24 06:25:42 +00:00
ishell@chromium.org
4591771820
StringTable::LookupKey() and all callers handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/249103002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20915 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-23 15:43:39 +00:00
yangguo@chromium.org
6d250412f1
Clean up some uses of Failures and MaybeObjects.
...
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/245963007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20914 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-23 15:08:03 +00:00
ulan@chromium.org
6cae9d1ce8
Allow Object.defineProperty to update value of an API accessor.
...
This is needed for converting internal accessors to API accessors and can break blink tests.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/240573004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20910 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-23 13:05:38 +00:00
svenpanne@chromium.org
eeb1d7020e
Revert "Simplify v8/Isolate teardown."
...
This reverts commit r20876, it broke non-snapshot tests.
TBR=bmeurer@chromium.org
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20879 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-22 10:45:43 +00:00
svenpanne@chromium.org
206dbe87e7
Bumped the boot-up memory-limit, part 2.
...
Basically a follow-up to r20851
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/247193003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20878 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-22 09:40:18 +00:00
svenpanne@chromium.org
618ff3a3f5
Simplify v8/Isolate teardown.
...
This implies that one better has a v8::V8::Initialize when v8::V8::Dispose is used.
BUG=359977
LOG=y
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/238353015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20876 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-22 09:24:56 +00:00
verwaest@chromium.org
c9db6148a9
Set code on the SharedFunctionInfo before creating the function.
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/238773009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20873 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-22 08:30:09 +00:00
yangguo@chromium.org
c44dc2fc3d
Fix interpreted-regexp test.
...
TBR=ishell@chromium.org
Review URL: https://codereview.chromium.org/246953002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20869 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-22 06:54:16 +00:00
adamk@chromium.org
1572115483
Fix breakage on V8 Linux - nosse2
...
This was introduced by https://code.google.com/p/v8/source/detail?r=20857
R=adamk@chromium.org
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/241433002
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20858 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-17 19:39:48 +00:00
adamk@chromium.org
3308cb5857
ES6: Add support for Map/Set forEach
...
This implements MapIterator and SetIterator which matches
the same constructs in the ES6 spec. However, these 2
iterators are not exposed to user code yet. They are only
used internally to implement Map.prototype.forEach and
Set.prototype.forEach.
Each iterator has a reference to the OrderedHashTable where
it directly accesses the hash table's entries.
The OrderedHashTable has a reference to the newest iterator
and each iterator has a reference to the next and previous
iterator, effectively creating a double linked list.
When the OrderedHashTable is mutated (or replaced) all the
iterators are updated.
When the iterator iterates passed the end of the data table
it closes itself. Closed iterators no longer have a
reference to the OrderedHashTable and they are removed from
the double linked list. In the case of Map/Set forEach, we
manually call Close on the iterator in case an exception was
thrown so that the iterator never reached the end.
At this point the OrderedHashTable keeps all the non finished
iterators alive but since the only thing we currently expose
is forEach there are no unfinished iterators outside a forEach
call. Once we expose the iterators to user code we will need
to make the references from the OrderedHashTable to the
iterators weak and have some mechanism to close an iterator
when it is garbage collected.
BUG=1793, 2323
LOG=Y
R=adamk@chromium.org
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/238063009
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20857 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-17 17:45:32 +00:00
mstarzinger@chromium.org
1213ecb50b
Make Heap::AllocateRaw*String private.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/241023002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20856 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-17 14:58:03 +00:00
mvstanton@chromium.org
9ce1c5144a
Serializer enable/disable flags need thread safety.
...
BUG=
R=hpayer@chromium.org , svenpanne@chromium.org
Review URL: https://codereview.chromium.org/240193002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20855 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-17 14:45:06 +00:00
jarin@chromium.org
3277f2b90b
Bump up the boot-up memory limit.
...
... to compansate for the extre memory consumed by r20840
("Select function map based on prototype and shared function info.")
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/239513015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20851 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-17 13:58:51 +00:00
mstarzinger@chromium.org
1def20d5ef
Make Heap::AllocateRaw private.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/238443016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20849 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-17 13:53:06 +00:00
ishell@chromium.org
313844d842
Heap::AllocateStringFromOneByte() and major part of its callers handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/239243018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-17 13:27:02 +00:00
mstarzinger@chromium.org
1c314382c0
Extend GCMole to also cover cctest files.
...
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/240933002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20841 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-17 11:57:08 +00:00
hpayer@chromium.org
39b5090f8e
Grow old generation slower on low-memory devices.
...
BUG=
R=mstarzinger@chromium.org , rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/236063015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20837 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-17 11:27:45 +00:00
rossberg@chromium.org
6d475fb350
Fix handlification bug in test
...
R=bmeurer@chromium.org , mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/240603004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20835 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-17 09:30:41 +00:00
palfia@homejinni.com
ec73d3db09
Adjust memory limits.
...
- Introduce new constant: kBootCodeSizeMultiplier to handle the code size differences across the platforms.
- Increase memory limits due to larger code size on MIPS.
BUG=
R=danno@chromium.org , plind44@gmail.com
Review URL: https://codereview.chromium.org/234153002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20825 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 21:57:48 +00:00
adamk@chromium.org
91618cf1e9
Revert "ES6: Add support for Map/Set forEach"
...
This reverts https://code.google.com/p/v8/source/detail?r=20823
It broke Windows builds. Will need to find a Windows try bot to figure
out why.
TBR=mstarzinger@chromium.org ,arv@chromium.org
Review URL: https://codereview.chromium.org/238973011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20824 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 21:19:25 +00:00
adamk@chromium.org
7c300d1f83
ES6: Add support for Map/Set forEach
...
This implements MapIterator and SetIterator which matches
the same constructs in the ES6 spec. However, these 2
iterators are not exposed to user code yet. They are only
used internally to implement Map.prototype.forEach and
Set.prototype.forEach.
Each iterator has a reference to the OrderedHashTable where
it directly accesses the hash table's entries.
The OrderedHashTable has a reference to the newest iterator
and each iterator has a reference to the next and previous
iterator, effectively creating a double linked list.
When the OrderedHashTable is mutated (or replaced) all the
iterators are updated.
When the iterator iterates passed the end of the data table
it closes itself. Closed iterators no longer have a
reference to the OrderedHashTable and they are removed from
the double linked list. In the case of Map/Set forEach, we
manually call Close on the iterator in case an exception was
thrown so that the iterator never reached the end.
At this point the OrderedHashTable keeps all the non finished
iterators alive but since the only thing we currently expose
is forEach there are no unfinished iterators outside a forEach
call. Once we expose the iterators to user code we will need
to make the references from the OrderedHashTable to the
iterators weak and have some mechanism to close an iterator
when it is garbage collected.
BUG=1793,2323
LOG=Y
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/240323003
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20823 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 21:12:27 +00:00
rossberg@chromium.org
926ec656de
Implement structural function and array types
...
Just wanted to add two constructors to a datatype, how ugly can it get?
R=bmeurer@chromium.org , jarin@chromium.org
BUG=
Committed: https://code.google.com/p/v8/source/detail?r=20809
Committed: https://code.google.com/p/v8/source/detail?r=20815
Review URL: https://codereview.chromium.org/228263005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20817 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 16:16:37 +00:00
rossberg@chromium.org
e3e81d85bb
Revert "Implement structural function and array types"
...
TBR=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/237963016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20816 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 15:59:39 +00:00
rossberg@chromium.org
6782d9cea3
Implement structural function and array types
...
Just wanted to add two constructors to a datatype, how ugly can it get?
R=bmeurer@chromium.org , jarin@chromium.org
BUG=
Committed: https://code.google.com/p/v8/source/detail?r=20809
Review URL: https://codereview.chromium.org/228263005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20815 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 15:42:22 +00:00
rossberg@chromium.org
a947aeb315
Revert "Implement structural function and array types"
...
TBR=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/240143003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20810 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 13:57:25 +00:00
rossberg@chromium.org
7de4c1c63f
Implement structural function and array types
...
Just wanted to add two constructors to a datatype, how ugly can it get?
R=bmeurer@chromium.org , jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/228263005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20809 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 13:44:26 +00:00
yangguo@chromium.org
7af5597287
Reland "Move functions from handles.cc to where they belong."
...
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/239113009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20807 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 13:28:11 +00:00
yangguo@chromium.org
0cba01c420
Revert "Move functions from handles.cc to where they belong."
...
This reverts r20802 .
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/239543010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20804 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 12:35:50 +00:00
yangguo@chromium.org
3b66957602
Move functions from handles.cc to where they belong.
...
R=mvstanton@chromium.org , ulan@chromium.org
Review URL: https://codereview.chromium.org/237673014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20802 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 12:16:06 +00:00
bmeurer@chromium.org
e05b58f0b0
Improve execution time of cctest/test-types.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/239513009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20798 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 11:56:51 +00:00
yangguo@chromium.org
5e02daca21
Fix unused variable warnings.
...
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/238543008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20797 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 11:50:24 +00:00
yangguo@chromium.org
17b33fa1da
Handlify code allocation.
...
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/235153003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20795 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 11:38:56 +00:00
verwaest@chromium.org
cf26c1421a
Move property addition code from JSObject to Map
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/238543005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20791 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 10:45:57 +00:00
yangguo@chromium.org
139be49fcf
Remove some uses of MaybeObject methods.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/236303015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20786 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 07:26:34 +00:00
yangguo@chromium.org
9a71bc722d
Remove further unhandlified call sites of number allocations.
...
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/239143003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20785 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 06:18:37 +00:00
adamk@chromium.org
a44e10cad6
Revert "ES6: Add support for Map/Set forEach"
...
This reverts commit https://code.google.com/p/v8/source/detail?r=20781 .
It broke the Win32 builders.
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/239163012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20782 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 01:03:56 +00:00
adamk@chromium.org
a1af5a2a2f
ES6: Add support for Map/Set forEach
...
This implements MapIterator and SetIterator which matches
the same constructs in the ES6 spec. However, these 2
iterators are not exposed to user code yet. They are only
used internally to implement Map.prototype.forEach and
Set.prototype.forEach.
Each iterator has a reference to the OrderedHashTable where
it directly accesses the hash table's entries.
The OrderedHashTable has a reference to the newest iterator
and each iterator has a reference to the next and previous
iterator, effectively creating a double linked list.
When the OrderedHashTable is mutated (or replaced) all the
iterators are updated.
When the iterator iterates passed the end of the data table
it closes itself. Closed iterators no longer have a
reference to the OrderedHashTable and they are removed from
the double linked list. In the case of Map/Set forEach, we
manually call Close on the iterator in case an exception was
thrown so that the iterator never reached the end.
At this point the OrderedHashTable keeps all the non finished
iterators alive but since the only thing we currently expose
is forEach there are no unfinished iterators outside a forEach
call. Once we expose the iterators to user code we will need
to make the references from the OrderedHashTable to the
iterators weak and have some mechanism to close an iterator
when it is garbage collected.
BUG=1793,2323
LOG=Y
R=adamk@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/236143002
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20781 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 00:40:03 +00:00
plind44@gmail.com
5a016958c6
MIPS: Add big-endian support for MIPS.
...
Important notices:
- The snapshot cannot be created for big-endian target in cross-compilation
environment on little-endian host using simulator.
- In order to have i18n support working on big-endian target, the icudt46b.dat and
icudt46b_dat.S files should be generated and upstreamed to ICU repo.
- The mjsunit 'nans' test is endian dependent, it is skipped for mips target.
- The zlib and Mandreel from Octane 2.0 benchmark are endian dependent due to
use of typed arrays.
TEST=
BUG=
R=jkummerow@chromium.org , plind44@gmail.com
Review URL: https://codereview.chromium.org/228943009
Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20778 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-15 16:39:21 +00:00
rossberg@chromium.org
7b7f787e3b
Re-reland "More tests for Union & Intersect"
...
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/237143002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20733 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-14 15:35:36 +00:00
yangguo@chromium.org
01fc2ab69b
Allow allocation and GC in access check callbacks.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/234913003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20730 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-14 14:03:20 +00:00
hpayer@chromium.org
c1435b0832
Don't run tests that rely on compaction when compaction is turned off.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/236203010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20728 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-14 13:52:41 +00:00
verwaest@chromium.org
de50f63f16
Clean up the public interface of Map.
...
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/234573005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20716 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-14 11:19:37 +00:00
rossberg@chromium.org
b73257b7a3
Revert "Reland "More tests for Union & Intersect""
...
Need to reproduce wrong result only occurring with ASAN.
TBR=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/236873002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20712 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-14 09:46:56 +00:00
mvstanton@chromium.org
a9db3bc868
Some tests and simplified TransitionArray copying
...
Tests for verifying that we deal correctly with shrinking transition
arrays while allocating a copy of one.
Also, we can rely on a transition array only shrinking and not
disappearing during gc while copying one.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/232883003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20710 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-14 08:58:00 +00:00
rossberg@chromium.org
a3d743b470
Reland "More tests for Union & Intersect"
...
Fixes size approximation in Intersect. Also lowers the number of fuzzed types in test, to address time-outs.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/226523004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20706 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-14 08:46:39 +00:00
yangguo@chromium.org
7d987b3744
Allow GetScriptNameOrSourceURL to be called with exception pending.
...
R=jarin@chromium.org , ishell@chromium.org
Review URL: https://codereview.chromium.org/235943006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20705 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-14 08:27:00 +00:00
marja@chromium.org
d70f78827e
Fail the compilation if the cached data is invalid.
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/234953002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20703 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-14 07:35:46 +00:00
yangguo@chromium.org
80a974ba00
Reland "Handlify GetProperty."
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/235083002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20689 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-11 12:47:34 +00:00
dcarney@chromium.org
ee9f7f8942
Revert "More tests for Union & Intersect"
...
This reverts r20684.
TBR=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/235133002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20687 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-11 12:33:20 +00:00
mvstanton@chromium.org
c5eaf80707
Handlify Map::CopyDropDescriptors().
...
* And contain knowledge better in TransitionArray and DescriptorArray (for example WhitenessWitness is now private to DescriptorArray).
* And remove some factory methods
* And handlify some other things.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/234783002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20686 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-11 12:13:53 +00:00
yangguo@chromium.org
93c9717473
Revert "Handlify GetProperty."
...
This reverts r20682.
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/234893003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20685 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-11 11:56:54 +00:00
rossberg@chromium.org
80d8460a20
More tests for Union & Intersect
...
Some fixes of corner cases on the way
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/230923005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20684 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-11 11:53:35 +00:00
marja@chromium.org
069d783a91
Remove the PreCompile API and ScriptData.
...
The new compilation API (ScriptCompiler::Compile) can produce the same data, so
the separate precompilation phase is not needed. ScriptData is replaced by
ScriptCompiler::CachedData.
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/225753004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20683 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-11 11:44:49 +00:00
yangguo@chromium.org
a3d68ca64d
Handlify GetProperty.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/233233004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20682 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-11 11:26:22 +00:00
yangguo@chromium.org
380ae9810e
Return MaybeHandle from Invoke.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/231883007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20680 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-11 10:41:09 +00:00
ulan@chromium.org
ff953ac055
Make maps in monomorphic IC stubs weak.
...
Maps in monomorphic Load, KeyedLoad, Store, KeyedStore, and CompareNil IC
stubs are treated as weak references by the marking visitor.
During generation of an IC stub with a weak map, the stub is appended to the
dependent code array of the map. When the map dies, all stubs in its dependent
code array are invalidated by setting embedded maps to undefined.
BUG=v8:2073
LOG=Y
TEST=cctest/test-heap/WeakMapInMonomorphic*IC
R=mstarzinger@chromium.org , verwaest@chromium.org
Review URL: https://codereview.chromium.org/188783003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20679 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-11 10:36:09 +00:00
yangguo@chromium.org
a640707213
Implement handlified String::Equals and Name::Equals.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/225823003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20669 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-11 07:27:25 +00:00
svenpanne@chromium.org
b460910644
x64: Make sure that the upper half of a 64bit register contains 0 for int32 values.
...
BUG=360611
LOG=y
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/225393005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20664 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-11 06:32:06 +00:00
bmeurer@chromium.org
990b57ba1d
Treat uninitialized as internal type.
...
TEST=cctest/test-types
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/232913002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20650 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 11:51:03 +00:00
rossberg@chromium.org
cf4eddd3f8
Yet more type system tests
...
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/232843002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20649 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 11:49:18 +00:00
ishell@chromium.org
32735ae3a9
Object::GetElements() and friends maybehandlification.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/231103002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20644 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 09:20:11 +00:00
bmeurer@chromium.org
c5b6e76ada
Fix compiler warnings on Win64.
...
TEST=cctest/test-types
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/232773002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20643 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 09:14:46 +00:00
bmeurer@chromium.org
4620ae5cf1
Fix symmetry of Maybe() predicate. Fix bug in NowContains() predicate.
...
Add tests for TypeImpl::Of(), TypeImpl::NowOf() and
TypeImpl::NowContains(). Improves the implementation of
TypeImpl::NowIs() to match that of TypeImpl::NowContains().
Mark test-types with NO_VARIANTS to speedup testing, since
the variants do not affect the type system at all.
Also improve test coverage for types.
TEST=cctest/test-types
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/230673002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20639 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 08:04:50 +00:00
bmeurer@chromium.org
5a564648dd
Improve reproducibility of test runs.
...
Add random seed to run-tests.py, using either a user supplied
value or a random number generated by random.SystemRandom().
This same random seed is passed to all test cases, making sure
that we can easily reproduce test failures that depend on
random numbers (i.e. bugs related to our handwritten ASLR).
Also fix all uses of rand() to make use of our RNG class
instead.
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/231443002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20637 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 07:25:49 +00:00
mvstanton@chromium.org
41b6c8a0f1
Handlefy Descriptor and other code in objects.cc
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/228333003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20628 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 14:26:32 +00:00
machenbach@chromium.org
1b841f369d
Fix test expectations for nosnap windows.
...
BUG=v8:3216
LOG=n
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/230913002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20627 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 14:01:03 +00:00
ishell@chromium.org
74e7a4ad07
ElementsAccessor::SetLength() maybehandlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/229943006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20621 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 13:16:19 +00:00
machenbach@chromium.org
3d427b5599
Skip tests in nosnap mode.
...
Depends on https://codereview.chromium.org/230743002/ .
BUG=v8:3216
LOG=n
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/230583003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20618 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 13:01:54 +00:00
jochen@chromium.org
dc4ba08d17
Allow the embedder to pass the virtual memory limit to v8
...
The getrlimit() call might be sandboxed, so it's not safe to use it.
BUG=none
R=mstarzinger@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/228923002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20615 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 12:45:56 +00:00
yangguo@chromium.org
aee76a059a
Remove calls to non-handlified version of GetProperty(name).
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/229973004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20611 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 12:21:47 +00:00
bmeurer@chromium.org
a0ac88db82
Fix various bugs in the type systems, and improve test coverage.
...
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/230463003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20609 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 11:12:15 +00:00
hpayer@chromium.org
c85cc472e7
Introduced Atomic8 and added no-barrier Atomic8 accessors.
...
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/228613005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20598 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 08:20:10 +00:00
adamk@chromium.org
902ad4a17a
Use OrderedHashTables as the backing store of JSSet and JSMap
...
This also deletes ObjectHashSet as it's no longer used.
BUG=v8:1793
LOG=N
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/225183009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20585 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 20:06:35 +00:00
rossberg@chromium.org
91dec1adfe
Shut up Windows and ASAN
...
TBR=dcarney@chromium.org
BUG=
Review URL: https://codereview.chromium.org/226883003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20575 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 11:13:26 +00:00
rossberg@chromium.org
19f924a2ae
Reland "Refactoring to allow adding new structured types"
...
Same as before, except that it's now using a void array instead of a struct, to shut up Clang warnings.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/224733023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20574 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 10:50:56 +00:00
yangguo@chromium.org
ed9f1af2fc
Implement handlified String::Flatten.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/228093004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20572 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 09:49:49 +00:00
yangguo@chromium.org
3726ba90a7
Change exception type to Object.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/227163008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20571 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 09:44:24 +00:00
yangguo@chromium.org
23dbc85bd7
Fix more MUST_USE_RESULT warnings.
...
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/228233002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20563 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 07:54:27 +00:00
dcarney@chromium.org
1d138ecdd5
Revert "Refactoring to allow adding new structured types"
...
This reverts commit r20538 for breaking gcmole.
TBR=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/228223002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20562 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 07:48:47 +00:00
yangguo@chromium.org
9ed8c39cac
Return MaybeHandle from SetElement and DeleteElement.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/227573002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20560 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 07:04:13 +00:00
alexandre.rames@arm.com
622ddd3495
ARM64: Introduce a version of ADR handling distant targets.
...
This fixes an out-of-range label error for an ADR instruction in the
mozilla/data/js1_5/Regress/regress-280769-2.js test.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/222433002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20545 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-07 12:33:03 +00:00
rossberg@chromium.org
32f295314c
Refactoring to allow adding new structured types
...
Also, simplfy representation of zone types, using a simple struct.
R=bmeurer@chromium.org
BUG=
LOG=N
Review URL: https://codereview.chromium.org/225923002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20538 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-07 11:00:41 +00:00
dcarney@chromium.org
1b31d2b34a
Skip a bunch of new failing nacl tests
...
R=machenbach@chromium.org
BUG=
Review URL: https://codereview.chromium.org/227133006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20535 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-07 10:44:48 +00:00
yangguo@chromium.org
e7f0beeaa6
Make String.prototype.contains
throw when passing a regular expression
...
Contributed by Mathias Bynens <mathiasb@opera.com>.
TEST=mjsunit/harmony
BUG=v8:3261
LOG=Y
R=yangguo@chromium.org , arv@chromium.org , ishell@chromium.org
Review URL: https://codereview.chromium.org/227113005
Patch from Mathias Bynens <mathiasb@opera.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20534 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-07 10:24:01 +00:00
bmeurer@chromium.org
448486ed48
Use distinct maps for oddballs with special handling in the type system.
...
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/227473002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20531 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-07 09:41:13 +00:00
adamk@chromium.org
8e9eebeba1
OrderedHashTable implementation with Set and Map interfaces
...
OrderedHashTable is an insertion-ordered HashTable based on
Jason Orendorff's writeup of a data structure attributed to Tyler Close:
https://wiki.mozilla.org/User:Jorend/Deterministic_hash_tables
It is intended as the new backing store for JSSet/JSMap, as ES6 requires
insertion-order-based iteration. Note, however, that in the interest of
keeping the initial check-in small this patch does not yet include any
iteration support.
This change also doesn't yet touch any existing behavior, but in
a branch I've verified that these structures pass the existing
JSSet/JSMap mjsunit tests.
BUG=v8:1793
LOG=N
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/220293002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20522 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-04 20:41:57 +00:00
marja@chromium.org
3d1a17c2ac
Update tests to use the new compilation API + related fixes.
...
Esp. get rid of PreCompile in tests, as it's going to be removed.
Notes:
- The new compilation API doesn't have a separate precompilation phase, so there
is no separate way to check for errors except checking the compilation
errors. Removed some tests which don't make sense any more.
- test-api/Regress31661 didn't make sense as a regression test even before the
compilation API changes, because Blink doesn't precompile this short scripts. So
detecting this kind of errors (see crbug.com/31661 for more information) cannot rely
on precompilation errors.
- test-parsing/PreParserStrictOctal has nothing to do with PreParser, and the comment
about "forcing preparsing" was just wrong.
- test-api/PreCompile was supposed to test that "pre-compilation (aka
preparsing) can be called without initializing the whole VM"; that's no longer
true, since there's no separate precompilation step in the new compile
API. There are other tests (test-parsing/DontRegressPreParserDataSizes) which
ensure that we produce cached data.
- Updated tests which test preparsing to use PreParser directly (not via the
preparsing API).
- In the new compilation API, the user doesn't need to deal with ScriptData
ever. It's only used internally, and needed in tests that test internal aspects
(e.g., modify the cached data before passing it back).
- Some tests which used to test preparse + parse now test first time parse +
second time parse, and had to be modified to ensure we don't hit the
compilation cache.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/225743002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20511 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-04 12:36:23 +00:00
yangguo@chromium.org
dd7bb01688
Return MaybeHandle from SetProperty.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/225283005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20509 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-04 12:06:11 +00:00
rmcilroy@chromium.org
3eb418df78
Fix fixed-point vcvt_f64_s32 immediate value encoding
...
The (32 - fraction_bits) value should be encoded so that the least
significant bit is set to bit 5 and the four next bits to bits 0-3. Fix
the previously incorrect encoding. This bug did not cause behavioral
issues before, since in existing uses of the function the order of the
bits in the immediate value does not matter, as they are all 1.
BUG=3256
LOG=N
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/223623003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20508 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-04 11:12:40 +00:00
alexandre.rames@arm.com
1f38f42ef1
ARM64: Fixes and more support for FRINT<X> instructions.
...
Fix simulation and tests for the [-0.5, -0.0[ range for FRINTA and FRINTN, and
add support for FRINTM.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/223843002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20487 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-03 14:30:44 +00:00
yangguo@chromium.org
eedc4c01f5
Return MaybeHandle from NewExternalStringFrom*.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/223653003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20481 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-03 12:41:37 +00:00
yangguo@chromium.org
164e5b580c
Reland "Return MaybeHandle from NewConsString."
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/223813002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20480 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-03 12:30:37 +00:00
yangguo@chromium.org
893f413434
Return MaybeHandle from NewRaw???String.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/223573002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20479 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-03 12:30:08 +00:00
yangguo@chromium.org
87dd16e3cd
Revert "Return MaybeHandle from NewConsString."
...
This reverts r20473.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/223593004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20475 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-03 12:09:14 +00:00
yangguo@chromium.org
be0d2f5d15
Return MaybeHandle from NewConsString.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/223383002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20473 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-03 11:38:01 +00:00
alexandre.rames@arm.com
a6d6cd08a1
ARM64: Fix cctest/test-disasm-arm64/debug on real hardware.
...
Without the 'BREAK' parameter, no instruction is generated when we are not
running with the simulator.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/221903004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20443 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-02 15:45:13 +00:00
verwaest@chromium.org
ca6b727665
Replace CopyMap(constructor->initial_map()) by Map::Create(constructor)
...
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/218633014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20437 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-02 13:30:36 +00:00
rossberg@chromium.org
2fda95eb80
Make stray 'return' an early error
...
As required by the spec, and implemented by other browsers.
(Plus minor clean-up for redeclaration TypeErrors.)
R=marja@chromium.org
BUG=
LOG=Y
Review URL: https://codereview.chromium.org/220473014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20434 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-02 12:38:01 +00:00
alph@chromium.org
923fbafc15
Show references from weak containers as weak in heap snapshots.
...
BUG=356590
LOG=Y
R=ulan@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/213673006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20429 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-02 11:19:53 +00:00
rossberg@chromium.org
45118bfdfb
Make invalid LHSs that are calls late errors
...
Necessary for web legacy compatibility.
Also fold in additional strict mode checks into LHS checks.
Minor constness clean-ups on the way.
R=marja@chromium.org
BUG=chromium:358346
LOG=Y
Review URL: https://codereview.chromium.org/217823003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20428 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-02 11:03:05 +00:00
jochen@chromium.org
b4c3d2f9ba
Skip cctest/test-lockers/MultithreadedParallelIsolates on windows
...
It's already marked as FAIL, PASS everywhere anyways.
BUG=v8:3215
LOG=n
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/221173003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20415 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-01 19:20:31 +00:00
yurys@chromium.org
681c15eb4e
Remove debugger_auto_break flag
...
The flag was introduced to support console debugger in Chrome. That debugger was replaced by DevTools long time ago and the flag is always true now.
BUG=None
LOG=Y
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/220743003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20393 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-01 11:23:23 +00:00
yangguo@chromium.org
c0fa861726
Do not check for interrupt when allocating stack locals.
...
R=dcarney@chromium.org
BUG=357137
LOG=N
Review URL: https://codereview.chromium.org/219373004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20357 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-31 14:14:54 +00:00
jochen@chromium.org
b7039334ae
Revert 20313 - "Ship promises and weak collections"
...
> R=mstarzinger@chromium.org
> BUG=
>
> Committed: https://code.google.com/p/v8/source/detail?r=20211
>
> Review URL: https://codereview.chromium.org/206163004
R=rossberg@chromium.org
TBR=rossberg@chromium.org
LOG=y
BUG=n
Review URL: https://codereview.chromium.org/219303002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20353 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-31 12:40:32 +00:00
jochen@chromium.org
617531da8f
Skip cctest/test-mark-compact/NoPromotion on ARM64
...
BUG=v8:3247
TBR=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/217423006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20351 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-31 12:09:59 +00:00
dcarney@chromium.org
8b304a6832
Implement PersistentValueVector, analogous to PersistentValueMap.
...
BUG=
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/216973002
Patch from Daniel Vogelheim <vogelheim@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20341 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-31 10:03:20 +00:00
dslomov@chromium.org
bd353dc3a0
Inline internal getters for typed arrays & friends.
...
R=hpayer@chromium.org , yangguo@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=20330
Review URL: https://codereview.chromium.org/212603014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20338 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-28 15:25:24 +00:00
jochen@chromium.org
feeccf0d10
Revert r20335 - "Raise StackOverflow during bootstrapping"
...
Reason for revert: New test crashes on nosnap bots
> See https://github.com/joyent/node/issues/7120
>
> R=jarin@chromium.org
> BUG=
>
> Review URL: https://codereview.chromium.org/178073002
>
> Patch from Alexis Campailla <alexis@janeasystems.com>.
TBR=jarin@chromium.org
BUG=none
LOG=n
Review URL: https://codereview.chromium.org/217013002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20337 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-28 14:16:11 +00:00
jarin@chromium.org
ee173152ef
Raise StackOverflow during bootstrapping
...
See https://github.com/joyent/node/issues/7120
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/178073002
Patch from Alexis Campailla <alexis@janeasystems.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20335 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-28 13:26:20 +00:00
haitao.feng@intel.com
a72e3525fc
Refactor the arithmetic instructions for x64
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/214753002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20329 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-28 11:13:14 +00:00
marja@chromium.org
6730ec8433
Amend PersistentValueMap:
...
- Use the surrounding map (instead of Traits::Impl) for weak callback.
- Provide for a fast reference to a mapped value.
- Restructure Traits to accomondate for the first point above.
[Why?] As discussed, I proceeded to replace Impl with the map.
The problem I encountered with that version is that now the
Traits class depends on itself: The weak-related methods require the
map type in their signature. But the map type includes the Traits class
and hence the Traits class method signatures depend on the specific Traits class. That
makes them practically un-derivable: While you can derive a Traits class
from another one, since the compiler now expects methods with a different
signature. To accommodate, I pulled the dispose traits into the weak traits
class. I also removed the Impl*/MapType* parameter from the Dispose call,
since no implementation seems to need it.
R=dcarney@chromium.org
BUG=
Review URL: https://codereview.chromium.org/212893007
Patch from Daniel Vogelheim <vogelheim@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20326 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-28 09:35:50 +00:00
yurys@chromium.org
f7b437d086
Deprecate Start/StopCpuProfiling methods
...
BUG=v8:3213
LOG=Y
R=alph@chromium.org , svenpanne@chromium.org
Review URL: https://codereview.chromium.org/197513005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20325 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-28 09:24:49 +00:00
haitao.feng@intel.com
329b0449d5
Introduce rolp, rorp, rclp, rcrp, shlp, shrp and sarp for x64 port
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/214493002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20320 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-28 04:55:00 +00:00
rossberg@chromium.org
826cf64fd3
Ship promises and weak collections
...
R=mstarzinger@chromium.org
BUG=
Committed: https://code.google.com/p/v8/source/detail?r=20211
Review URL: https://codereview.chromium.org/206163004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20313 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-27 16:42:34 +00:00
yangguo@chromium.org
8847b52097
Reland "Correctly OOM in the CEntryStub after retries."
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/214473003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20297 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-27 10:41:45 +00:00