bmeurer@chromium.org [Thu, 11 Sep 2014 10:37:49 +0000 (10:37 +0000)]
[turbofan] Machine operators are globally shared singletons.
TEST=compiler-unittests,cctest
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
547233003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23864
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 11 Sep 2014 10:04:13 +0000 (10:04 +0000)]
Fix ElementsKind handling of prototypes in Array.concat
Double elements, typed elements, and sloppy arguments elements were all erroneously marked UNREACHABLE.
BUG=chromium:412203
LOG=n
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
560463002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23863
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 11 Sep 2014 09:58:58 +0000 (09:58 +0000)]
Add a script that can generate simple test cases for user-exposed JS builtins
(we won't check in any such tests; they can be generated on the fly when needed)
R=mbarbella@chromium.org
Review URL: https://codereview.chromium.org/
554683002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23862
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Thu, 11 Sep 2014 09:52:36 +0000 (09:52 +0000)]
Parser cleanup: less member variables.
Parser had unnecessary member pointers to stuff stored in the
CompilationInfo (which Parser also points to).
As we add more parsing code paths (in particular, script streaming), this gets
confusing and Parser and CompilationInfo can get out of sync.
BUG=
R=jochen@chromium.org, rossberg@chromium.org
Review URL: https://codereview.chromium.org/
527233003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23861
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 11 Sep 2014 09:48:56 +0000 (09:48 +0000)]
Expect requiring access check on objects with hidden properties.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
563723002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23860
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 11 Sep 2014 09:44:44 +0000 (09:44 +0000)]
Enable typed pipeline for TurboFan (again).
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
554413003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23859
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
aandrey@chromium.org [Thu, 11 Sep 2014 09:43:30 +0000 (09:43 +0000)]
Fix crash in ScriptDebugServer::wrapCallFrames
The crash happens in DebugEventListener that gets called for an unhandled exception thrown by TryCatch.ReThrow().
In DevTools some parts of DebugEventListener are implemented in JavaScript, thus we should allow JavaScript execution while handling ReThrow exception in debugger.
BUG=411196
LOG=Y
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
553043002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23858
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 11 Sep 2014 09:02:18 +0000 (09:02 +0000)]
Make --turbo-inlining available on the command line.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
565593002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23857
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
baptiste.afsa@arm.com [Thu, 11 Sep 2014 08:50:48 +0000 (08:50 +0000)]
ARM64: Change some incorect uses of ptrdiff_t to int64_t.
R=bmeurer@chromium.org, ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
559073003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23856
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Thu, 11 Sep 2014 08:01:24 +0000 (08:01 +0000)]
Improve x32 detection macro.
When targeting the Microsoft ABI in 64bit mode, clang defines __x86_64__ but
doesn't define __LP64__ (Microsoft uses LLP64), so it would fall down the x32
path. cl.exe doesn't define __x86_64__ in the first place, so it didn't have
this problem.
Rather than trying to guess pointer size by looking at __x86_64__ and __LP64__,
check for pointer size directly using __POINTER_SIZE__. This is defined by both
gcc and clang, and eliminiates this problem.
This should fix hundreds of "error(clang): unknown type name 'Atomic64'" when
compiling v8 on Windows with clang for 64 bit.
BUG=chromium:82385
LOG=n
R=haitao.feng@intel.com, jochen@chromium.org
Review URL: https://codereview.chromium.org/
560903002
Patch from Nico Weber <thakis@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23855
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Thu, 11 Sep 2014 07:11:10 +0000 (07:11 +0000)]
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
weiliang.lin@intel.com [Thu, 11 Sep 2014 05:30:19 +0000 (05:30 +0000)]
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
v8-autoroll@chromium.org [Wed, 10 Sep 2014 23:01:28 +0000 (23:01 +0000)]
[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
paul.lind@imgtec.com [Wed, 10 Sep 2014 19:18:28 +0000 (19:18 +0000)]
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
arv@chromium.org [Wed, 10 Sep 2014 17:36:00 +0000 (17:36 +0000)]
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
arv@chromium.org [Wed, 10 Sep 2014 16:39:42 +0000 (16:39 +0000)]
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
ulan@chromium.org [Wed, 10 Sep 2014 16:19:42 +0000 (16:19 +0000)]
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
mstarzinger@chromium.org [Wed, 10 Sep 2014 15:58:23 +0000 (15:58 +0000)]
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
ulan@chromium.org [Wed, 10 Sep 2014 14:40:59 +0000 (14:40 +0000)]
[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
mstarzinger@chromium.org [Wed, 10 Sep 2014 13:41:09 +0000 (13:41 +0000)]
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
yangguo@chromium.org [Wed, 10 Sep 2014 12:56:19 +0000 (12:56 +0000)]
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
yangguo@chromium.org [Wed, 10 Sep 2014 12:38:12 +0000 (12:38 +0000)]
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
yangguo@chromium.org [Wed, 10 Sep 2014 12:31:13 +0000 (12:31 +0000)]
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
bmeurer@chromium.org [Wed, 10 Sep 2014 12:29:48 +0000 (12:29 +0000)]
[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
bmeurer@chromium.org [Wed, 10 Sep 2014 12:23:45 +0000 (12:23 +0000)]
[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
mstarzinger@chromium.org [Wed, 10 Sep 2014 12:07:39 +0000 (12:07 +0000)]
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
mstarzinger@chromium.org [Wed, 10 Sep 2014 10:31:59 +0000 (10:31 +0000)]
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
v8-autoroll@chromium.org [Wed, 10 Sep 2014 10:01:20 +0000 (10:01 +0000)]
[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
mstarzinger@chromium.org [Wed, 10 Sep 2014 09:52:50 +0000 (09:52 +0000)]
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
mstarzinger@chromium.org [Wed, 10 Sep 2014 09:48:03 +0000 (09:48 +0000)]
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
ulan@chromium.org [Wed, 10 Sep 2014 09:22:13 +0000 (09:22 +0000)]
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
ulan@chromium.org [Wed, 10 Sep 2014 08:48:40 +0000 (08:48 +0000)]
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
yangguo@chromium.org [Wed, 10 Sep 2014 08:47:16 +0000 (08:47 +0000)]
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
bmeurer@chromium.org [Wed, 10 Sep 2014 08:32:23 +0000 (08:32 +0000)]
[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
hpayer@chromium.org [Wed, 10 Sep 2014 07:51:29 +0000 (07:51 +0000)]
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
machenbach@chromium.org [Wed, 10 Sep 2014 07:51:13 +0000 (07:51 +0000)]
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
hpayer@chromium.org [Wed, 10 Sep 2014 07:23:38 +0000 (07:23 +0000)]
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
weiliang.lin@intel.com [Wed, 10 Sep 2014 07:17:23 +0000 (07:17 +0000)]
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
bmeurer@chromium.org [Wed, 10 Sep 2014 06:39:25 +0000 (06:39 +0000)]
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
weiliang.lin@intel.com [Wed, 10 Sep 2014 02:44:43 +0000 (02:44 +0000)]
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
vegorov@chromium.org [Tue, 9 Sep 2014 17:35:51 +0000 (17:35 +0000)]
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
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