Commit Graph

22655 Commits

Author SHA1 Message Date
dcarney
d04aee2482 [turbofan] split all functions off of LinearScanAllocator which are unrelated to LinearScan
this is in preparation for landing the GreedyAllocator

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27963}
2015-04-21 13:04:53 +00:00
Benedikt Meurer
bb346227db [test] Initial import of an emscripten test suite.
These tests are based on individual tests from the Emscripten benchmark
suite, which are used to test Emscripten itself. We adopt them to test
asm.js code paths in V8.

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27962}
2015-04-21 12:24:10 +00:00
dcarney
6a7cb78cbd [turbofan] Split ConstraintBuilder off of LiveRangeBuilder.
Plus some driveby cleanup.

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

Cr-Commit-Position: refs/heads/master@{#27961}
2015-04-21 12:01:29 +00:00
wingo
636cb4f365 Factor formal argument parsing into ParserBase
This commit is a precursor to making lazy arrow function parsing use
similar logic to function(){} argument parsing.

Originally landed in these three CLs:

  https://codereview.chromium.org/1078093002
  https://codereview.chromium.org/1083623002
  https://codereview.chromium.org/1083953002

These were rolled out due to a performance regression on CodeLoad.  This
patchset will fix that by avoiding creation of a DuplicateFinder in the
full parser.

R=marja@chromium.org
BUG=
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27960}
2015-04-21 11:09:34 +00:00
yangguo
0a8f8a953e Change hash table capacity heuristics when serializing.
Also extract non-templated parts of HashTable class into HashTableBase.

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

Cr-Commit-Position: refs/heads/master@{#27959}
2015-04-21 11:07:26 +00:00
svenpanne
4d3044e161 Removed src/{isolate,property-details,utils}-inl.h
Baby steps towards saner #includes...

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

Cr-Commit-Position: refs/heads/master@{#27958}
2015-04-21 10:21:37 +00:00
jochen
d707942d47 Add myself to include/OWNERS
BUG=none
R=danno@chromium.org
LOG=n
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#27957}
2015-04-21 10:05:59 +00:00
jochen
cc838be4b6 Don't assert that no incremental marking happened during a non-incremental GC
If a scavenge is triggered during the GC (via a weak callback or the GC
prologue/epilogue), and another mark-compact is triggered (via the same
unfortunate code path), we end up doing some incremental steps.

BUG=v8:4048
R=dcarney@chromium.org,hpayer@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#27956}
2015-04-21 10:04:53 +00:00
yangguo
95f6b726c0 Wrap harmony implementations in functions.
R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27955}
2015-04-21 09:42:02 +00:00
dcarney
998e941611 [turbofan] Cleanup register allocator a little after split.
Review URL: https://codereview.chromium.org/1087983007

Cr-Commit-Position: refs/heads/master@{#27954}
2015-04-21 09:06:29 +00:00
yangguo
9b2fe70d93 Migrate error messages, part 4 (v8natives.js).
Goal is to reduce native context size.

R=mvstanton@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27953}
2015-04-21 09:03:09 +00:00
machenbach
c15ca44b0c [test-runner] Add dedicated test mode for tryserver.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27952}
2015-04-21 08:17:01 +00:00
dcarney
202a97c88e make Handle a synonym of Local
R=svenpanne@chromium.org

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27951}
2015-04-21 08:15:57 +00:00
ishell
7ad9980d99 Avoid having untyped slots for objects embedded into code because it breaks slots filtering.
BUG=chromium:478747,chromium:478811
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27950}
2015-04-20 23:45:02 +00:00
yangguo
42415bf9bc Small polishing changes to the native js.
R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27949}
2015-04-20 19:18:43 +00:00
Daniel Vogelheim
abb23b5284 Disable mjsunit/es7/object-observe on gc-stress, due to flakiness.
TBR=machenbach@chromium.org
CC=adamk@chromium.org
BUG=478788
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27948}
2015-04-20 18:14:40 +00:00
svenpanne
314e73d1ec Import Reversed adapter from Chromium and use it in v8.
Review URL: https://codereview.chromium.org/1098863003

