Commit Graph

18783 Commits

Author SHA1 Message Date
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
jarin@chromium.org
b74fae5511 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
2014-09-05 09:38:04 +00:00
balazs.kilvady@imgtec.com
835b000a72 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
2014-09-05 09:37:43 +00:00
machenbach@chromium.org
a6a9adb552 [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
2014-09-05 09:34:16 +00:00
machenbach@chromium.org
a44c42a4da 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
2014-09-05 09:19:48 +00:00
bmeurer@chromium.org
5042b23b86 [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
2014-09-05 08:48:41 +00:00
yangguo@chromium.org
42f94d59c9 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
2014-09-05 08:04:37 +00:00
yangguo@chromium.org
2e80f58239 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
2014-09-05 07:44:31 +00:00
weiliang.lin@intel.com
547589e280 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
2014-09-05 07:29:08 +00:00
weiliang.lin@intel.com
c8f1f20477 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
2014-09-05 07:25:00 +00:00
weiliang.lin@intel.com
7cecf80c43 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
2014-09-05 07:07:07 +00:00
weiliang.lin@intel.com
48c61115ec 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
2014-09-05 06:41:24 +00:00
weiliang.lin@intel.com
276c2a0dec 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
2014-09-05 05:22:41 +00:00
machenbach@chromium.org
9f85021297 [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
2014-09-05 05:04:15 +00:00
weiliang.lin@intel.com
7a690932aa 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
2014-09-05 02:11:31 +00:00
machenbach@chromium.org
f3d39dc4d0 [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
2014-09-04 17:04:13 +00:00
titzer@chromium.org
4923810a68 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
2014-09-04 16:29:47 +00:00
mstarzinger@chromium.org
bb025c1ceb 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
2014-09-04 16:29:40 +00:00
balazs.kilvady@imgtec.com
447f2839e7 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
2014-09-04 15:25:19 +00:00
jarin@chromium.org
1afada8d04 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
2014-09-04 15:05:06 +00:00
jarin@chromium.org
b3b4e3eea5 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
2014-09-04 14:52:52 +00:00
titzer@chromium.org
0ee34c8354 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
2014-09-04 14:07:17 +00:00
mstarzinger@chromium.org
4539e9b936 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
2014-09-04 13:45:05 +00:00
verwaest@chromium.org
2b6f5d6a9a 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
2014-09-04 13:18:15 +00:00
verwaest@chromium.org
9f57d62618 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
2014-09-04 13:17:04 +00:00
erik.corry@gmail.com
a13d748e4d 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
2014-09-04 12:47:13 +00:00
balazs.kilvady@imgtec.com
8f59d82f8b MIPS: Disable turbofan dependent cctests after r23638.
BUG=
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23693 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 12:34:47 +00:00
verwaest@chromium.org
3ef094402e Flatten property_kind into state. Add UNKNOWN as a state for dict-mode receivers
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23692 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 12:28:13 +00:00
bmeurer@chromium.org
0baf275e20 Enforce correct number comparisons when inlining Array.indexOf.
TEST=mjsunit/regress/regress-crbug-407946
BUG=407946
LOG=y
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23691 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 12:25:57 +00:00
titzer@chromium.org
da167d747f Disable slow type tests for now.
R=mstarzinger@chromium.org, neis@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23690 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 12:19:19 +00:00
yangguo@chromium.org
5294179e4c Remove dead code for inline string hashing.
This has become obsolete since hydrogenized StringAdd.

R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23689 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 12:15:09 +00:00
bmeurer@chromium.org
94671afb84 Make MSVC happy again.
TBR=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23688 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 11:43:20 +00:00
titzer@chromium.org
67b89f9db6 Fix %OptimizeFunctionOnNextCall to actually work when the function has not yet been compiled.
R=yangguo@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23687 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 11:27:20 +00:00
bmeurer@chromium.org
7712ed28e8 [turbofan] Initial version of ValueNumberingReducer.
TEST=compiler-unittests,cctest,mjsunit
R=mstarzinger@chromium.org, jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23686 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 11:13:35 +00:00
bmeurer@chromium.org
e75c2dfef2 Fix invalid reinterpret_cast.
TBR=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23685 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 10:58:20 +00:00
bmeurer@chromium.org
7c085aa4d9 [turbofan] More const-correctness changes.
Also get rid of the DeleteNode and ChangeOperator methods in Graph.

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23684 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 10:55:58 +00:00
mstarzinger@chromium.org
51894ec36c Move StructuredMachineAssembler into cctest suite.
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23681 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 10:23:51 +00:00
machenbach@chromium.org
485168c8c6 Return 0 when roll scripts terminate gracefully.
BUG=408523
LOG=n
TBR=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23680 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 10:19:44 +00:00
machenbach@chromium.org
211e77cb41 Skip test on windows debug.
TBR=mstarzinger@chromium.org,bmeurer@chromium.org,jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23679 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 10:04:19 +00:00
machenbach@chromium.org
55dc65f558 Make lookup of last v8 roll work with pure git.
BUG=410721
LOG=n
TBR=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23678 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 09:56:29 +00:00
bmeurer@chromium.org
c8ffed8879 [turbofan] Make sure Operator is really immutable.
Make Operator const-correct in preparation for allocating sharing
Operators across different isolates (using LazyInstance).

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23677 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 09:37:25 +00:00
bmeurer@chromium.org
dd34bc2cab Add missing -Wno-missing-field-initializer flag to standalone.gypi.
Chrome uses -Wno-missing-field-initializers when building V8, so we
should better use that as well. It silences warnings generated for the
GTest port files.

BUG=v8:3518
LOG=n
R=jochen@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23676 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 09:23:50 +00:00
bmeurer@chromium.org
b1eca2cea7 [turbofan] Properly delete nodes in the GraphReducer.
This is required to enable a value numbering reducer, which needs to be
able to recognize "dead nodes".

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23675 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 09:22:10 +00:00
akos.palfi@imgtec.com
fdfe006ed7 MIPS: Clean up code stubs and ensure distinct major keys.
Port r23655 (6327324d)

BUG=
R=machenbach@chromium.org, paul.lind@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23674 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 08:59:42 +00:00
bmeurer@chromium.org
31718c550e Refactor common unit test code.
TEST=compiler-unittests
BUG=v8:3489
LOG=n
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23673 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-04 08:44:03 +00:00