Commit Graph

16998 Commits

Author SHA1 Message Date
machenbach@chromium.org
e4bde5ca25 Let benchmark runner exit with proper return codes.
BUG=374740
LOG=n
R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21648 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 14:58:52 +00:00
yangguo@chromium.org
f9f6324997 Rename EnterDebugger to DebugScope.
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21647 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 14:39:55 +00:00
vogelheim@chromium.org
61509aaea5 Support external startup data in V8.
If the embedder chooses, the 'natives' (library sources) and the
precompiled startup blob can be written to files during the build
process and handed over to V8 at startup. The main purpose would be
to reduce the size of the compiled binary for space constrained
platforms.

The build-time option is off by default. Nothing should change if
it's not enabled.

BUG=
R=bmeurer@chromium.org, jochen@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21646 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 14:38:35 +00:00
yangguo@chromium.org
f38b4bef9e Entering debugger scope should not make debugger active.
The motivation is that by only entering the debugger scope to call into
the debug context should not cause code to be compiled for debugging.

R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21645 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 14:33:07 +00:00
yangguo@chromium.org
feed21b6d5 Add option to disable MirrorCache.
R=yurys@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21644 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 14:27:19 +00:00
machenbach@chromium.org
519c6c9c94 Add buildtools to svn:ignore.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21643 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 13:45:13 +00:00
jochen@chromium.org
a980e51471 Add DEPS files and run checkdeps in presubmit check
BUG=none
R=jkummerow@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21642 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 13:39:42 +00:00
jochen@chromium.org
368262fc76 Ignore buildtools directory in presubmit.py checks
BUG=none
R=machenbach@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21641 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 13:38:35 +00:00
jochen@chromium.org
b859b82008 Correct include paths in checks.h
BUG=none
R=mvstanton@chromium.org
TBR=mvstanton@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21640 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 13:35:42 +00:00
jochen@chromium.org
8e9d20de38 Make dependencies target less noisy when run repeatedly
BUG=none
R=machenbach@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21639 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 13:34:36 +00:00
jochen@chromium.org
d849c46f09 Add buildtools/ to .gitignore
BUG=none
R=machenbach@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21638 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 13:30:22 +00:00
mvstanton@chromium.org
e093f3f0d3 Adjust cctest.status for Cpu profiler tests which are flaky.
R=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21637 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 13:18:16 +00:00
jochen@chromium.org
e1c0e54209 Add dependency on buildtools repo
Currently, this adds checkdeps, in the future, this will be the place
where clang-format and gn lives.

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21636 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 12:01:50 +00:00
hpayer@chromium.org
5a1364a588 Deopt maybe tenure allocation sites when semi-space is maximum size.
BUG=
R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21635 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 11:59:47 +00:00
mvstanton@chromium.org
d19aaa2b1c Revert "Reland "Make 'name' property on functions configurable.""
This reverts commit r21609 due to browser test failures.

TBR=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21632 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 11:52:07 +00:00
jochen@chromium.org
2874a5ce8e Update include paths for gcmole
TBR=mvstanton@chromium.org
LOG=n
BUG=none

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21631 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 11:01:35 +00:00
bmeurer@chromium.org
c0e047d53f Improve write barriers in optimized code.
Use a cheaper RecordWriteForMap() to update the
write barrier for maps. And skip the value check
in RecordWriteField() when we statically know that
the value is in new space (and therefore has "pointers
to here are interesting" flag set).

R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21630 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 10:59:11 +00:00
hpayer@chromium.org
8b1f83ada7 Rename new_space_dominator to dominator since dominators can also be in old space.
BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21629 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 10:40:36 +00:00
rossberg@chromium.org
396c169e7c Fix test
R=bmeurer@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21628 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 09:34:29 +00:00
jochen@chromium.org
55e65935c9 Fix compilation on win shared and mips
TBR=mvstanton@chromium.org
LOG=n
BUG=none

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21627 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 08:29:03 +00:00
ishell@chromium.org
b58a08d998 Fix PathTracer.
When tracing, we abuse the map for marking, thereby mutating it.
HeapObject::map() takes care of recovering unabused value.

R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21626 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 08:28:38 +00:00
jochen@chromium.org
56a486c322 Use full include paths everywhere
- this avoids using relative include paths which are forbidden by the style guide
- makes the code more readable since it's clear which header is meant
- allows for starting to use checkdeps

BUG=none
R=jkummerow@chromium.org, danno@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21625 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 08:12:43 +00:00
mvstanton@chromium.org
848a9af6b4 %ObjectFreeze needs to exclude non-fast-path objects.
ClusterFuzz will call it with sloppy arguments and similar cases.

BUG=380049
LOG=N
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21624 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 07:59:36 +00:00
hpayer@chromium.org
b8c3ee40ab Tenure allocation sites only when semi-space is maximum size.
BUG=
R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21623 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 07:55:38 +00:00
mvstanton@chromium.org
adeaedf547 When flag --nouse-osr is set, don't allow osr from hidden runtime calls.
BUG=379770
R=yangguo@chromium.org
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21622 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 07:45:40 +00:00
marja@chromium.org
048ee40e3d Minor cleanups & trivial refactoring related to Ast.
1) Literal::IsNull, IsTrue and IsFalse were dead code, and not needed.
2) No need to use the node type constants outside the Ast; there is IsSomeNodeType().
3) AsSomeNodeType() != NULL -> IsSomeNodeType().