Cr-Commit-Position: refs/heads/master@{#27947}
2015-04-20 16:24:37 +00:00
dcarney
497c537310 [turbofan] split register allocator into little pieces
R=titzer@chromium.org

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27946}
2015-04-20 16:15:19 +00:00
titzer
f557d75360 Reland "Refactor compilation dependency handling."
R=mstarzinger@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27945}
2015-04-20 15:21:44 +00:00
jkummerow
c12e8d889c Revert of Fix logic for doing incremental marking steps on tenured allocation. (patchset #4 id:60001 of https://codereview.chromium.org/1040233003/)
Reason for revert:
Suspected of triggering memory corruption issues, e.g. crbug.com/478401.

Original issue's description:
> Fix logic for doing incremental marking steps on tenured allocation.
>
> R=hpayer@chromium.org
> BUG=
>
> Committed: https://crrev.com/9716468ae63500adb74f5188c47de847e195d71b
> Cr-Commit-Position: refs/heads/master@{#27883}

TBR=hpayer@chromium.org,erikcorry@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27944}
2015-04-20 15:19:25 +00:00
mvstanton
9987221c02 Make sure builtins preserve guarantees about empty element array prototypes.
We have a bottleneck around storing elements in the array and object prototypes,
but the Push() and Unshift() builtins don't respect them.

Fix this exactly to the level of existing support for stores.

BUG=v8:4043
LOG=N
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#27943}
2015-04-20 15:16:34 +00:00
jochen
ad854ea11e Allow for accessing an ArrayBuffer contents without externalizing it
The embedder has to take appropriate steps to ensure that the
ArrayBuffer doesn't die while it's accessing the pointer, e.g. keep a
Local handle to it around

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

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

Cr-Commit-Position: refs/heads/master@{#27942}
2015-04-20 15:01:43 +00:00
yangguo
8cf289ca4f Throw when attaching a stack trace to an object fails.
R=jarin@chromium.org
BUG=chromium:478011
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#27941}
2015-04-20 14:40:45 +00:00
yangguo
f66a31282a Wrap array implementation in a function.
R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27940}
2015-04-20 14:12:22 +00:00
jochen
53cc6486df Remove support for externally backed elements from the API
Embedders should use ArrayBuffers instead

BUG=v8:3996
LOG=y
R=verwaest@chromium.org,dslomov@chromium.org,kbr@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27939}
2015-04-20 13:31:27 +00:00
jochen
36f17ed030 Deprecate 3-args ResourceConstraints::ConfigureDefaults
Embedders should use the 2-args version. Number of cores is just
ignored.

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

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

