Commit Graph

18477 Commits

Author SHA1 Message Date
balazs.kilvady@imgtec.com
3d4f63be68 MIPS: Initialize CodeStubInterfaceDescriptor in the constructor.
Port r23773 (9b5b258)

BUG=
R=paul.lind@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23782 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 18:51:07 +00:00
balazs.kilvady@imgtec.com
88253752fb MIPS: To aid vector-based load ic work, we need to be able to handle the megamorphic load case in hydrogen.
Port r23772 (d6d07c5)

Original commit message:
Encapsulate megamorphic load/tail-call in hydrogen.

A simple approach is to wrap the probe activity in a hydrogen instruction.

The instruction is novel in that it always tail-calls away.

BUG=
R=paul.lind@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23781 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 17:20:49 +00:00
mvstanton@chromium.org
ea42ffe467 Fix Windows compile error, conversion from int64 to int
TBR=yangguo@chromium.org

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23780 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 16:18:37 +00:00
balazs.kilvady@imgtec.com
b9af36b1fd MIPS: Fix cctest/NaNs after r23767 "Replace our home-grown BitCast with bit_cast from Chrome/Google3".
BUG=
R=plind44@gmail.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23779 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 16:14:21 +00:00
yangguo@chromium.org
9da1d7dc15 Get CallInterfaceDescriptor directly from CodeStub.
R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23778 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 15:18:54 +00:00
mstarzinger@chromium.org
05167dd73c Fix lower bound in JSLoadContext typer.
R=rossberg@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23777 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 14:32:17 +00:00
mstarzinger@chromium.org
c3e63ee946 Properly disable ES6 generator support for TurboFan.
R=rossberg@chromium.org
TEST=mjsunit/es6/*

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23776 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 14:10:33 +00:00
m.m.capewell@googlemail.com
79c8293b99 [turbofan] Add ARM64 overflow selector tests
Add more selector tests and correct a typo in the instruction selector code.

BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23775 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 14:08:16 +00:00
v8-autoroll@chromium.org
b9614b9599 Whitespace change for bootstrapping auto roll bot.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23774 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 13:31:31 +00:00
yangguo@chromium.org
014c0fe278 Initialize CodeStubInterfaceDescriptor in the constructor.
R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23773 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 13:27:56 +00:00
mvstanton@chromium.org
6e1ebdcbc3 To aid vector-based load ic work, we need to be able to handle
the megamorphic load case in hydrogen. A simple approach is to
wrap the probe activity in a hydrogen instruction.

The instruction is novel in that it always tail-calls away.

R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23772 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 12:51:29 +00:00
jochen@chromium.org
4ad3760dff Fix v8's GN v86 build.
This got out-of-sync with some GYP changes. Also makes it compile on Windows.

R=jochen@chromium.org

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

Patch from Brett Wilson <brettw@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23770 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 10:48:29 +00:00
mstarzinger@chromium.org
e9b3c336e6 Properly blacklist ES6 for-of statement for TurboFan.
R=bmeurer@chromium.org
TEST=mjsunit/es6

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23769 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 09:39:39 +00:00
bmeurer@chromium.org
2bbeb652ee [turbofan] Fix the node matchers.
E.g. make sure that Int32Matcher matches only int32 constants, and
Float64Matcher matches only float64 constants.

Also remove the confusing CommonOperatorTraits, which are too easy
to use in a wrong way.

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23768 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 09:16:11 +00:00
bmeurer@chromium.org
dab61bc310 Replace our home-grown BitCast with bit_cast from Chrome/Google3.
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23767 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 09:11:11 +00:00
v8-autoroll@chromium.org
b0b67762fd [Auto-roll] Bump up version to 3.29.51.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23766 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 09:04:14 +00:00
svenpanne@chromium.org
5d840171c1 Revert r23732 ("ARM64: Fix and improve --trace-sim register trace.") and r23733 ("ARM64: Fix build warning in r23732.)
They break the build when compiling with optimizations, e.g. optdebug:

../src/arm64/simulator-arm64.cc: In member function ‘void v8::internal::Simulator::PrintWriteFP(uintptr_t, size_t, unsigned int)’:
../src/arm64/simulator-arm64.cc:792:29: error: array subscript is above array bounds [-Werror=array-bounds]
../src/arm64/simulator-arm64.cc:799:29: error: array subscript is above array bounds [-Werror=array-bounds]

TBR=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23765 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 08:23:02 +00:00
bmeurer@chromium.org
263a96b227 [turbofan] Fix Projection operator parameter type.
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23764 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 06:49:17 +00:00
bmeurer@chromium.org
ccf6c26607 Fix windows build.
TBR=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23761 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 04:53:35 +00:00
bmeurer@chromium.org
20db0ff315 Next base/macros.h cleanup step.
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23760 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 04:44:22 +00:00
v8-autoroll@chromium.org
880110ae99 [Auto-roll] Bump up version to 3.29.49.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23756 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-07 10:45:51 +00:00
machenbach@chromium.org
199ba41c06 Keep svn checkout up-to-date in roll scripts.
BUG=chromium:408523
LOG=n
TBR=jarin@chromium.org
TEST=script_test.py

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23755 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-07 08:11:32 +00:00
machenbach@chromium.org
e9916e90f5 Add ability to make pure svn commits to roll scripts
BUG=chromium:408523
LOG=n
TBR=jarin@chromium.org
TEST=script_test.py

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23754 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-07 08:02:05 +00:00
machenbach@chromium.org
7da038fda2 [Auto-roll] Bump up version to 3.29.48.0
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23752 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 22:34:15 +00:00
paul.lind@imgtec.com
50f287000d MIPS: Do not cache CodeStubInterfaceDescriptor on the isolate.
Port r23744 (998c3e4)

BUG=
R=paul.lind@imgtec.com

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

Patch from Balazs Kilvady <balazs.kilvady@imgtec.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23750 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 19:13:32 +00:00
paul.lind@imgtec.com
fc90c556a2 MIPS: Unify JSEntryStub and JSConstructEntryStub, and some more code stub cleanups.
Port r23742 (a68a0c0)

BUG=
R=paul.lind@imgtec.com

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

Patch from Balazs Kilvady <balazs.kilvady@imgtec.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23749 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 19:04:50 +00:00
machenbach@chromium.org
8c82d6c29c [Auto-roll] Bump up version to 3.29.47.0
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23748 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 16:34:14 +00:00
mstarzinger@chromium.org
6774288e02 Disable broken JSLoadContext typer.
R=titzer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23747 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 15:47:47 +00:00
mstarzinger@chromium.org
d9d2149f83 Fix ARM64 build after r23744.
TBR=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23746 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 15:43:26 +00:00
titzer@chromium.org
4c53bb086e Fix more fallout from making OptimizeFunctionOnNextCall work as advertised.
R=jarin@chromium.org
BUG=411262

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23745 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 15:31:33 +00:00
yangguo@chromium.org
b7ea991a06 Do not cache CodeStubInterfaceDescriptor on the isolate.
R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23744 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 15:20:45 +00:00
jarin@chromium.org
83af12c21b Harden OptimizeFunctionOnNextCall.
BUG=411237
LOG=N
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23743 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 15:13:44 +00:00
yangguo@chromium.org
a6260ee47b Unify JSEntryStub and JSConstructEntryStub, and some more code stub cleanups.
R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23742 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 15:12:49 +00:00
mstarzinger@chromium.org
dd8779537b Fix typer to actually visit the entire graph.
R=titzer@chromium.org
TEST=mjsunit

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23740 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 15:01:51 +00:00
weiliang.lin@intel.com
6bbd2e0e0c X87: disable turbofan dependent test
BUG=
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23739 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 14:31:41 +00:00
balazs.kilvady@imgtec.com
f2fdb8b263 MIPS: Generalized division via multiplication.
Port r23730 (967b787)

Original commit message:
We can now compute the magic numbers for all combinations of 32bit and
64bit (un)signed multiplications.

BUG=
R=dusan.milosavljevic@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23738 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 14:29:45 +00:00
weiliang.lin@intel.com
7d160cd9f2 X87: Fix build
BUG=
R=weiliang.lin@intel.com

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

Patch from Jing Bao <jing.bao@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23737 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 14:29:21 +00:00
titzer@chromium.org
09dccec9f4 Platform-dependent turbofan tests.
R=jarin@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23736 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 13:22:27 +00:00
machenbach@chromium.org
5bad9e6a72 [Auto-roll] Bump up version to 3.29.46.0
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23735 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 12:34:16 +00:00
titzer@chromium.org
3ffabd52fa Fix --trace-parse.
R=yangguo@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23734 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 12:27:28 +00:00
Jacob.Bramley@arm.com
45bb193146 ARM64: Fix build warning in r23732.
BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23733 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 12:20:41 +00:00
Jacob.Bramley@arm.com
d0054c755f ARM64: Fix and improve --trace-sim register trace.
- Use standard names (except that our GREY is the standard BLACK).
- Make non-bold colours explicit, otherwise the boldness can carry over
  into subsequent colour declarations.
- I've moved some colours around to make them consistent. Register value
  updates (which are very common) now stand out less than they did,
  making the less-common (and arguably more important) debug
  announcements appear brighter.
  - FP registers and values are now magenta.
  - Integer registers and values are now cyan.
  - Memory accesses are now blue.
- LOG_WRITE prints the source register for stores.
- Loads are logged with a format similar to that used for stores.
  Specifically, the memory address is printed alongside the new register
  value.
- Updates to D registers print the raw bits as well as the double value.
  Updates to S registers print the raw bits as well as the float value.
  (Previously, we printed both double and float interpretations of the
  bits, which was a bit cluttered.)

BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23732 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 12:10:00 +00:00
svenpanne@chromium.org
051972d240 Generalized division via multiplication.
We can now compute the magic numbers for all combinations of 32bit and
64bit (un)signed multiplications.

R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23730 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 11:48:47 +00:00
bmeurer@chromium.org
2a40210a7b [turbofan] Missing fix from last commit.
TBR=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23729 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 11:47:46 +00:00
bmeurer@chromium.org
99ccab81e2 [turbofan] Add MachineType to Phi.
TEST=cctest,compiler-unittests,mjsunit
R=mstarzinger@chromium.org, titzer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23728 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 11:44:31 +00:00
verwaest@chromium.org
1dddf69fdc Allocate a new empty number dictionary when resetting elements
BUG=410332
LOG=y
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23727 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 11:38:22 +00:00
bmeurer@chromium.org
65fa2b49da [turbofan] Fix cctest/test-graph-reducer/ReduceForward1.
TBR=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23726 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 11:20:55 +00:00
bmeurer@chromium.org
aed44ecee3 [turbofan] Nodes are killed by resetting all their inputs to zero.
TEST=compiler-unittests,mjsunit/numops-fuzz
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23725 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 11:10:28 +00:00
bmeurer@chromium.org
ddf358ca6b [turbofan] Value numbering should never replace a node with itself.
R=mstarzinger@chromium.org
TEST=compiler-unittests

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23724 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 10:41:18 +00:00
mstarzinger@chromium.org
d485208002 Fix another assertion in the context typer.
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23723 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 09:47:36 +00:00