Commit Graph

18374 Commits

Author SHA1 Message Date
machenbach@chromium.org
05b6de841a Whitespace change to test v8-autoroll account.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23603 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 11:43:08 +00:00
v8-autoroll@chromium.org
b419fafcd8 Whitespace change from pure svn to test roll account.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23602 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 11:40:43 +00:00
bmeurer@chromium.org
db10bef4de [turbofan] First step of Operator refactoring.
- Real const-correctness
- Proper forward declarations instead of #include "src/v8.h"
- Flags for Operator properties.
- etc.

TEST=compiler-unittests,cctest
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23601 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 11:36:55 +00:00
marja@chromium.org
7955937d31 Refactor Parser to make it usable on a background thread.
- Background Parsers cannot get the following data from Isolate (pass it to the
ctor instead): stack limit (background Parsers need a different stack limit),
UnicodeCache (background parsers need a separate UnicodeCache), hash seed
(Parser cannot access the Heap to get it). The Parser::Parse API won't change.

- Make the internalization phase (where Parser interacts with the heap) more
explicit. Previously, Parser was interacting with the heap here and there.

- Move HandleSourceURLComments out of DoParseProgram, so that background parsing
can use DoParseProgram too.

BUG=
R=rossberg@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23600 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 11:36:21 +00:00
jarin@chromium.org
2de08b4945 Fix Win64 build (header include mess up)
R=bmeurer@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23599 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 11:33:28 +00:00
jarin@chromium.org
a520e03442 Revert "Make FrameStates recursive (to be used for inlining)."
This reverts commit r23595.

TBR=sigurds@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23598 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 11:28:40 +00:00
machenbach@chromium.org
3ca77d4bef Fix test runner imports.
TBR=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23597 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 11:18:47 +00:00
machenbach@chromium.org
bae5c2a59e [Auto-roll] Bump up version to 3.29.37.0
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23596 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 11:04:17 +00:00
sigurds@chromium.org
7117cae25e Make FrameStates recursive (to be used for inlining).
- Changes FrameState node to require a 5th input
  (use undefined as sentinel).
- Adds outer_state pointer to FrameStateDescriptor.
- Instruction selection dumps dependencies of FrameState chain into the instruction.
- Code generator builds the translation for rec. FrameStates.
  (will require further integration tests)

R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23595 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 10:49:27 +00:00
jarin@chromium.org
bb6cfbc416 Lazy deoptimization for comparisons in Turbofan.
BUG=
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23594 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 10:38:31 +00:00
v8-autoroll@chromium.org
9bd36b8d13 Whitespace change to test v8-autoroll account.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23593 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 10:33:20 +00:00
jochen@chromium.org
8ed43d7f2d Fix gn android component build
R=jochen@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23592 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 10:21:41 +00:00
machenbach@chromium.org
f74f980aa3 Whitespace change to test v8-autoroll account.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23591 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 10:17:28 +00:00
titzer@chromium.org
ed5f9f8765 Fix representation change insertion for phis.
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23590 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 10:14:21 +00:00
machenbach@chromium.org
4f0a65da7b Whitespace change to test v8-autoroll account.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23589 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 10:11:44 +00:00
machenbach@chromium.org
bb222013ff Whitespace change to test v8-autoroll account.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23588 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 10:03:53 +00:00
weiliang.lin@intel.com
25eb303c05 X87: Use Chrome compatible naming for compiler specifics.
port r23579.