Cr-Commit-Position: refs/heads/master@{#27938}
2015-04-20 13:26:21 +00:00
Ross McIlroy
063fc25122 Replace OVERRIDE->override and FINAL->final since we now require C++11.
R=jochen@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27937}
2015-04-20 13:08:14 +00:00
machenbach
fde66e2a72 Temporarily skip slow test.
TBR=bmeurer@chromium.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#27936}
2015-04-20 12:23:14 +00:00
Ben L. Titzer
7a4744ade4 Always wrap AllocationSiteContext::current() in a new handle in Crankshaft.
R=mvstanton@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27935}
2015-04-20 11:46:34 +00:00
jochen
f15d01379e Indicate that low-memory-notificatin triggered GCs are "forced"
BUG=none
R=hpayer@chromium.org
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#27934}
2015-04-20 10:23:42 +00:00
yangguo
726630d29c Correctly name header macros for src/snapshot/*.h.
R=mvstanton@chromium.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#27933}
2015-04-20 10:22:07 +00:00
yangguo
cc9da821ea Serializer: assert that we deserialize only one native context.
R=mvstanton@chromium.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#27932}
2015-04-20 09:57:00 +00:00
yangguo
e96d25536e Fix serialization statistics for external strings.
External strings are serialized as internal strings. The current way
of collecting stats is slightly wrong. We ought to use the map and
size passed to SerializePrologue.

R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27931}
2015-04-20 08:55:04 +00:00
Benedikt Meurer
7eb7141fc4 [mjsunit] Import test case based on the Massive/SQLite benchmark.
This adds a stripped down version of the SQLite benchmark (running with
--size 1) to the mjsunit suite. We might want to move that to a
dedicated slow/stress/whatever test suite once an appropriate decision
is made.

R=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27930}
2015-04-20 07:58:31 +00:00
ulan
068a6afb44 Clean up output of heap object tracing
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27929}
2015-04-18 09:21:07 +00:00
v8-autoroll
e0670ac5c9 Update V8 DEPS.
Rolling v8/tools/clang to d3e6123fdadc4bf98b8c676173f77f8f8eed363f

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27928}
2015-04-18 03:48:29 +00:00
adamk
4a5c91387b [modules] Parsing: add ModuleRequests where missing
Two last forms supported in this patch:
  - 'import' ModuleSpecifier
  - 'export' '*' 'from' ModuleSpecifier.

BUG=v8:1569
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#27927}
2015-04-17 22:45:06 +00:00
ssid
4a597f527a Adding missing V8_EXPORT flag in SpaceStatistics class in v8.h
This class was added in crrev.com/1058253003 and missed V8_EXPORT in
definition.

BUG=466141, 476013
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#27926}
2015-04-17 19:33:13 +00:00
rmcilroy
b990a6c691 Turn off SupportsFlexibleFloorAndRound for Arm64 due to a bug.
There is a bug with SupportsFlexibleFloorAndRound on Arm64. Turn it off for
now until we figure out a proper solution.

BUG=chromium:476477
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#27925}
2015-04-17 18:00:15 +00:00
hpayer
88e2d14c90 Initialize idle old generation allocation limit in constructor.
BUG=478082
NOTRY=true
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#27924}
2015-04-17 16:57:26 +00:00
mbrandy
99c116ccda PPC: Reland "Add basic crankshaft support for slow-mode for-in to avoid disabling optimizations"
Port 8098253562

R=verwaest@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27923}
2015-04-17 15:56:13 +00:00
danno
5cb387c2b7 [visualizer]: Add types to visualizer output
Review URL: https://codereview.chromium.org/1083083006

Cr-Commit-Position: refs/heads/master@{#27922}
2015-04-17 15:46:12 +00:00
jkummerow
f4f2e9c558 Fix GC-induced DCHECK failure in Runtime_GetWeakMapEntries
R=yangguo@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27921}
2015-04-17 14:21:21 +00:00
yangguo
c6a36305c7 Wrap object observe implementation in a function.
R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27920}
2015-04-17 14:09:52 +00:00
ssid
281d30d758 Adding V8 api to get memory statistics of spaces in V8::Heap.
This is first step towards adding V8 heap statistics to the memory
tracing infrastructure. For being able to get useful memory number into
the memory dump, v8 needs to provide an external api needs to obtain
more information about the heap. So, this Cl extends the api to give
information about the memory allocated and used in the spaces.

BUG=466141, 476013
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#27919}
2015-04-17 14:04:24 +00:00
yangguo
1df70e2749 Wrap JSON and generator implementation in functions.
R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27918}
2015-04-17 13:53:03 +00:00
yangguo
5a9a0b20e7 Migrate error messages, part 3 (runtime.js).
Motivation for this is reducing the size of the native context.

R=mvstanton@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27917}
2015-04-17 13:27:28 +00:00
jkummerow
4204c72739 Don't use normalized map cache for prototype maps
BUG=chromium:477924
LOG=n
R=verwaest@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27916}
2015-04-17 12:16:07 +00:00
jkummerow
30cc37e9ac Bump limit in PushStackTraceAndDie
To increase the chances of minidumps containing enough useful information

R=yangguo@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27915}
2015-04-17 11:45:56 +00:00
erikcorry
1caa269cee Rename some things around incremental marking triggers
R=hpayer@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27914}
2015-04-17 11:17:23 +00:00