mstarzinger@chromium.org [Tue, 9 Sep 2014 15:55:47 +0000 (15:55 +0000)]
Switch inlining to use simplified instead of machine loads.
R=sigurds@chromium.org
TEST=cctest/test-run-inlining --turbo-types
Review URL: https://codereview.chromium.org/
551413002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23813
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 9 Sep 2014 14:48:16 +0000 (14:48 +0000)]
Some follow-up fixes after r23801.
R=rossberg@chromium.org
TEST=mjsunit --turbo-types
Review URL: https://codereview.chromium.org/
559563002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23812
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 9 Sep 2014 14:31:49 +0000 (14:31 +0000)]
Do not force interrupt in test-debug/ProcessDebugMessagesThreaded.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
557773002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23810
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 9 Sep 2014 14:18:17 +0000 (14:18 +0000)]
[turbofan] Add support for overflow add/sub to the MachineOperatorReducer.
TEST=base-unittests,compiler-unittests,cctest
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
555833002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23809
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Tue, 9 Sep 2014 14:13:51 +0000 (14:13 +0000)]
[turbofan] ARM64 branch selector additions
Add support for selecting Cmp and Cmn instructions, and tests for branching on
the result of arithmetic or logical operations.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
556823002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23808
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
balazs.kilvady@imgtec.com [Tue, 9 Sep 2014 14:11:18 +0000 (14:11 +0000)]
MIPS: Do not use CodeStub::FindInCache if not necessary.
Port r23795 (b41f4a7)
Original commit message:
GetCode does the FindInCache check as well.
BUG=
R=akos.palfi@imgtec.com, dusan.milosavljevic@imgtec.com
Review URL: https://codereview.chromium.org/
549403004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23807
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 9 Sep 2014 13:51:03 +0000 (13:51 +0000)]
Use locale-independent predicates.
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
559523002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23806
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 9 Sep 2014 13:26:37 +0000 (13:26 +0000)]
Fix size_t to int conversion compile error.
BUG=
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
552313002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23805
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 9 Sep 2014 13:20:09 +0000 (13:20 +0000)]
Add copy support in inliner.
Refactors JSGraph to ensure that the zone operators are created in
can be different from the Graph's zone.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
553873002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23804
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Tue, 9 Sep 2014 12:58:34 +0000 (12:58 +0000)]
Handle non-object constants in HConstant::GetMonomorphicJSObjectMap.
R=ulan@chromium.org
BUG=chromium:412162
LOG=N
Review URL: https://codereview.chromium.org/
552243002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23803
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
Jacob.Bramley@arm.com [Tue, 9 Sep 2014 12:43:43 +0000 (12:43 +0000)]
Reland r23732: 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=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
551823004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23802
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 9 Sep 2014 12:32:17 +0000 (12:32 +0000)]
Couple of fixes to typer
(Extracted from verifier CL.)
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
554763003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23801
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 9 Sep 2014 12:24:43 +0000 (12:24 +0000)]
Delete generated runtime tests
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
548383002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23800
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 9 Sep 2014 12:16:33 +0000 (12:16 +0000)]
Hydrogen: bailout when there is a throw statement in a non-effect context.
This mirrors the behavior of the compilation pipeline before recent OptimizeFunctionOnNextCall changes.
BUG=chromium:412208
LOG=n
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
558593002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23799
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 9 Sep 2014 12:12:04 +0000 (12:12 +0000)]
Allow some runtime functions to accept Int32s instead of Smis.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
551363002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23796
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 9 Sep 2014 11:45:53 +0000 (11:45 +0000)]
Do not use CodeStub::FindInCache if not necessary.
GetCode does the FindInCache check as well.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
548313002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23795
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 9 Sep 2014 11:41:56 +0000 (11:41 +0000)]
Turn old space cons strings into regular external strings (not short).
R=hpayer@chromium.org
BUG=v8:3530
LOG=N
Review URL: https://codereview.chromium.org/
368223002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23794
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
v8-autoroll@chromium.org [Tue, 9 Sep 2014 11:31:17 +0000 (11:31 +0000)]
[Auto-roll] Bump up version to 3.29.54.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23793
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 9 Sep 2014 10:33:33 +0000 (10:33 +0000)]
Fixed printing of JS code.
This is a fix/improvement for r23478 ("Fix disassembly redirection from stdout
into a file.").
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
554223002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23792
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 9 Sep 2014 10:07:29 +0000 (10:07 +0000)]
Don't record slots of objects that may contain raw values.
BUG=
R=mstarzinger@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
555783002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23791
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 9 Sep 2014 09:21:51 +0000 (09:21 +0000)]
Unbreak FreeBSD build (hopefully).
BUG=v8:3548
LOG=y
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
556543004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23790
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 9 Sep 2014 08:57:29 +0000 (08:57 +0000)]
Convert GN visibility to be a list.
GN visibility currently allows either string or list types, but this is causing
some problems for some templates. I'm going to require it to be lists, so am
changing all callers before pushing the new binary.
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
556583002
Patch from Brett Wilson <brettw@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23789
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 9 Sep 2014 08:52:36 +0000 (08:52 +0000)]
Fixed some undefined behavior in our external header.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
555053002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23788
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
v8-autoroll@chromium.org [Mon, 8 Sep 2014 22:02:19 +0000 (22:02 +0000)]
[Auto-roll] Bump up version to 3.29.52.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23784
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
balazs.kilvady@imgtec.com [Mon, 8 Sep 2014 19:09:21 +0000 (19:09 +0000)]
MIPS: Get CallInterfaceDescriptor directly from CodeStub.
Port r23778 (c2dcfb1)
BUG=
R=paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/
554023002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23783
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
balazs.kilvady@imgtec.com [Mon, 8 Sep 2014 18:51:07 +0000 (18:51 +0000)]
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
balazs.kilvady@imgtec.com [Mon, 8 Sep 2014 17:20:49 +0000 (17:20 +0000)]
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
mvstanton@chromium.org [Mon, 8 Sep 2014 16:18:37 +0000 (16:18 +0000)]
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
balazs.kilvady@imgtec.com [Mon, 8 Sep 2014 16:14:21 +0000 (16:14 +0000)]
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
yangguo@chromium.org [Mon, 8 Sep 2014 15:18:54 +0000 (15:18 +0000)]
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
mstarzinger@chromium.org [Mon, 8 Sep 2014 14:32:17 +0000 (14:32 +0000)]
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
mstarzinger@chromium.org [Mon, 8 Sep 2014 14:10:33 +0000 (14:10 +0000)]
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
m.m.capewell@googlemail.com [Mon, 8 Sep 2014 14:08:16 +0000 (14:08 +0000)]
[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
v8-autoroll@chromium.org [Mon, 8 Sep 2014 13:31:31 +0000 (13:31 +0000)]
Whitespace change for bootstrapping auto roll bot.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23774
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 8 Sep 2014 13:27:56 +0000 (13:27 +0000)]
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
mvstanton@chromium.org [Mon, 8 Sep 2014 12:51:29 +0000 (12:51 +0000)]
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
jochen@chromium.org [Mon, 8 Sep 2014 10:48:29 +0000 (10:48 +0000)]
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
mstarzinger@chromium.org [Mon, 8 Sep 2014 09:39:39 +0000 (09:39 +0000)]
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
bmeurer@chromium.org [Mon, 8 Sep 2014 09:16:11 +0000 (09:16 +0000)]
[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
bmeurer@chromium.org [Mon, 8 Sep 2014 09:11:11 +0000 (09:11 +0000)]
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
v8-autoroll@chromium.org [Mon, 8 Sep 2014 09:04:14 +0000 (09:04 +0000)]
[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
svenpanne@chromium.org [Mon, 8 Sep 2014 08:23:02 +0000 (08:23 +0000)]
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
bmeurer@chromium.org [Mon, 8 Sep 2014 06:49:17 +0000 (06:49 +0000)]
[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
bmeurer@chromium.org [Mon, 8 Sep 2014 04:53:35 +0000 (04:53 +0000)]
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
bmeurer@chromium.org [Mon, 8 Sep 2014 04:44:22 +0000 (04:44 +0000)]
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
v8-autoroll@chromium.org [Sun, 7 Sep 2014 10:45:51 +0000 (10:45 +0000)]
[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
machenbach@chromium.org [Sun, 7 Sep 2014 08:11:32 +0000 (08:11 +0000)]
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
machenbach@chromium.org [Sun, 7 Sep 2014 08:02:05 +0000 (08:02 +0000)]
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
machenbach@chromium.org [Fri, 5 Sep 2014 22:34:15 +0000 (22:34 +0000)]
[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
paul.lind@imgtec.com [Fri, 5 Sep 2014 19:13:32 +0000 (19:13 +0000)]
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
paul.lind@imgtec.com [Fri, 5 Sep 2014 19:04:50 +0000 (19:04 +0000)]
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
machenbach@chromium.org [Fri, 5 Sep 2014 16:34:14 +0000 (16:34 +0000)]
[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
mstarzinger@chromium.org [Fri, 5 Sep 2014 15:47:47 +0000 (15:47 +0000)]
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
mstarzinger@chromium.org [Fri, 5 Sep 2014 15:43:26 +0000 (15:43 +0000)]
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
titzer@chromium.org [Fri, 5 Sep 2014 15:31:33 +0000 (15:31 +0000)]
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
yangguo@chromium.org [Fri, 5 Sep 2014 15:20:45 +0000 (15:20 +0000)]
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
jarin@chromium.org [Fri, 5 Sep 2014 15:13:44 +0000 (15:13 +0000)]
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
yangguo@chromium.org [Fri, 5 Sep 2014 15:12:49 +0000 (15:12 +0000)]
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
mstarzinger@chromium.org [Fri, 5 Sep 2014 15:01:51 +0000 (15:01 +0000)]
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
weiliang.lin@intel.com [Fri, 5 Sep 2014 14:31:41 +0000 (14:31 +0000)]
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
balazs.kilvady@imgtec.com [Fri, 5 Sep 2014 14:29:45 +0000 (14:29 +0000)]
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
weiliang.lin@intel.com [Fri, 5 Sep 2014 14:29:21 +0000 (14:29 +0000)]
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
titzer@chromium.org [Fri, 5 Sep 2014 13:22:27 +0000 (13:22 +0000)]
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
machenbach@chromium.org [Fri, 5 Sep 2014 12:34:16 +0000 (12:34 +0000)]
[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
titzer@chromium.org [Fri, 5 Sep 2014 12:27:28 +0000 (12:27 +0000)]
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
Jacob.Bramley@arm.com [Fri, 5 Sep 2014 12:20:41 +0000 (12:20 +0000)]
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
Jacob.Bramley@arm.com [Fri, 5 Sep 2014 12:10:00 +0000 (12:10 +0000)]
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
svenpanne@chromium.org [Fri, 5 Sep 2014 11:48:47 +0000 (11:48 +0000)]
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
bmeurer@chromium.org [Fri, 5 Sep 2014 11:47:46 +0000 (11:47 +0000)]
[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
bmeurer@chromium.org [Fri, 5 Sep 2014 11:44:31 +0000 (11:44 +0000)]
[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
verwaest@chromium.org [Fri, 5 Sep 2014 11:38:22 +0000 (11:38 +0000)]
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
bmeurer@chromium.org [Fri, 5 Sep 2014 11:20:55 +0000 (11:20 +0000)]
[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
bmeurer@chromium.org [Fri, 5 Sep 2014 11:10:28 +0000 (11:10 +0000)]
[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
bmeurer@chromium.org [Fri, 5 Sep 2014 10:41:18 +0000 (10:41 +0000)]
[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
mstarzinger@chromium.org [Fri, 5 Sep 2014 09:47:36 +0000 (09:47 +0000)]
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
jarin@chromium.org [Fri, 5 Sep 2014 09:38:04 +0000 (09:38 +0000)]
Fix EvacuateJSFunction to obtain the target address from the forwarding pointer.
R=mstarzinger@chromium.org
BUG=410912
LOG=N
Review URL: https://codereview.chromium.org/
541353003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23722
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
balazs.kilvady@imgtec.com [Fri, 5 Sep 2014 09:37:43 +0000 (09:37 +0000)]
MIPS: Introduce code stub constructors for stub keys.
Port r23716 (9118048)
BUG=
R=dusan.milosavljevic@imgtec.com
Review URL: https://codereview.chromium.org/
535373003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23721
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 5 Sep 2014 09:34:16 +0000 (09:34 +0000)]
[Auto-roll] Bump up version to 3.29.45.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
541373002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23720
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 5 Sep 2014 09:19:48 +0000 (09:19 +0000)]
Add cwd to all shell commands in auto roll scripts.
The v8 root directory is assumed to be the default cwd. All
commands executed in another directory (e.g. the chromium
checkout) need an explicit specification (also in the
tests).
This also fixes several small testing and robustness bugs:
- Get rid of all 'rm ...' shell calls
- Don't leak tmp files/dirs
- Add some forgotten shell calls to the test expectations
- Hardcode the DEPS location (must always be
chromium_dir/DEPS)
- Expect correct return code when terminating gracefully
BUG=chromium:408523
LOG=n
TBR=jarin@chromium.org
TEST=script_test.py
Review URL: https://codereview.chromium.org/
540973002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23719
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 5 Sep 2014 08:48:41 +0000 (08:48 +0000)]
[turbofan] Get rid of the StructuredMacroAssembler.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
544053002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23718
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 5 Sep 2014 08:04:37 +0000 (08:04 +0000)]
Fix null-dereference in r23716.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
545843002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23717
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 5 Sep 2014 07:44:31 +0000 (07:44 +0000)]
Introduce code stub constructors for stub keys.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
542613003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23716
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Fri, 5 Sep 2014 07:29:08 +0000 (07:29 +0000)]
X87: Remove dead code for inline string hashing.
port r23689.
original commit message:
Remove dead code for inline string hashing.
This has become obsolete since hydrogenized StringAdd.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
545093002
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23714
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Fri, 5 Sep 2014 07:25:00 +0000 (07:25 +0000)]
X87: CallDescriptors::InitializeForIsolate() is no longer needed.
port r23652.
original commit message:
CallDescriptors::InitializeForIsolate() is no longer needed.
CallInterfaceDescriptors initialize themselves lazily. Soon we can also tear
down the CodeStubInterfaceDescriptor explicit initialization step.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
541353002
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23713
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Fri, 5 Sep 2014 07:07:07 +0000 (07:07 +0000)]
X87: Clean up code stubs and ensure distinct major keys.
port r23655.
original commit message:
Clean up code stubs and ensure distinct major keys.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
543013002
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23712
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Fri, 5 Sep 2014 06:41:24 +0000 (06:41 +0000)]
X87: Minor-key-ify remaining code stubs
port r23643.
original commit message:
Minor-key-ify remaining code stubs
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
542043002
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23711
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Fri, 5 Sep 2014 05:22:41 +0000 (05:22 +0000)]
X87: enable snapshot
Tweak LConstantD and LStoreKeyed to avoid fp register spilling
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
545673003
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23710
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 5 Sep 2014 05:04:15 +0000 (05:04 +0000)]
[Auto-roll] Bump up version to 3.29.44.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
545623004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23709
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Fri, 5 Sep 2014 02:11:31 +0000 (02:11 +0000)]
X87: Make concrete classes for individual call descriptors
port r23639
original commit message:
Make concrete classes for individual call descriptors. The
ic-convention classes that hold register specifications are
merged into these new call descriptor classes, which should
represent a final home for that information.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
544943002
Patch from Jing Bao <jing.bao@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23708
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 4 Sep 2014 17:04:13 +0000 (17:04 +0000)]
[Auto-roll] Bump up version to 3.29.42.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
541833002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23704
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 4 Sep 2014 16:29:47 +0000 (16:29 +0000)]
Remove redundant --always-full-compiler flag.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
538613006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23703
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 4 Sep 2014 16:29:40 +0000 (16:29 +0000)]
Remove overly complex MachineNodeFactory.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
543763002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23702
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
balazs.kilvady@imgtec.com [Thu, 4 Sep 2014 15:25:19 +0000 (15:25 +0000)]
MIPS: Remove dead code for inline string hashing.
Port r23689 (e8762c3)
Original commit message:
This has become obsolete since hydrogenized StringAdd.
BUG=
R=dusan.milosavljevic@imgtec.com
Review URL: https://codereview.chromium.org/
542663002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23701
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 4 Sep 2014 15:05:06 +0000 (15:05 +0000)]
Ignore numbers as values of --expose-natives-as flag.
R=yangguo@chromium.org
BUG=408036
LOG=N
Review URL: https://codereview.chromium.org/
534943004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23700
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 4 Sep 2014 14:52:52 +0000 (14:52 +0000)]
Fix deoptimization of context.
We need to handle the case where the context was removed by dead code
elimination. In that case, we just use the context from the activation
(or from the inlined function if we are inlined).
For reference, here is the CL that introduced the bug: https://codereview.chromium.org/
522873002
BUG=410566
LOG=N
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
542613002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23699
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 4 Sep 2014 14:07:17 +0000 (14:07 +0000)]
Fix OptimizeFunctionOnNextCall fix.
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
538003002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23698
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 4 Sep 2014 13:45:05 +0000 (13:45 +0000)]
Remove deprecated PrintableUnique.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
543743002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23697
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 4 Sep 2014 13:18:15 +0000 (13:18 +0000)]
Use a switch over it-state to compiler handlers
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
541723002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23696
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 4 Sep 2014 13:17:04 +0000 (13:17 +0000)]
Get rid of special property_encoding flag on the LookupIterator
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
539083002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23695
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Thu, 4 Sep 2014 12:47:13 +0000 (12:47 +0000)]
Regexp: Refactor ChoiceNode::Emit
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
537913002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23694
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00