Commit Graph

18783 Commits

Author SHA1 Message Date
mvstanton@chromium.org
febf84a333 Added CallInterfaceDescriptors to all code stubs. A handful
of code stubs are too complex to be described this way, and
they are encoded with the macro
DEFINE_NULL_CALL_INTERFACE_DESCRIPTOR().

Along the way:
* allowed inheritance of CallInterfaceDescriptors.
* Defined static Register methods for some of the new
  CallInterfaceDescriptors. We could go a lot further here, but
  it doesn't have to be done immediately.
* Added Representation arrays to some CallInterfaceDescriptors,
  especially where future hydrogen versions of the stubs could
  benefit from this knowledge.

R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23854 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 07:11:10 +00:00
weiliang.lin@intel.com
ca2d970a45 X87: Do not cache CodeStubInterfaceDescriptor on the isolate.
port r23744.

original commit message:

  Do not cache CodeStubInterfaceDescriptor on the isolate.

BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23853 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-11 05:30:19 +00:00
v8-autoroll@chromium.org
64392f2ca6 [Auto-roll] Bump up version to 3.29.56.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23849 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 23:01:28 +00:00
paul.lind@imgtec.com
a7d4f2fda1 MIPS: Rename ascii to one-byte where applicable.
Port r23840 (5463c43)

BUG=
R=paul.lind@imgtec.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23848 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 19:18:28 +00:00
arv@chromium.org
bd01c1df61 Remove runtime test for concise methods
The runtime tests have been removed.

LOG=N
BUG=None
R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23847 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 17:36:00 +00:00
arv@chromium.org
45d8e74cd6 ES6: Add support for method shorthand in object literals
This is governed by the harmony-object-literals flag.

BUG=v8:3516
LOG=Y
R=rossberg@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 16:39:42 +00:00
ulan@chromium.org
9261c44fd4 Fix status file after r23840.
TBR=yangguo@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23845 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 16:19:42 +00:00
mstarzinger@chromium.org
9b274b0b69 Fix awesomeness in X64 assembler.
R=ulan@chromium.org
TEST=mjsunit --turbo-types

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23844 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 15:58:23 +00:00
ulan@chromium.org
2a084bddd3 [turbofan] Save OOL constant pool pointer in CodeGenerator::AssemblePrologue.
BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23843 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 14:40:59 +00:00
mstarzinger@chromium.org
1f4f9eed2a Actually disabled typed pipeline after r23830.
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23842 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 13:41:09 +00:00
yangguo@chromium.org
c71976d55a Also rename ascii to one-byte in tool scripts.
TBR=marja@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23841 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 12:56:19 +00:00
yangguo@chromium.org
4e670fd05e Rename ascii to one-byte where applicable.
R=dcarney@chromium.org, marja@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23840 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 12:38:12 +00:00
yangguo@chromium.org
d3af5b67d2 Fix JSReceiver::HasHiddenProperties wrt access-checked objects.
R=jkummerow@chromium.org
BUG=chromium:411877
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23839 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 12:31:13 +00:00
bmeurer@chromium.org
cf293f7780 [turbofan] Lower JSStoreProperty during JS typed lowering.
Note that we cannot yet emit a diamond here (patch is ready), because
the scheduler is still broken wrt. free floating control (seems related
although this diamond is not free floating).

TEST=cctest
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23838 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 12:29:48 +00:00
bmeurer@chromium.org
6bb08db27e [turbofan] Next step towards shared operators.
TEST=compiler-unittests,cctest
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23837 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 12:23:45 +00:00
mstarzinger@chromium.org
8d35f22795 Disabled typed pipeline because of 64-bit failures.
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23835 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 12:07:39 +00:00
mstarzinger@chromium.org
daa9aa5553 Fix blacklist of 'array-functions-prototype-misc' after r23830.
R=ulan@chromium.org
TEST=mjsunit/array-functions-prototype-misc

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23832 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 10:31:59 +00:00
v8-autoroll@chromium.org
0a7a925e4f [Auto-roll] Bump up version to 3.29.55.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23831 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 10:01:20 +00:00
mstarzinger@chromium.org
13f01e65c4 Enable typed pipeline for TurboFan.
R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23830 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 09:52:50 +00:00
mstarzinger@chromium.org
de0b213cf2 Switch inlining to use simplified instead of machine loads.
R=sigurds@chromium.org
TBR=bmeurer@chromium.org
TEST=cctest/test-run-inlining --turbo-types

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23829 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 09:48:03 +00:00
ulan@chromium.org
d66ed1176f Don't inline Array functions if receiver map is not extensible.
BUG=405517
LOG=N
TEST=mjsunit/regress/regress-crbug-405517.js
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23828 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 09:22:13 +00:00
ulan@chromium.org
99301fc8c5 Fix regress-411210 after r23824.
BUG=
R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23827 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 08:48:40 +00:00
yangguo@chromium.org
4948c064b2 Allow externalizing cons and sliced string.
Fulfill overdue TODO.