R=rossberg@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21621 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 07:40:43 +00:00
Jacob.Bramley@arm.com
32679b57e9 ARM64: Fix ASM_LOCATION and the like.
BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21620 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 07:37:16 +00:00
jochen@chromium.org
1e3fba1add Add collection-iterator.js to BUILD.gn after r21615
LOG=n
BUG=none
TBR=adamk@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21619 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 07:26:07 +00:00
jochen@chromium.org
8e05308e6c First cut at run_mksnapshot action for gn
BUG=none
R=brettw@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21618 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 06:50:46 +00:00
bmeurer@chromium.org
2a2874b9c3 Inline fast path for Array.indexOf() and Array.lastIndexOf().
TEST=mjsunit/array-indexing
R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21617 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 04:01:34 +00:00
adamk@chromium.org
2e2eb6a07e Split Put into Put and Remove
No longer treat the hole as a removal. This removes one branch in
Put and cleans up the API.

BUG=None
LOG=Y
R=adamk@chromium.org, mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21616 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 00:53:16 +00:00
adamk@chromium.org
509a1a405c ES6: Add support for values/keys/entries for Map and Set
This allows code like this:

  var map = new Map();
  map.set(1, 'One');
  ...
  var iter = map.values();
  var res;
  while (!(res = iter.next()).done) {
    print(res.value);
  }

BUG=v8:1793
LOG=Y
R=mstarzinger@chromium.org

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

Patch from Erik Arvidsson <arv@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21615 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 00:34:01 +00:00
weiliang.lin@intel.com
1d57c2d65f X87: Don't push eax/rax before calling Runtime_Abort
Additionally delete the unused Throw(BailoutReason)

Port r21582 (41dd40b)

BUG=
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21612 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 13:53:21 +00:00
weiliang.lin@intel.com
5cb7e512ec X87: Simplify known successor block lowering.
Port r21589 (a9f3228)

BUG=
R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21611 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 13:50:59 +00:00
plind44@gmail.com
e4215c6a54 MIPS: Simplify known successor block lowering.
Port r21589 (a9f3228)

BUG=
R=bmeurer@chromium.org

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21610 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 13:40:39 +00:00
mstarzinger@chromium.org
d6500b6cf7 Reland "Make 'name' property on functions configurable."
R=rossberg@chromium.org
BUG=v8:3333
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21609 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 13:35:26 +00:00
Jacob.Bramley@arm.com
0c8cd46302 ARM64: Restructure the L1 deopt jump table.
This restructures the L1 deopt jump table so that the base address of
the L2 table is only loaded once. This significantly reduces the size of
the generated code because only one big immediate needs to be loaded.

The total size of all L1 deopt tables generated during Octane is almost
halved in size, from about 1105kB to 584kB.

BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21608 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 13:12:12 +00:00
yangguo@chromium.org
19c71f9e47 Some more debugger-related refactorings.
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21607 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 12:51:19 +00:00
bmeurer@chromium.org
77130247ac Handle HCheckInstanceType and HIsStringAndBranch in check elimination.
R=ishell@chromium.org

Committed: https://code.google.com/p/v8/source/detail?r=21593

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21606 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 12:17:05 +00:00
yangguo@chromium.org
97e550985e Release execution lock before dispatching interrupt handling.
R=yurys@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21605 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 12:07:37 +00:00
yangguo@chromium.org
f1357a21d2 Some debugger-related clean-ups and renamings.
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21604 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 11:41:50 +00:00
weiliang.lin@intel.com
2f04631d9e X87: use more suitable build flag
BUG=
R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21603 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 11:39:44 +00:00
weiliang.lin@intel.com
9a1fe563b9 X87: Remove check for SAHF support in ia32
port r21422 (38edcd2)

Original commit message:
On ia32, SAHF is guaranteed. It's only necessary to probe for it on x64.

BUG=
R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21602 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 11:37:50 +00:00
weiliang.lin@intel.com
14e244a9b4 X87: Refactor CallICStub to use a different stub for each customization.
port r21564 (a39968c)

Original commit message:
This gives us much more room to customize on different functions, by
using MajorKey to differentiate them.

BUG=
R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21601 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 11:34:45 +00:00
weiliang.lin@intel.com
eab27d69b6 X87: Move LiveEdit-related code.
port r21559 (dfd0cf8)

BUG=
R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21600 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 11:31:32 +00:00
jochen@chromium.org
3ea92dead3 Update gn config after r21578
TBR=bmeurer@chromium.org
LOG=n
BUG=none

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21597 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 11:10:03 +00:00
verwaest@chromium.org
60a71d8a8c Remove PROHIBITS_OVERWRITING as it is subsumed by non-configurable properties.
v8::DontDelete is set for Unforgeable properties, so just not setting PROHIBITS_OVERWRITING should be enough.

The secondary "feature" of not allowing accessors to be installed in extending objects is incorrect and confusing, given that it only applies to accessors but not to regular properties:
Object.defineProperty({__proto__:window}, "location", { value: 10 })
works where
Object.defineProperty({__proto__:window}, "location", { get: function() {} })
doesn't work.

LOG=y
R=dcarney@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21596 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 11:02:06 +00:00
verwaest@chromium.org
92022c1175 Clean up (Get|Set)Property(Attributes)WithFailedAccessChecks
BUG=
R=ishell@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21595 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 10:59:11 +00:00
bmeurer@chromium.org
dae3413cc4 Revert "Handle HCheckInstanceType and HIsStringAndBranch in check elimination."
This reverts commit r21593 for breaking the Webkit tests.

TBR=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21594 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 09:20:19 +00:00
bmeurer@chromium.org
1c17e61629 Handle HCheckInstanceType and HIsStringAndBranch in check elimination.
R=ishell@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21593 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 08:51:25 +00:00