This CL includes the part of changes for X87 port which is missed in r23579.
(https://codereview.chromium.org/526223002).

original commit message:

  Use Chrome compatible naming for compiler specifics.
  Less useless creativity is best creativity!

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23587 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 09:40:42 +00:00
verwaest@chromium.org
55e78d3b7a Use correct receiver for DOM accessors on the prototype chain
BUG=v8:3538
LOG=y
R=haraken@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23586 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 09:36:37 +00:00
machenbach@chromium.org
b4adc1a12b Reland "Refactoring: Make gtest testsuite the default."
BUG=v8:3489
TBR=bmeurer@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23585 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 09:21:03 +00:00
machenbach@chromium.org
b77cb4a793 Revert "Refactoring: Make gtest testsuite the default."
This reverts commit cb8f08658767e7e3182e5deab0473f264f6ce92f.

TBR=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23584 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 09:17:26 +00:00
machenbach@chromium.org
a050734c35 Refactoring: Make gtest testsuite the default.
BUG=v8:3489
R=bmeurer@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23583 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 09:11:13 +00:00
sigurds@chromium.org
de59be7cad Improve graph visualizer for deoptimization and readablity.
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23582 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 08:44:25 +00:00
bmeurer@chromium.org
2d1fe92b7f Fix non-TF targets after r23547.
Stub out the new AssembleDeoptimizerCall().

BUG=
R=bmeurer@chromium.org

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

Patch from Paul Lind <paul.lind@imgtec.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23581 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 07:54:47 +00:00
bmeurer@chromium.org
d642d51db7 Fix Windows build.
TBR=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23580 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 07:23:55 +00:00
bmeurer@chromium.org
30f18f0f7d Use Chrome compatible naming for compiler specifics.
Less useless creativity is best creativity!

R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23579 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 07:07:52 +00:00
bmeurer@chromium.org
88d4c2ddde Add support for storage type to base::Flags.
Also drop the DEFINE_FLAGS() macro, and use the typedef explicitly.

TEST=base-unittests
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23578 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 06:53:14 +00:00
bmeurer@chromium.org
7300a2a343 [turbofan] Fix MachineOperatorReducer to use JSGraph as well.
TEST=compiler-unittests,cctest
R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23577 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 05:08:54 +00:00
weiliang.lin@intel.com
3d763dfdc9 X87: InterfaceDescriptor becomes CallInterfaceDescriptor.
port r23560.

original commit message:

  InterfaceDescriptor becomes CallInterfaceDescriptor.

  There was no difference between these two classes in a hierarchical relationship.

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23576 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 03:43:04 +00:00
weiliang.lin@intel.com
b96d68c039 X87: Multiple stubs can point to the same calling convention
port r23546.

original commit message:
   Multiple stubs can point to the same calling convention

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23575 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-02 02:42:36 +00:00
balazs.kilvady@imgtec.com
7260ff8138 MIPS: InterfaceDescriptor becomes CallInterfaceDescriptor.
Port r23560 (9a63ff6)

Original commit message:
There was no difference between these two classes in a hierarchical
relationship.

BUG=
R=paul.lind@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23574 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 18:04:48 +00:00
balazs.kilvady@imgtec.com
9420c278b5 MIPS: Multiple stubs can point to the same calling convention.
Port r23546 (068adb0)

BUG=
R=paul.lind@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23573 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 18:02:35 +00:00
dslomov@chromium.org
925298ad4f Add Collections perf tests to v8 public repo.
R=machenbach@chromium.org
BUG=374708
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23570 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 14:52:06 +00:00
machenbach@chromium.org
68ec08240c Add test driver with the notion of perf tests.
BUG=374740
LOG=n
R=dslomov@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23569 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 14:27:44 +00:00
weiliang.lin@intel.com
5c782b9d8c X87: Refactoring InterfaceDescriptors away from code-stubs.h
port r23515.

original commit message:
  Refactoring InterfaceDescriptors away from code-stubs.h

  Clean up and create seperation between the concept of a call descriptor and a
  code stub interface descriptor. The former is just concerned with how to call,
  but the latter has many extra hints related to code generation and deoptimization
  for the implementation of a particular code stub.

BUG=
R=mvstanton@chromium.org

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23568 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 14:00:25 +00:00
jarin@chromium.org
311d67d959 Revert "More aggressive reuse of spill slots in the register allocator."
This reverts commit r23536 for breaking DevTools.

TBR=machenbach@chromium.org
BUG=409604
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23567 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 13:58:37 +00:00
yangguo@chromium.org
bdead275bb Sub-minor-key-ify HandlerStubs.
R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23566 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 13:55:39 +00:00
m.m.capewell@googlemail.com
89cb23f3fd [turbofan] Add/sub ARM64 lhs immediate tests
Addition supports lhs immediates by commuting. Subtraction supports only zero
lhs immediates, through use of the zero register.

BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23565 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 13:41:19 +00:00
ulan@chromium.org
04d2830a89 Do not clear weak monomorphic IC after context disposal.
BUG=404020
LOG=Y
R=jochen@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23564 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 13:40:11 +00:00
jochen@chromium.org
bb41c50d4d Turn on job-based sweeping
Embedders that don't use a v8::Platform yet will have to do so.

BUG=v8:3104
LOG=y
R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23562 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 12:54:22 +00:00
mstarzinger@chromium.org
bf3d436b57 Fix typed lowering of JSUnaryNot to work with graph reducer.
R=titzer@chromium.org
TEST=cctest/test-js-typed-lowering/UnaryNot[Effects]

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23561 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 12:17:43 +00:00
mvstanton@chromium.org
3a7b5b44c1 InterfaceDescriptor becomes CallInterfaceDescriptor.
There was no difference between these two classes in a hierarchical
relationship.

R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23560 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 12:15:25 +00:00
ulan@chromium.org
ae2b08f420 Trace idle notification.
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23559 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 12:06:16 +00:00
machenbach@chromium.org
9a57c544f8 [Auto-roll] Bump up version to 3.29.36.0
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23558 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 11:34:15 +00:00
mstarzinger@chromium.org
53f4203667 Fix assertion in JSLoadContext typer.
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23557 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 11:17:39 +00:00
machenbach@chromium.org
fee7bcccca Add mapping of test groups to test driver.
BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23552 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 10:48:36 +00:00
bmeurer@chromium.org
b22724966b [turbofan] Merge compiler unit tests into src.
BUG=v8:3489
LOG=n
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23551 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 10:26:12 +00:00
bmeurer@chromium.org
40da0e5ee6 Use the "enum hack" to fix the SmiTagging constants.
The "enum hack" (see Item 2 of "Effective C++") is the only known
portable way to define constant integral values within template
classes. Fixes the weird work-arounds required for certain GCC
versions.

R=jarin@chromium.org, rossberg@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23550 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 10:24:04 +00:00
jarin@chromium.org
5fe360b9cd Fix typo in math-hyperbolic test.
TBR=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23549 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 10:23:07 +00:00
yangguo@chromium.org
fa1bf00e6a Port fdlibm implementation for Math.cosh.
R=rtoy@chromium.org
BUG=v8:3494
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23548 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 09:36:00 +00:00
jarin@chromium.org
a668cd6fc8 Context deoptimization and removal of the deoptimization block in Turbofan
This adds context deoptimization to Turbofan and Crankshaft (also submitted separately as https://codereview.chromium.org/515723004/).

The second patchset removes the deoptimization/continuation block from calls.

BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23547 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-01 09:31:14 +00:00