R=mstarzinger@chromium.org

Committed: https://code.google.com/p/v8/source/detail?r=23058

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23826 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 08:47:16 +00:00
bmeurer@chromium.org
0e42316deb [turbofan] Correctly use bit_cast instead of static_cast.
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23825 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 08:32:23 +00:00
hpayer@chromium.org
ed37edc5c0 Remove guard page mechanism from promotion queue.
BUG=chromium:411210
LOG=n
R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23824 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 07:51:29 +00:00
machenbach@chromium.org
d579836b9a Make merge script bypass hooks on upload.
TEST=script_test.py
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23823 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 07:51:13 +00:00
hpayer@chromium.org
68b309ede8 Split up marking step and marking speed up functionality.
BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23822 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 07:23:38 +00:00
weiliang.lin@intel.com
d79d1f782f X87: Unify JSEntryStub and JSConstructEntryStub, and some more code stub cleanups.
port r23742.

original commit message:

  Unify JSEntryStub and JSConstructEntryStub, and some more code stub cleanups.

BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23821 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 07:17:23 +00:00
bmeurer@chromium.org
4f5b0911db Revert "Switch inlining to use simplified instead of machine loads.", "Fix size_t to int conversion compile error." and "Add copy support in inliner.".
This reverts commits r23813, r23805 and r23804 for Windows breakage.

TBR=mstarzinger@chromium.org,sigurds@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23816 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 06:39:25 +00:00
weiliang.lin@intel.com
850580317b X87: Introduce code stub constructors for stub keys.
port r23716.

original commit message:

  Introduce code stub constructors for stub keys.

BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23815 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 02:44:43 +00:00
vegorov@chromium.org
a57c7ab69c Fix perf jitdump integration.
When emitting JIT_CODE_LOAD for Crankshafted code exclude Safepoint Table from the size of the code.

This cleans up perf annotate output - because otherwise it confusingly tries to disassemble safepoint table.

R=jarin@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23814 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-09 17:35:51 +00:00
mstarzinger@chromium.org
947726a79c 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
2014-09-09 15:55:47 +00:00
mstarzinger@chromium.org
6034230db7 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
2014-09-09 14:48:16 +00:00
yangguo@chromium.org
8d6f9811da 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
2014-09-09 14:31:49 +00:00
bmeurer@chromium.org
bbd96b97e4 [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
2014-09-09 14:18:17 +00:00
m.m.capewell@googlemail.com
cb6ea19859 [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
2014-09-09 14:13:51 +00:00
balazs.kilvady@imgtec.com
48a91826e4 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
2014-09-09 14:11:18 +00:00
svenpanne@chromium.org
f8ff071006 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
2014-09-09 13:51:03 +00:00
sigurds@chromium.org
3606999e1e 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
2014-09-09 13:26:37 +00:00
sigurds@chromium.org
1f9215ba8d 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
2014-09-09 13:20:09 +00:00
jarin@chromium.org
01d63e43b2 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
2014-09-09 12:58:34 +00:00
Jacob.Bramley@arm.com
3dbb3c39d5 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
2014-09-09 12:43:43 +00:00
rossberg@chromium.org
f3e0338882 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
2014-09-09 12:32:17 +00:00
jkummerow@chromium.org
5cc34b6b52 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
2014-09-09 12:24:43 +00:00
jkummerow@chromium.org
fd3e505fb6 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
2014-09-09 12:16:33 +00:00
mstarzinger@chromium.org
34a659ae80 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
2014-09-09 12:12:04 +00:00
yangguo@chromium.org
8470a7783b 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
2014-09-09 11:45:53 +00:00
yangguo@chromium.org
4b0c076052 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
2014-09-09 11:41:56 +00:00
v8-autoroll@chromium.org
ad77e2bd43 [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
2014-09-09 11:31:17 +00:00
svenpanne@chromium.org
91efac12a5 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
2014-09-09 10:33:33 +00:00