rmcilroy@chromium.org
cc532e449b
Tests that the GC doesn't mistake non-pointer constant pool entries as pointers.
...
Adds a test for ConstantPoolArray to ensure that the GC
doesn't mistake non-pointer entries as pointers and try
to modify them during scavenge operations.
Also adds asserts to ConstantPoolArray::set(int, *Object) to
ensure we don't add new-space pointers in constant pool
array.
R=hpayer@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=22608
Review URL: https://codereview.chromium.org/396803009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22634 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-28 10:04:36 +00:00
jochen@chromium.org
d9075bf07e
Reland r22460 - "Bootstrapper::DetachGlobal also need to unset g..."
...
| DetachGlobal detaches original context of a global proxy object.
|
| Before this patch, the constructor JSFunction still carried a
| reference to the old context after |Bootstrapper::DetachGlobal|
| call.
| This patch removes the reference by setting the constructor
| null.
|
| Review URL: https://codereview.chromium.org/397953009
TEST=http/tests/security/isolatedWorld w/ --enable-leak-detection
LOG=N
BUG=364377
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/424703002
Patch from Kouhei Ueno <kouhei@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22633 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-28 09:15:10 +00:00
hpayer@chromium.org
e52908e428
Added histogram to track distribution of requested idle notifications.
...
BUG=397026
LOG=n
R=rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/420753002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22632 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-28 09:13:33 +00:00
machenbach@chromium.org
3db23c80c4
[Auto-roll] Bump up version to 3.28.42.0
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/420943002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22628 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-26 00:34:19 +00:00
akos.palfi@imgtec.com
d3da21b594
MIPS: Restructure the IC / Handler compilers
...
Port r22622 (319e3252)
BUG=
R=paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/414303003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22626 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-25 21:54:12 +00:00
machenbach@chromium.org
85cee45ef2
[Auto-roll] Bump up version to 3.28.41.0
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/423553002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22625 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-25 20:04:11 +00:00
verwaest@chromium.org
4a956ab1c2
Change Has* and Get*Attributes to return Maybe<*>, indicating possible exceptions.
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/418383002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22624 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-25 18:32:11 +00:00
verwaest@chromium.org
3c873c4305
Restructure the IC / Handler compilers
...
BUG=
R=ishell@chromium.org , mvstanton@chromium.org
Review URL: https://codereview.chromium.org/411973002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22622 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-25 17:50:53 +00:00
machenbach@chromium.org
553e069f3b
[Auto-roll] Bump up version to 3.28.40.0
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/419243002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22621 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-25 15:34:10 +00:00
ishell@chromium.org
9444388f1b
Kraken recover after r20312.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/416393002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22620 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-25 13:00:06 +00:00
machenbach@chromium.org
21be95fcf7
[Auto-roll] Bump up version to 3.28.39.0
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/416333005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22618 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-25 12:34:13 +00:00
verwaest@chromium.org
3586c074d4
Smi arrays are only guaranteed to be initialized in non-holey case
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/413393004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22617 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-25 12:27:55 +00:00
verwaest@chromium.org
60df9dabad
In GrowMode, force the value to the right representation to avoid deopts between storing the length and storing the value.
...
BUG=16459193
LOG=n
R=danno@chromium.org
Review URL: https://codereview.chromium.org/419683004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22616 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-25 11:48:25 +00:00
ernstm@chromium.org
d556278ff3
Always trace garbage collection events in GCTracer.
...
- always trace events in GCTracer, but only print stats when the command
line flag is set.
- required to collect statistis that will be used to schedue garbage
collection.
- we need to watch the perf bots after this lands, as it could regress
performance.
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/410413007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22613 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-25 07:32:28 +00:00
machenbach@chromium.org
47d6f32b3c
[Auto-roll] Bump up version to 3.28.37.0
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/415093004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22610 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 19:05:05 +00:00
machenbach@chromium.org
110a5fdae4
Revert "Tests that the GC doesn't mistake non-pointer constant pool entries as pointers."
...
This reverts commit r22608 for breaking win and arm64, ConstantPoolExtended and ConstantPoolSmall.
BUG=
TBR=rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/415773010
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22609 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 18:59:19 +00:00
rmcilroy@chromium.org
59ee2de97c
Tests that the GC doesn't mistake non-pointer constant pool entries as pointers.
...
Adds a test for ConstantPoolArray to ensure that the GC
doesn't mistake non-pointer entries as pointers and try
to modify them during scavenge operations.
Also adds asserts to ConstantPoolArray::set(int, *Object) to
ensure we don't add new-space pointers in constant pool
array.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/396803009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22608 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 18:13:16 +00:00
verwaest@chromium.org
ffd668f94e
Use result of SetOwnPropertyIgnoreAttributes in accessors
...
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/415133003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22607 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 17:33:34 +00:00
verwaest@chromium.org
77a37e44f6
Fix issue with setters and their holders in accessors.cc
...
BUG=3462
LOG=Y
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/417793002
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22606 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 16:42:54 +00:00
ernstm@chromium.org
fc8a3bee03
Add event statistics to GCTracer.
...
- Add method to GCTracer to compute mean and max of the last few
Scavenger, Mark Compactor and Incremental Marking events.
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/410413005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22605 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 15:23:06 +00:00
jochen@chromium.org
b6182bd798
Add a histogram timer around low memory notifications from API
...
BUG=397026
R=hpayer@chromium.org , ernstm@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/416853002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22604 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 14:41:27 +00:00
yangguo@chromium.org
d409898d6e
Stage for-of
...
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/417923004
Patch from Andy Wingo <wingo@igalia.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22603 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 13:47:47 +00:00
yangguo@chromium.org
029b8a2379
For-of on null or undefined is an error
...
The latest ES6 draft changed the behavior of for-of on null / undefined,
which for once is a simplification.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/416033002
Patch from Andy Wingo <wingo@igalia.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22602 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 13:40:08 +00:00
danno@chromium.org
b5a5148260
Revert 22595: "Keep new arrays allocated with 'new Array(N)' in fast mode"
...
Due to failures in mjsunit/array-functions-prototype-misc
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/417953004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22601 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 13:38:05 +00:00
ernstm@chromium.org
70e2a040b3
Move GCTracer to separate files.
...
- No functional changes.
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/416543003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22600 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 13:06:38 +00:00
danno@chromium.org
29338fa16a
SKIP migration tests to improve unit test time (2x)
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/416003004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22599 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 12:39:01 +00:00
rmcilroy@chromium.org
7cd5dbb9fa
Revert r22597 (which should have been called: "Tests that the GC doesn't mistake non-pointer constant pool entries as poitners.")
...
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/413173002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22598 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 12:30:53 +00:00
rmcilroy@chromium.org
48f44b65ee
Use heap iterator in store buffer when page was swept precisely.
...
BUG=
R=rmcilroy@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=22592
Review URL: https://codereview.chromium.org/413693002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22597 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 12:12:44 +00:00
yangguo@chromium.org
2811213380
Flag for serialization when compiling code stubs if --serialize-toplevel.
...
R=mvstanton@chromium.org
BUG=v8:3465
LOG=N
Review URL: https://codereview.chromium.org/419503002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22596 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 12:11:30 +00:00
danno@chromium.org
ac89b17813
Keep new arrays allocated with 'new Array(N)' in fast mode
...
Also explicit length setting with a.length = N should remain in fast mode.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/397593008
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22595 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 12:08:23 +00:00
verwaest@chromium.org
37df96f9b1
Introduce NonJSProxyHolder returning Handle<JSObject> and return Handle<JSReceiver> for GetHolder
...
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/415953005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22594 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 11:33:46 +00:00
ernstm@chromium.org
9523e0acf4
re-land: Track history of events in GCTracer.
...
- track incremental marking stats directly on GCTracer.
- add simple ring buffer class.
- track last 10 scavenges and mark-compacts in ring buffers on GCTracer.
- various clean-ups.
This is a re-land of https://codereview.chromium.org/391413006/ with
- int instead of size_t in ring buffer unit test.
- git cl format
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/411293002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22593 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 11:16:01 +00:00
hpayer@chromium.org
a5b923eca9
Use heap iterator in store buffer when page was swept precisely.
...
BUG=
R=rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/413693002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22592 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 10:45:37 +00:00
yangguo@chromium.org
63fb538128
Introduce more debug events for promises.
...
BUG=v8:3093
LOG=Y
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/393283007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22591 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 10:43:41 +00:00
machenbach@chromium.org
55d8d2f099
Skip test on mips.
...
PASS/FAIL is not enough as the test result is CRASH.
R=yangguo@chromium.org
TBR=yangguo@chromium.org
BUG=v8:3457
LOG=n
Review URL: https://codereview.chromium.org/415773005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22590 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 10:04:14 +00:00
verwaest@chromium.org
b6f61b14dc
Extend the interceptor setter ASSERT to support the JSGlobalProxy case.
...
BUG=v8:3463
LOG=n
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/415973004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22589 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 09:31:45 +00:00
machenbach@chromium.org
4c345d38bd
Partially revert "Unflake and speedup JsNative*Sample cpu profile tests"
...
This reverts the test expectations of commit r22345. Several cpu profiler flakes were happening lately.
BUG=v8:2999
LOG=n
R=bmeurer@chromium.org
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/418843002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22588 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 09:26:03 +00:00
verwaest@chromium.org
f6c6f15e6a
X87: Always use the LoadStubCompiler for Load handlers, also for keyedload handlers
...
port r22551.
original commit message:
Always use the LoadStubCompiler for Load handlers, also for keyedload handlers
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/412903003
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22587 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 09:13:04 +00:00
verwaest@chromium.org
24c2a018f6
X87: Only to the relevant checks in LoadFunctionPrototype
...
port r22550.
original commit message:
Only to the relevant checks in LoadFunctionPrototype
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/410223002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22586 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 09:12:34 +00:00
verwaest@chromium.org
f135cfa263
X87: Move function prototype handling into a special handler rather than IC
...
port r22526.
original commit message:
Move function prototype handling into a special handler rather than IC
Adjust hydrogen handling of function.prototype to be based on map feedback.
Handle non-instance prototype loading using an IC rather than in the hydrogen
instruction. In the future, remove the special instruction and replace by multiple
hydrogen instructions.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/410203002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22585 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 09:11:59 +00:00
jochen@chromium.org
cb8105e223
Move gc notifications from V8 to Isolate and make idle hint mandatory
...
Embedders should use e.g. isolate->IdleNotification(1000) instead
of v8::V8::IdleNotification()
BUG=397026
R=hpayer@chromium.org , ernstm@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/412163003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22584 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 08:28:02 +00:00
yangguo@chromium.org
464d45fc37
Add and move DisallowHeapAllocation scope.
...
The move is necessary since Heap::ReserveSpace called from
DeserializePartial may allocate.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/413663003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22583 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 08:27:06 +00:00
machenbach@chromium.org
7fa03f8776
Ignore test on mips.
...
R=yangguo@chromium.org
TBR=yangguo@chromium.org
BUG=v8:3457
LOG=n
Review URL: https://codereview.chromium.org/413983004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22582 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 08:25:22 +00:00
machenbach@chromium.org
c218c20e54
Fix automatic tagging.
...
BUG=
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/417973002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22580 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 07:36:25 +00:00
machenbach@chromium.org
3c231fb40c
[Auto-roll] Bump up version to 3.28.36.0
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/411273004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22579 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 07:28:52 +00:00
verwaest@chromium.org
6798779031
Fix ArrayLengthSetter to not throw on non-extensible receivers.
...
BUG=v8:3460
LOG=n
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/411983003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22576 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-23 20:27:32 +00:00
verwaest@chromium.org
45824023a1
The accessors should get the value from the holder and not from this.
...
These are all data properties and if they get invoked it means that
they should just return the value of the property from the holder.
BUG=v8:3461
LOG=Y
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/410923003
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22575 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-23 20:11:33 +00:00
machenbach@chromium.org
0151837e98
Whitespace change to trigger bots.
...
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/417593004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22574 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-23 18:58:43 +00:00
neis@chromium.org
61e1994f83
Minor clarifications and simplifications as well as additional checks.
...
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/417553003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22573 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-23 17:17:48 +00:00
machenbach@chromium.org
ea1be613dc
Revert "Track history of events in GCTracer."
...
This reverts commit 22567 for breaking win64 compile.
BUG=
TBR=ernstm@chromium.org
Review URL: https://codereview.chromium.org/414743002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22572 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-23 16:12:02 +00:00