Commit Graph

18447 Commits

Author SHA1 Message Date
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
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