machenbach@chromium.org [Thu, 3 Apr 2014 13:01:22 +0000 (13:01 +0000)]
Fix bug entry and quotation marks in merge-to-branch.
This fixes usage of quotation marks inside titles of merged patches.
This also fixes aggregation of empty or "none" BUG entries.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
223463003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20483
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 3 Apr 2014 12:57:33 +0000 (12:57 +0000)]
Add merged patches to commit title in merge-to-branch.
This makes it easier to grep for patches in title in the revision history.
This also removes the redundant information into which branch was merged, as this can be derived from the version number in the title now.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
223753002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20482
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 3 Apr 2014 12:41:37 +0000 (12:41 +0000)]
Return MaybeHandle from NewExternalStringFrom*.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
223653003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20481
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 3 Apr 2014 12:30:37 +0000 (12:30 +0000)]
Reland "Return MaybeHandle from NewConsString."
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
223813002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20480
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 3 Apr 2014 12:30:08 +0000 (12:30 +0000)]
Return MaybeHandle from NewRaw???String.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
223573002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20479
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Thu, 3 Apr 2014 12:27:24 +0000 (12:27 +0000)]
Revert r20474
This reverts commit r20474 due to an x64 release issue.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
223823002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20478
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 3 Apr 2014 12:23:35 +0000 (12:23 +0000)]
Use premordial Object.isSealed/isFrozen in builtins.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
223473002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20477
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 3 Apr 2014 12:12:28 +0000 (12:12 +0000)]
Fixed environment assignment for LCheckNonSmi.
This fixes browsing facebook.com with a debug version of Chrome.
TBR=ulan@chromium.org
Review URL: https://codereview.chromium.org/
223763003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20476
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 3 Apr 2014 12:09:14 +0000 (12:09 +0000)]
Revert "Return MaybeHandle from NewConsString."
This reverts r20473.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
223593004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20475
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Thu, 3 Apr 2014 11:41:03 +0000 (11:41 +0000)]
Function calls are handled with a LoadIC and a FunctionCallStub. This works well, but we can create a platform to gather custom feedback by inventing a CallIC. CallIC takes a JSFunction as input, maintains UNINIT/MONO/MEGA state in a feedback slot, and engages in limited patching for the most efficient code.
The change creates a degrade in NBody tests, but a follow-on CL addresses it by using this custom feedback platform to give a 45% improvement.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
172523002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20474
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 3 Apr 2014 11:38:01 +0000 (11:38 +0000)]
Return MaybeHandle from NewConsString.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
223383002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20473
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 3 Apr 2014 10:43:56 +0000 (10:43 +0000)]
When freezing global object, go through the property cell
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
223613002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20469
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 3 Apr 2014 10:39:04 +0000 (10:39 +0000)]
Fix approximation of CanDeoptimize() and other small store elimination fixes.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
222263002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20468
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 3 Apr 2014 09:42:18 +0000 (09:42 +0000)]
Add version number to commit message in merge-to-branch.
This is a step towards automatically rolling arbitrary trunk revisions into Chromium.
This also deprecates the bash scripts as they now start to divert.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
223093003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20465
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Thu, 3 Apr 2014 09:12:59 +0000 (09:12 +0000)]
Partial recover from performance degradation after handlification of ElementsAccessor::CopyElements (r20312).
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
223413002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20464
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Thu, 3 Apr 2014 07:51:27 +0000 (07:51 +0000)]
Add API for adding and removing CallCompletedCallbacks to Isolate
The API currently just forwards to the global methods. A follow-up
change will move the callback handling to the Isolate and deprecate the
global versions.
BUG=
R=dcarney@chromium.org, svenpanne@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
215893005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20463
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Thu, 3 Apr 2014 07:40:32 +0000 (07:40 +0000)]
Make build/gyp_v8 cope with ninja on linux
ninja doesn't support/need the output dir and generator dir flags
BUG=v8:3252
R=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
222023004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20462
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 3 Apr 2014 07:35:13 +0000 (07:35 +0000)]
Do not generate LDummyUse instruction for HCapturedObject
LDummyUse confuses the register allocator (since there is no definition
for the use).
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
222283002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20461
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 3 Apr 2014 07:04:46 +0000 (07:04 +0000)]
Check in Lithium that allocation size in Smi range.
This is to avoid triggering an assertion from Smi::FromInt. The
generated code is unreachable, so it is not a real bug.
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
221743005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20458
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 3 Apr 2014 05:57:43 +0000 (05:57 +0000)]
Introduce MaybeHandle to police exception checking in handlified code.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
222163002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20457
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Wed, 2 Apr 2014 22:18:22 +0000 (22:18 +0000)]
MIPS: Check that environments assigned via AssignEnvironment are actually used.
Port r20430 (
e9457854)
Original commit message:
Check that environments assigned via AssignEnvironment are actually used.
Removed some temporary marker comments on the way.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
214703007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20452
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Wed, 2 Apr 2014 22:17:25 +0000 (22:17 +0000)]
MIPS: Make invalid LHSs that are calls late errors.
Port r20428 (
7a071766)
Original commit message:
Necessary for web legacy compatibility.
Also fold in additional strict mode checks into LHS checks.
Minor constness clean-ups on the way.
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
222893002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20451
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Wed, 2 Apr 2014 16:37:33 +0000 (16:37 +0000)]
ARM64: Fix and improve atomic operations.
* The 'compare and swap' operations should enforce memory ordering even when
the exchange does not occur.
* The exclusive monitor does not need to be cleared by CLREX if a LDRX was
not followed by a matching STREX.
* Use LDAR and STLR where possible.
* Use the 'I' and 'J' constraints to hint for constants valid for immediate
values.
R=jfb@chromium.org, rmcilroy@chromium.org, ulan@chromium.org
Review URL: https://codereview.chromium.org/
220793002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20446
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 2 Apr 2014 16:36:16 +0000 (16:36 +0000)]
Remove dead Object::GetPropertyOrFail.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
215973004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20445
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Wed, 2 Apr 2014 16:31:58 +0000 (16:31 +0000)]
ARM64: Avoid iterating through unresolved branches information when unnecessary.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
217343007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20444
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Wed, 2 Apr 2014 15:45:13 +0000 (15:45 +0000)]
ARM64: Fix cctest/test-disasm-arm64/debug on real hardware.
Without the 'BREAK' parameter, no instruction is generated when we are not
running with the simulator.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
221903004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20443
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 2 Apr 2014 14:47:26 +0000 (14:47 +0000)]
Fix assert in Runtime_SetIsObserved.
R=rafaelw@chromium.org
BUG=chromium:352664
LOG=N
Review URL: https://codereview.chromium.org/
204493002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20440
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 2 Apr 2014 13:30:36 +0000 (13:30 +0000)]
Replace CopyMap(constructor->initial_map()) by Map::Create(constructor)
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
218633014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20437
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 2 Apr 2014 13:04:08 +0000 (13:04 +0000)]
tools: strip whitespace in gen-postmortem-metadata.py
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
221513002
Patch from Ben Noordhuis <ben@strongloop.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20436
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 2 Apr 2014 12:55:22 +0000 (12:55 +0000)]
Remove Apple-only GCC_WARN_ABOUT_MISSING_NEWLINE
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
199843003
Patch from Ben Noordhuis <ben@strongloop.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20435
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Wed, 2 Apr 2014 12:38:01 +0000 (12:38 +0000)]
Make stray 'return' an early error
As required by the spec, and implemented by other browsers.
(Plus minor clean-up for redeclaration TypeErrors.)
R=marja@chromium.org
BUG=
LOG=Y
Review URL: https://codereview.chromium.org/
220473014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20434
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 2 Apr 2014 12:24:42 +0000 (12:24 +0000)]
Fix HGraphBuilder::BuildAddStringLengths
length == String::kMaxLength is fine and should not bail out.
BUG=chromium:357052
LOG=n
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
222113002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20433
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vogelheim@chromium.org [Wed, 2 Apr 2014 12:07:10 +0000 (12:07 +0000)]
Remove V8_INLINE from v8-util.h.
(These have been causing compilation problems on some
platforms. For VS, V8_INLINE turns into 'force inline',
which will then cause a problem when the compiler won't
actually inline. Search for "C4714 warning" for details.)
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
212693006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20432
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 2 Apr 2014 11:30:13 +0000 (11:30 +0000)]
Check that environments assigned via AssignEnvironment are actually used.
Removed some temporary marker comments on the way.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
218403006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20430
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alph@chromium.org [Wed, 2 Apr 2014 11:19:53 +0000 (11:19 +0000)]
Show references from weak containers as weak in heap snapshots.
BUG=356590
LOG=Y
R=ulan@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
213673006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20429
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Wed, 2 Apr 2014 11:03:05 +0000 (11:03 +0000)]
Make invalid LHSs that are calls late errors
Necessary for web legacy compatibility.
Also fold in additional strict mode checks into LHS checks.
Minor constness clean-ups on the way.
R=marja@chromium.org
BUG=chromium:358346
LOG=Y
Review URL: https://codereview.chromium.org/
217823003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20428
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 2 Apr 2014 08:21:37 +0000 (08:21 +0000)]
Use the correct natives in messages.js
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
221903002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20427
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Wed, 2 Apr 2014 07:59:54 +0000 (07:59 +0000)]
Lazily initialize the target map list in IC.
This makes sure that we keep the target map list alive in the handle scope during IC computation.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
220923003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20426
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 2 Apr 2014 07:13:17 +0000 (07:13 +0000)]
Fix auto-roll configuration.
TBR=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
221833003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20425
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 2 Apr 2014 07:04:53 +0000 (07:04 +0000)]
Add execution permission to auto-roll script.
TBR=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
220203010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20424
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 2 Apr 2014 07:01:43 +0000 (07:01 +0000)]
Add unhandlified versions of Of() and NowOf().
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
221813002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20423
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 2 Apr 2014 06:59:25 +0000 (06:59 +0000)]
Implement auto-roll script.
This script will (1) check if there is an active roll on rietveld (2) check if there is a trunk revision ready to be rolled and (3) call the chromium_roll script, creating a roll CL. The script will be called regularly through a cron job.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
212983003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20422
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Wed, 2 Apr 2014 03:01:11 +0000 (03:01 +0000)]
Introduce ReadPositionFromRegister in x64 Regexp Macro Assembler
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
220453008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20421
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Wed, 2 Apr 2014 02:34:50 +0000 (02:34 +0000)]
Adjust various constants for x32 port
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
216513003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20420
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 1 Apr 2014 23:43:47 +0000 (23:43 +0000)]
MIPS: Consistently use a separate Lithium instruction for flooring division.
Port r20395 (
5b802048)
Original commit message:
Previously we tried to share some code on by a slightly confusing re-use
of LDivI for a (general) flooring division. Now we cleanly separate
concerns, just like for the rest of the division-like operations. Note
that ARM64 already did it this way.
If we really want to save some code, we can introduce some macro
assembler instructions and/or helper functions in the code generator in
a future CL, but we should really try to avoid being "clever" to save
just a few lines of trivial code. Effort != complexity. :-)
Renamed some related Lithium operands on the way for more consistency.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
220403009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20417
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 1 Apr 2014 23:42:55 +0000 (23:42 +0000)]
MIPS: Only assign environments when they are actually needed.
Port r20376 (
2c4baaf5)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
213733003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20416
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 1 Apr 2014 19:20:31 +0000 (19:20 +0000)]
Skip cctest/test-lockers/MultithreadedParallelIsolates on windows
It's already marked as FAIL, PASS everywhere anyways.
BUG=v8:3215
LOG=n
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
221173003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20415
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 1 Apr 2014 18:04:06 +0000 (18:04 +0000)]
Remove V8_INLINE to prevent C4714 warning under Win64.
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
217123004
Patch from Daniel Vogelheim <vogelheim@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20412
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 1 Apr 2014 17:43:20 +0000 (17:43 +0000)]
Remove Factory::CopyMap(map) in favor of Map::Copy(map)
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
219963009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20411
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 1 Apr 2014 16:41:35 +0000 (16:41 +0000)]
Support typed arrays in IsMoreGeneralElementsKindTransition.
R=verwaest@chromium.org
BUG=357054
LOG=Y
Review URL: https://codereview.chromium.org/
220403004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20410
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 1 Apr 2014 15:32:06 +0000 (15:32 +0000)]
Smi immediates are not supported on x64. Do not use it.
R=jkummerow@chromium.org
BUG=358059
LOG=N
Review URL: https://codereview.chromium.org/
217083003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20409
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Tue, 1 Apr 2014 14:17:43 +0000 (14:17 +0000)]
PreParser fix: propagate reference erros properly.
For example, invalid left hand sides are reference errors. PreParser didn't use
to produce this error ever, so the code for propagating reference errors
properly was missing, and reference errors turned into syntax errors.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
220233006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20408
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 1 Apr 2014 14:16:54 +0000 (14:16 +0000)]
Monomorphic prototype failures should be reserved for already-seen keys.
We incorrectly mark a KeyedStoreIC miss as a monomorphic prototype
failure even though it's the first time a particular (string) key has
been seen.
BUG=358088
R=verwaest@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/
219313002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20407
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 1 Apr 2014 13:43:32 +0000 (13:43 +0000)]
Update tryserver configuration with new linux and arm bots.
BUG=353487
TBR=jarin@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
220453007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20406
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 1 Apr 2014 13:11:12 +0000 (13:11 +0000)]
Provide Type::Contains methods.
Also, rename all *Currently methods to Now*.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
219523003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20405
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 1 Apr 2014 12:53:07 +0000 (12:53 +0000)]
Fix "make arm asan=$CLANG"
Bonus cleanup: remove a few duplicate compiler flags
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
220883003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20402
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 1 Apr 2014 12:51:15 +0000 (12:51 +0000)]
MSan workaround in Simulator::VisitBitfield.
This change shuffles the code in Simulator::VisitBitfield a bit
to work around a MemorySanitizer bug. New code should not be any
slower or less readable than before.
More info:
https://code.google.com/p/memory-sanitizer/issues/detail?id=50
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
212863002
Patch from Evgeniy Stepanov <eugenis@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20401
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 1 Apr 2014 12:48:35 +0000 (12:48 +0000)]
MSan does not understand inline asm. This change preinitializes cpuid
results, and disables the use of stos.
Random mmap() addresses conflict with sanitizer memory layout.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
212723003
Patch from Evgeniy Stepanov <eugenis@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20400
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 1 Apr 2014 12:45:00 +0000 (12:45 +0000)]
[msan] Do not unpoison heap if running on simulator.
With the simulator, MSan detects all memory accesses from JIT code
without the need for annotations.
We'd like to keep the annotation in the native (w/o simulator) mode
until we can move all MSan+V8 users to simulator mode.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
212833002
Patch from Evgeniy Stepanov <eugenis@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20399
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 1 Apr 2014 12:40:58 +0000 (12:40 +0000)]
Add msan.h to v8.gyp.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
212483004
Patch from Evgeniy Stepanov <eugenis@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20398
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 1 Apr 2014 12:34:08 +0000 (12:34 +0000)]
Remove remnants of internalized cons strings.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
216603005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20397
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 1 Apr 2014 11:59:24 +0000 (11:59 +0000)]
Fixed build (unused vars in release mode).
TBR=bmeuerer@chromium.org
Review URL: https://codereview.chromium.org/
218623017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20396
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 1 Apr 2014 11:42:42 +0000 (11:42 +0000)]
Consistently use a separate Lithium instruction for flooring division.
Previously we tried to share some code on by a slightly confusing re-use
of LDivI for a (general) flooring division. Now we cleanly separate
concerns, just like for the rest of the division-like operations. Note
that ARM64 already did it this way.
If we really want to save some code, we can introduce some macro
assembler instructions and/or helper functions in the code generator in
a future CL, but we should really try to avoid being "clever" to save
just a few lines of trivial code. Effort != complexity. :-)
Renamed some related Lithium operands on the way for more consistency.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
212703002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20395
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 1 Apr 2014 11:30:31 +0000 (11:30 +0000)]
Remove internalized cons string types.
Currently, internalizing a cons string could result in either an
in-place converted internalized cons string or a newly created
internalized sequential string, depending on allocation success.
The former could end up being embedded into an IC, which is not
supported.
R=mstarzinger@chromium.org
BUG=357103
LOG=N
Review URL: https://codereview.chromium.org/
218993011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20394
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Tue, 1 Apr 2014 11:23:23 +0000 (11:23 +0000)]
Remove debugger_auto_break flag
The flag was introduced to support console debugger in Chrome. That debugger was replaced by DevTools long time ago and the flag is always true now.
BUG=None
LOG=Y
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
220743003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20393
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Tue, 1 Apr 2014 11:21:20 +0000 (11:21 +0000)]
always lookup api holder from receiver
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
219723002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20392
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 1 Apr 2014 11:16:13 +0000 (11:16 +0000)]
Cleanup property module.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
218683008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20391
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 1 Apr 2014 11:07:09 +0000 (11:07 +0000)]
Make it possible to use HeapType inside objects-inl.h.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
220193007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20390
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 1 Apr 2014 11:04:37 +0000 (11:04 +0000)]
Replace uses of set_map by MigrateToMap.
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
218783003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20389
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 1 Apr 2014 10:56:16 +0000 (10:56 +0000)]
Store i18n meta data in hidden symbols instead of js accessible properties
There were some tests that are supposed to protect against js messing
with the meta data, however, they just didn't try hard enough.
BUG=354967
R=dcarney@chromium.org
LOG=y
Committed: https://code.google.com/p/v8/source/detail?r=20375
Review URL: https://codereview.chromium.org/
215293005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20388
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rmcilroy@chromium.org [Tue, 1 Apr 2014 10:49:44 +0000 (10:49 +0000)]
Only allow automatic FrameScope types for FrameAndConstantPoolScope
In certain situations the PP register would be invalid in a FrameScope::Manual FrameAndConstantPoolScope
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
214623002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20387
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 1 Apr 2014 10:39:09 +0000 (10:39 +0000)]
Fixed assertions on ARM64.
TBR=ulan@chromium.org
Review URL: https://codereview.chromium.org/
220763003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20386
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 1 Apr 2014 10:32:25 +0000 (10:32 +0000)]
Set kTruncatingToSmi for HChange only when To rep is Smi
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
218613002
Patch from Weiliang Lin <weiliang.lin@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20385
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 1 Apr 2014 09:20:28 +0000 (09:20 +0000)]
Fixed power-of-2 predicates, excluding 0.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
219213003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20383
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 1 Apr 2014 08:57:48 +0000 (08:57 +0000)]
Tighten object verification.
Often, when we call MaybeObject::Verify, what we want is Object::ObjectVerify.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
218993005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20382
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 1 Apr 2014 08:05:45 +0000 (08:05 +0000)]
Revert r20375.
Store i18n meta data in hidden symbols instead of js accessible properties
BUG=354967
LOG=N
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/
220673002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20377
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 1 Apr 2014 07:21:31 +0000 (07:21 +0000)]
Only assign environments when they are actually needed. (ARM and ARM64 only)
Twin of https://codereview.chromium.org/
210783003/ and https://codereview.chromium.org/
211153003/.
Cleaned up DoChange a bit on the way, making things more uniform across platforms, removed useless comments etc.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
214613004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20376
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 1 Apr 2014 07:21:05 +0000 (07:21 +0000)]
Store i18n meta data in hidden symbols instead of js accessible properties
There were some tests that are supposed to protect against js messing
with the meta data, however, they just didn't try hard enough.
BUG=354967
R=dcarney@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/
215293005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20375
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 31 Mar 2014 22:50:53 +0000 (22:50 +0000)]
MIPS: Fix PrepareKeyedOperand on MIPS.
Port r20363 (
235f866c)
Original commit message:
When additional_offset is specified, the 'key' operand can be negative
and still pass the bounds check. Therefore, when converting key from
Smi, arithmetic and not logical shift must be used.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
219923005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20370
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 31 Mar 2014 22:48:54 +0000 (22:48 +0000)]
MIPS: Reland and fix "Fix LoadFieldByIndex to take mutable heap-numbers into account."
Port r20358 (
5e9b653d)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
219163010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20369
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 31 Mar 2014 16:45:46 +0000 (16:45 +0000)]
We should perform the illegal redeclaration check earlier so that we do not confuse the AST typer with missing type feedback nodes.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
218493007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20368
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 31 Mar 2014 16:21:20 +0000 (16:21 +0000)]
Use JSObject::SetMapAndElements rather than set_map + set_elements.
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
218583008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20367
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 31 Mar 2014 15:53:21 +0000 (15:53 +0000)]
Fix Type::Intersect to skip uninhabited bitsets
R=verwaest@chromium.org, bmeurer@chromium.org
BUG=chromium:357330
LOG=Y
Review URL: https://codereview.chromium.org/
219333003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20366
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 31 Mar 2014 15:47:18 +0000 (15:47 +0000)]
Update list of V8 try bots.
R=jarin@chromium.org
TBR=jarin@chromium.org
BUG=353487
LOG=n
Review URL: https://codereview.chromium.org/
219493002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20365
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 31 Mar 2014 15:30:13 +0000 (15:30 +0000)]
Replace set_map_and_elements by MigrateToMap-based SetMapAndElements
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
218753005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20364
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 31 Mar 2014 15:14:28 +0000 (15:14 +0000)]
Fix PrepareKeyedOperand on arm.
When additional_offset is specified, the 'key' operand can be negative
and still pass the bounds check. Therefore, when converting key from
Smi, arithmetic and not logical shift must be used.
R=verwaest@chromium.org
BUG=358057
LOG=Y
Review URL: https://codereview.chromium.org/
219473002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20363
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 31 Mar 2014 15:01:46 +0000 (15:01 +0000)]
Fix left trimming check for large objects
BUG=358090
TEST=test/mjsunit/regress/regress-358090.js
LOG=N
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
213833008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20362
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 31 Mar 2014 14:29:01 +0000 (14:29 +0000)]
Make sure when we shrink an object that we store a filler first into the free memory before updating the map or size.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
219103002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20361
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 31 Mar 2014 14:21:04 +0000 (14:21 +0000)]
Reland and fix "Fix LoadFieldByIndex to take mutable heap-numbers into account.""
BUG=
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
218663005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20358
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 31 Mar 2014 14:14:54 +0000 (14:14 +0000)]
Do not check for interrupt when allocating stack locals.
R=dcarney@chromium.org
BUG=357137
LOG=N
Review URL: https://codereview.chromium.org/
219373004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20357
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Mon, 31 Mar 2014 14:06:42 +0000 (14:06 +0000)]
ARM64: Optimize AllocateHeapNumber to use STP.
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
216933003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20356
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 31 Mar 2014 13:35:12 +0000 (13:35 +0000)]
Finalisation disclaimer
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
219403002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20355
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 31 Mar 2014 13:23:32 +0000 (13:23 +0000)]
Revert 20348 - "Fix LoadFieldByIndex to take mutable heap-numbers into account."
Reason for revert: crashes benchmarks/sunspider/string-fasta on ia32.debug
This also reverts r20350 and r20352
> Fix LoadFieldByIndex to take mutable heap-numbers into account.
>
> BUG=
> R=ishell@chromium.org
>
> Review URL: https://codereview.chromium.org/
213213002
BUG=none
LOG=n
TBR=verwaest@chromium.org
Revert "Use sarq on x64"
This reverts commit
e2a8ef9321345c6bc091054443bf2b9535ff6b1c.
Revert "Don't | int and bool"
This reverts commit
c90d713d3a8ceba4fec41933a63beb6e50a3d7c0.
Review URL: https://codereview.chromium.org/
219393002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20354
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 31 Mar 2014 12:40:32 +0000 (12:40 +0000)]
Revert 20313 - "Ship promises and weak collections"
> R=mstarzinger@chromium.org
> BUG=
>
> Committed: https://code.google.com/p/v8/source/detail?r=20211
>
> Review URL: https://codereview.chromium.org/
206163004
R=rossberg@chromium.org
TBR=rossberg@chromium.org
LOG=y
BUG=n
Review URL: https://codereview.chromium.org/
219303002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20353
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 31 Mar 2014 12:24:51 +0000 (12:24 +0000)]
Don't | int and bool
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
219293002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20352
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 31 Mar 2014 12:09:59 +0000 (12:09 +0000)]
Skip cctest/test-mark-compact/NoPromotion on ARM64
BUG=v8:3247
TBR=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
217423006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20351
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 31 Mar 2014 12:07:41 +0000 (12:07 +0000)]
Use sarq on x64
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
219043003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20350
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 31 Mar 2014 12:01:02 +0000 (12:01 +0000)]
Cleanup bootstrapper, execution and factory modules.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
219233002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20349
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 31 Mar 2014 11:59:29 +0000 (11:59 +0000)]
Fix LoadFieldByIndex to take mutable heap-numbers into account.
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
213213002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20348
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 31 Mar 2014 11:58:53 +0000 (11:58 +0000)]
Add missing lazy deopt point for the TransitionElementsKind instruction.
R=mvstanton@chromium.org, yangguo@chromium.org
BUG=357105
TEST=test/mjsunit/regress/regress-357105.js
LOG=N
Review URL: https://codereview.chromium.org/
216963002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20347
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00