Commit Graph

49495 Commits

Author SHA1 Message Date
Clemens Hammacher
0fc61ecae5 [api] Deprecate some wasm methods
They were marked V8_DEPRECATE_SOON for the 6.9 branch, so we deprecate
them for the 7.0 branch.

R=yangguo@chromium.org

Bug: v8:7868
Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
Change-Id: Idc42affd4d1b103e9946e3b77a93720694eb2dfd
Reviewed-on: https://chromium-review.googlesource.com/1150024
Reviewed-by: Adam Klein <adamk@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54803}
2018-07-31 08:55:27 +00:00
Camillo Bruni
8c86376eb5 [elements] Use IsHoleyElementsKind if possible
Bug: v8:6922
Change-Id: I6341cf5d16276f894c5986c194ff3fff3b71b46a
Reviewed-on: https://chromium-review.googlesource.com/1154973
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54802}
2018-07-31 08:17:48 +00:00
Michael Achenbach
332f5e8c3e Revert "[builtins] Clear RelocInfo for off-heap trampolines"
This reverts commit d854d3512e.

Reason for revert: Speculative revert for webkit unit tests:
https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8-Blink%20Linux%2064/25209

Original change's description:
> [builtins] Clear RelocInfo for off-heap trampolines
> 
> For technical reasons, we used to serialize off-heap trampolines with a
> RelocInfo containing a single OFF_HEAP_TARGET entry. This RelocInfo was
> never needed at runtime. It also ended up being somewhat misleading
> because printing an embedded code object would show the OFF_HEAP_TARGET
> entry (belonging to the trampoline) at the first 'real' instruction.
> 
> With this CL, we explicitly serialize an empty byte array as the reloc
> info for each off-heap trampoline, i.e. the snapshot will never contain
> such off-heap target reloc infos.
> 
> Bug: v8:6666, v8:7969
> Change-Id: If6fa85a438d093ed5dcea07ce0de1db49a224d28
> Reviewed-on: https://chromium-review.googlesource.com/1146643
> Commit-Queue: Jakob Gruber <jgruber@chromium.org>
> Reviewed-by: Yang Guo <yangguo@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#54786}

TBR=yangguo@chromium.org,jgruber@chromium.org

Change-Id: If5eabd162141149361df90095b89a173fe2cb81e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:6666, v8:7969
Reviewed-on: https://chromium-review.googlesource.com/1155594
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54801}
2018-07-31 06:39:46 +00:00
Michael Achenbach
3879e8bfe3 Revert "Reland [CloneObjectIC] overwrite monomorphic/polymorphic feedback if deprecated"
This reverts commit d9f6c685f0.

Reason for revert:
https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20gc%20stress/17584

Original change's description:
> Reland [CloneObjectIC] overwrite monomorphic/polymorphic feedback if deprecated
> 
> An object with a deprecated Map which has already been cached in
> CloneObjectIC feedback is still a valid Map for fast cloning --- but
> to be consistent with other ICs, deprecated maps are ignored, and are
> expected to be transitioned away from.
> 
> If the source object has a deprecated map, the instance is migrated.
> 
> BUG=v8:7611, chromium:867958, chromium:868586
> R=​jkummerow@chromium.org, mvstanton@chromium.org
> 
> Change-Id: I477aec6c8d0ae1e1648a70e85d2fd46146521d1c
> Reviewed-on: https://chromium-review.googlesource.com/1154143
> Commit-Queue: Caitlin Potter <caitp@igalia.com>
> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#54799}

TBR=jkummerow@chromium.org,mvstanton@chromium.org,caitp@igalia.com

Change-Id: Ifcb422c3a692543490710d450590323524a6359a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:7611, chromium:867958, chromium:868586
Reviewed-on: https://chromium-review.googlesource.com/1155593
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54800}
2018-07-31 06:29:49 +00:00
Caitlin Potter
d9f6c685f0 Reland [CloneObjectIC] overwrite monomorphic/polymorphic feedback if deprecated
An object with a deprecated Map which has already been cached in
CloneObjectIC feedback is still a valid Map for fast cloning --- but
to be consistent with other ICs, deprecated maps are ignored, and are
expected to be transitioned away from.

If the source object has a deprecated map, the instance is migrated.

BUG=v8:7611, chromium:867958, chromium:868586
R=jkummerow@chromium.org, mvstanton@chromium.org

Change-Id: I477aec6c8d0ae1e1648a70e85d2fd46146521d1c
Reviewed-on: https://chromium-review.googlesource.com/1154143
Commit-Queue: Caitlin Potter <caitp@igalia.com>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54799}
2018-07-31 04:11:05 +00:00
v8-ci-autoroll-builder
3d4524f672 Update V8 DEPS.
Rolling v8/build: b668f37..3e09e23

Rolling v8/buildtools: 0dd5c6f..9a90d9a

Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/e05f902..65f883b

Rolling v8/third_party/depot_tools: d795ab8..b0e855a

Rolling v8/third_party/proguard: eba7a98..63f6c0b

Rolling v8/tools/clang: e26243c..24c4916

TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org

Change-Id: I8f71d9ff29ee05663bd7a17cc40737eb996afdb6
Reviewed-on: https://chromium-review.googlesource.com/1156060
Commit-Queue: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Reviewed-by: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#54798}
2018-07-31 03:55:02 +00:00
Frank Tang
9db83763d0 [Intl] Move caching of default locale from JS into Intl::DefaultLocale
Bug: v8:7988
Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
Change-Id: Ib06e07b20c4a80baac7667241906142d60ada8e8
Reviewed-on: https://chromium-review.googlesource.com/1152453
Commit-Queue: Frank Tang <ftang@chromium.org>
Reviewed-by: Jungshik Shin <jshin@chromium.org>
Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54797}
2018-07-30 23:21:23 +00:00
Deepti Gandluri
6f23c89e4f Add I64Atomic binary operations for ia32
Bug:v8:6532

Change-Id: Ie983fa561654f86597b8f45c5ce11f993846bfe6
Reviewed-on: https://chromium-review.googlesource.com/1145893
Commit-Queue: Deepti Gandluri <gdeepti@chromium.org>
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Reviewed-by: Ben Titzer <titzer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54796}
2018-07-30 22:02:49 +00:00
Frank Tang
9ba2a0a281 [Intl] Update the toStringTag for Intl.{List,RelativeTime}Format
Bug: v8:7993,v8:7994
Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
Change-Id: I058a2b8181b933dce9f71dab2b03304a424ae0ea
Reviewed-on: https://chromium-review.googlesource.com/1154237
Commit-Queue: Frank Tang <ftang@chromium.org>
Reviewed-by: Daniel Ehrenberg <littledan@chromium.org>
Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54795}
2018-07-30 21:55:35 +00:00
Frank Tang
c9525de572 [Intl] move getNumberOption + defaultNumberOption to C++
Bug: v8:7979
Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
Change-Id: Ic30da6f85b49fd34ee58faf253d9e976a460153c
Reviewed-on: https://chromium-review.googlesource.com/1150873
Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org>
Commit-Queue: Frank Tang <ftang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54794}
2018-07-30 21:11:16 +00:00
Frank Tang
fbbf85b6d1 [Intl] Update NumberFormat setting changes RelativeTimeFormat
Reflect spec change in https://github.com/tc39/proposal-intl-relative-time/pull/81

Bug: v8:7992
Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
Change-Id: Ic2153f8355b8380d2986b34d46eb6bb6771d4b59
Reviewed-on: https://chromium-review.googlesource.com/1154236
Reviewed-by: Daniel Ehrenberg <littledan@chromium.org>
Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org>
Commit-Queue: Frank Tang <ftang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54793}
2018-07-30 21:06:58 +00:00
Vasili Skurydzin
2a624852d6 s390: Corrections to brxh / brxhg cctests in test-assembler-s390.cc
Change-Id: I991686d6890909510d2a3e7101230995ff521063
Reviewed-on: https://chromium-review.googlesource.com/1152081
Reviewed-by: Junliang Yan <jyan@ca.ibm.com>
Commit-Queue: Junliang Yan <jyan@ca.ibm.com>
Cr-Commit-Position: refs/heads/master@{#54792}
2018-07-30 20:40:21 +00:00
Michael Lippautz
714c0fd166 [heap-stats] Fix trace file reader for raw log files
Tbr: cbruni@chromium.org
No-try: true
Change-Id: Ica8c64e0956d4ca362646814e675104f94e77fac
Reviewed-on: https://chromium-review.googlesource.com/1155585
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54791}
2018-07-30 19:56:39 +00:00
Rodrigo Bruno
0640fd58dd [heap] Fix ThinString promotion counters.
From the promotion code point of view, a ThinString being forwarded to
an ExternalString is exactly the same as an actual ExternalString being
forwarded to its promoted copy. These changes provide a way to disambiguate
both scenarios since they are different for external memory accounting.

Bug: chromium:867902
Change-Id: I6fd56ee5e0f8900318466108273ab26e936eb439
Reviewed-on: https://chromium-review.googlesource.com/1152975
Commit-Queue: Rodrigo Bruno <rfbpb@google.com>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54790}
2018-07-30 19:08:57 +00:00
Michael Starzinger
c47e612806 [wasm] Avoid race with native module protection scope.
R=ahaas@chromium.org
TEST=cctest/test-wasm-shared-engine

Change-Id: I1f1b643089206805bc88e8898db6bf94093291b5
Reviewed-on: https://chromium-review.googlesource.com/1154916
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54789}
2018-07-30 14:58:21 +00:00
Michael Lippautz
33e9321907 [heap,iwyu] More cleanup
The following are ready for iwyu:
- src/heap/mark-compact.h
- src/heap/objects-visiting.h

Bug: v8:7490
Change-Id: I4cb9b1146586adcef8c0e0cf187ca363fe6e9a8d
Reviewed-on: https://chromium-review.googlesource.com/1154970
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54788}
2018-07-30 14:53:01 +00:00
Peter Marshall
20ce87beef [cleanup] Fix more header includes to allow individual compilation
Fixes:
  src/parsing/parse-info.h
  src/parsing/preparsed-scope-data.h
  src/profiler/heap-profiler.h
  src/profiler/heap-snapshot-generator.h
  src/profiler/heap-snapshot-generator-inl.h'
  src/property.h
  src/prototype.h
  src/prototype-inl.h

Bug: v8:7754,v8:7490,v8:7965
Change-Id: Iba14292cdfbbaf29d5b989c16d579a1ee0edcc25
Reviewed-on: https://chromium-review.googlesource.com/1154967
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Reviewed-by: Georg Neis <neis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54787}
2018-07-30 14:36:41 +00:00
jgruber
d854d3512e [builtins] Clear RelocInfo for off-heap trampolines
For technical reasons, we used to serialize off-heap trampolines with a
RelocInfo containing a single OFF_HEAP_TARGET entry. This RelocInfo was
never needed at runtime. It also ended up being somewhat misleading
because printing an embedded code object would show the OFF_HEAP_TARGET
entry (belonging to the trampoline) at the first 'real' instruction.

With this CL, we explicitly serialize an empty byte array as the reloc
info for each off-heap trampoline, i.e. the snapshot will never contain
such off-heap target reloc infos.

Bug: v8:6666, v8:7969
Change-Id: If6fa85a438d093ed5dcea07ce0de1db49a224d28
Reviewed-on: https://chromium-review.googlesource.com/1146643
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54786}
2018-07-30 13:25:51 +00:00
Michael Lippautz
268117f84c [heap,iwyu] Clean up scavenger and related headers
Bug: v8:7490
Change-Id: Id6e50a201732b4ca1fd1f69f8c43298e216ce95b
Reviewed-on: https://chromium-review.googlesource.com/1154788
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54785}
2018-07-30 13:07:52 +00:00
Marja Hölttä
72ab46bd6f [in-place weak refs] Add test for WeakArrayList::RemoveOne.
BUG=v8:7308

Change-Id: Ibf87a807202d8f1e0e7c095bf6b3790b0f0954bf
Reviewed-on: https://chromium-review.googlesource.com/1154907
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Marja Hölttä <marja@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54784}
2018-07-30 12:36:01 +00:00
Florian Sattler
b45fdb342a [scanner] Adding AdvanceUntil to Utf16CharacterStream
AdvanceUntil allows the Utf16CharacterStream to advance until a charater is found
that passes the check.

Bug: v8:7926
Change-Id: Iae39fb24194aa0ee2f544a55a7847956aa324b64
Reviewed-on: https://chromium-review.googlesource.com/1151303
Commit-Queue: Florian Sattler <sattlerf@google.com>
Reviewed-by: Marja Hölttä <marja@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54783}
2018-07-30 12:13:31 +00:00
Jaroslav Sevcik
b91a3d9eba Introduce type checkers based on instance type
This CL introduces InstanceTypeChecker namespace with type checkers for
types used by the optimizing compiler. The type checkers are global
functions. Examples:

bool InstanceTypeChecker::IsJSFunction(InstanceType);
bool InstanceTypeChecker::IsAllocationSite(InstanceType);

The CL also uses these type checkers in the HeapObject::IsXXXX()
functions to ensure consistency.

Bug: v8:7790
Change-Id: I7eb9e79ca28da02fd489201f532e566d0d13243a
Reviewed-on: https://chromium-review.googlesource.com/1154529
Reviewed-by: Georg Neis <neis@chromium.org>
Reviewed-by: Michael Stanton <mvstanton@chromium.org>
Commit-Queue: Jaroslav Sevcik <jarin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54782}
2018-07-30 12:12:21 +00:00
Michael Lippautz
80e85caa31 [iwyu] Cleanup more heap/ files
Bug: v8:7490
Change-Id: I6bed10a6389d83b1941ba894f06b2d9540e84139
Reviewed-on: https://chromium-review.googlesource.com/1152733
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54781}
2018-07-30 12:02:01 +00:00
Peter Marshall
a61c16b012 [cleanup] Fix more header includes to allow individual compilation
Fixes:
  src/map-updater.h
  src/objects/property-descriptor-object.h
  src/objects/prototype-info-inl.h
  src/objects/regexp-match-info.h
  src/objects/shared-function-info-inl.h

Bug: v8:7754,v8:7490,v8:7965

Change-Id: I7ae9dc86491c8e147d628f5fd8362534e861b15e
Reviewed-on: https://chromium-review.googlesource.com/1154221
Reviewed-by: Yang Guo <yangguo@chromium.org>
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54780}
2018-07-30 09:34:27 +00:00
Peter Marshall
612adf6563 [cleanup] Fix uses of things declared in -inl headers by -h headers
Bug: v8:7754,v8:7490,v8:7965
Change-Id: I574dbade6dc21204461be4d83b138f7341016305
Reviewed-on: https://chromium-review.googlesource.com/1152819
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54779}
2018-07-30 08:52:47 +00:00
Marja Hölttä
0ad5dda14c Revert "[in-place weak refs] Use WeakArrayList in wasm"
This reverts commit 13401d2beb.

Reason for revert: gc stress breakage

Original change's description:
> [in-place weak refs] Use WeakArrayList in wasm
> 
> Now we can remove FixedArrayOfWeakCells (this was the last user).
> 
> BUG=v8:7308
> 
> Change-Id: I7b74f7833288b20d8f4d098a4afce640ea6db823
> Reviewed-on: https://chromium-review.googlesource.com/1150170
> Commit-Queue: Marja Hölttä <marja@chromium.org>
> Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
> Reviewed-by: Andreas Haas <ahaas@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#54776}

TBR=marja@chromium.org,mlippautz@chromium.org,ahaas@chromium.org

Change-Id: I1bc1ad7e27813aeaaf191efdf74b865d676475f5
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:7308
Reviewed-on: https://chromium-review.googlesource.com/1154787
Reviewed-by: Marja Hölttä <marja@chromium.org>
Commit-Queue: Marja Hölttä <marja@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54778}
2018-07-30 08:02:38 +00:00
jgruber
1bef7d219f [builtins,x64] More information about root-relative accesses
When disassembling code (in particular embedded builtins), try to
print better information about root-relative accesses. For example:

 REX.W movq rdx,[r13+0x548]
 REX.W movq rax,[r13+0x10a8]

turns into

 REX.W movq rdx,[r13+0x548] (root (0x1ff420d0ccd9 <FixedArray[1672]>))
 REX.W movq rax,[r13+0x10a8] (external reference (check_object_type))

This is a band-aid solution until we come up with something better. It
does not understand multi-instruction sequences (such as loads from
the builtins constants table), assumes every kRootRegister-relative
access is actually root-relative (i.e. the register is not initialized
to some other value), and is limited to a particular instruction
pattern.

Bug: v8:6666,v8:7969
Change-Id: I35af92e8233c9bb0f2ad6ba0e86bd0ab69177205
Reviewed-on: https://chromium-review.googlesource.com/1146806
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54777}
2018-07-30 07:36:47 +00:00
Marja Hölttä
13401d2beb [in-place weak refs] Use WeakArrayList in wasm
Now we can remove FixedArrayOfWeakCells (this was the last user).

BUG=v8:7308

Change-Id: I7b74f7833288b20d8f4d098a4afce640ea6db823
Reviewed-on: https://chromium-review.googlesource.com/1150170
Commit-Queue: Marja Hölttä <marja@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54776}
2018-07-30 07:29:27 +00:00
v8-ci-autoroll-builder
9b84d9b0ee Update V8 DEPS.
Rolling v8/build: b222950..b668f37

Rolling v8/tools/clang: f30572c..e26243c

TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org

Change-Id: I782a848d130ee7bc6f8ecd4553dd21dcbedeafd6
Reviewed-on: https://chromium-review.googlesource.com/1154628
Reviewed-by: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#54775}
2018-07-30 03:40:47 +00:00
Jungshik Shin
65d0b783e3 Reland "[Intl] Move Number.toLocaleString from js to c++"
This reverts commit c83fae0663.

Reason for revert: the CL that required the revert of this CL was relanded.

https://chromium-review.googlesource.com/c/v8/v8/+/1154247

Original change's description:
> Revert "[Intl] Move Number.toLocaleString from js to c++"
>
> This reverts commit a895f01ab2.
>
> Reason for revert: Needed for other revert:
> https://chromium-review.googlesource.com/c/v8/v8/+/1152767
>
> Original change's description:
> > [Intl] Move Number.toLocaleString from js to c++
> >
> >
> > Bug: v8:7960
> > Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
> > Change-Id: I21a524b620e210cce625a1a00e68c0b687187087
> > Reviewed-on: https://chromium-review.googlesource.com/1144659
> > Commit-Queue: Frank Tang <ftang@chromium.org>
> > Reviewed-by: Jungshik Shin <jshin@chromium.org>
> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#54741}
>
> TBR=jshin@chromium.org,gsathya@chromium.org,bstell.chromium.org@gmail.com,ftang@chromium.org
>
> Change-Id: I060fa2834dde5e1b4cc71923cc066d97bce2a33b
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: v8:7960
> Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
> Reviewed-on: https://chromium-review.googlesource.com/1152787
> Reviewed-by: Michael Achenbach <machenbach@chromium.org>
> Commit-Queue: Michael Achenbach <machenbach@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#54746}

TBR=machenbach@chromium.org,jshin@chromium.org,gsathya@chromium.org,bstell.chromium.org@gmail.com,ftang@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: v8:7960
Change-Id: I7a7a67db77b9b5a181f1751a03186eb7e8b271a0
Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/1154248
Commit-Queue: Jungshik Shin <jshin@chromium.org>
Reviewed-by: Jungshik Shin <jshin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54774}
2018-07-29 05:57:54 +00:00
v8-ci-autoroll-builder
ef3e20879e Update V8 DEPS.
Rolling v8/build: 79a29b1..b222950

Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/1e61f60..e05f902

TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org

Change-Id: I62a3628dd0b3ce06b48813111a194c00a55705dd
Reviewed-on: https://chromium-review.googlesource.com/1154433
Commit-Queue: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Reviewed-by: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#54773}
2018-07-29 03:51:44 +00:00
Frank Tang
22c7dd2eb5 Reland "[Intl] move localeCompare to C++"
This is a reland of 51ad234ffe

With a manual layout rebaseline of js/fast/string-prototype-properties
[1], this CL can be relanded without breaking the layout test.

[1] https://chromium-review.googlesource.com/c/chromium/src/+/1154289
also marks the test for skipping until this fix is rolled to Chromium.


Original change's description:
> [Intl] move localeCompare to C++
>
>
> Bug: v8:7958
> Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
> Change-Id: I84a27dda5205c8581a7ffe37213d685cc49974fa
> Reviewed-on: https://chromium-review.googlesource.com/1144644
> Commit-Queue: Frank Tang <ftang@chromium.org>
> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#54740}

TBR=ftang@chromium.org, gsathya@chromium.org

Bug: v8:7958
Test: layout test: js/fast/string-prototype-properties
Change-Id: Ic546349fcbc935917ded018801f7d942e50565d5
Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/1154247
Commit-Queue: Jungshik Shin <jshin@chromium.org>
Reviewed-by: Jungshik Shin <jshin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54772}
2018-07-28 20:03:14 +00:00
Sergiy Byelozyorov
e6bebb3a28 [tools] Whitespace CL
TBR=sergiyb@chromium.org

No-Try: true
Bug: chromium:838266
Change-Id: I898579f780e40ee0fb5fd1948a92a6c500242dfd
Reviewed-on: https://chromium-review.googlesource.com/1154219
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54771}
2018-07-28 12:38:54 +00:00
Sergiy Byelozyorov
43316a0a6c [tools] Whitespace CL
TBR=sergiyb@chromium.org

No-Try: true
Bug: chromium:838266
Change-Id: I0c288eeaf28569d671220ab320aaec677825bb37
Reviewed-on: https://chromium-review.googlesource.com/1154218
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54770}
2018-07-28 12:17:34 +00:00
Sergiy Byelozyorov
382c18627b [tools] Whitespace CL
TBR=sergiyb@chromium.org

No-Try: true
Bug: chromium:842224
Change-Id: Icd00b7b4b86e1cc2de0234c69632eb5e6a63b11a
Reviewed-on: https://chromium-review.googlesource.com/1154216
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54769}
2018-07-28 11:27:24 +00:00
Matheus Marchini
09bca095e3 [postmortem] add ScopeInfo and Context types
The metadata introduced in this patch will be useful for postmortem
tools to inspect Contexts and ScopeInfos (see
https://github.com/nodejs/llnode/issues/211).

R=bmeurer@google.com, yangguo@google.com

Change-Id: I927fcab4014d128bd782046c1ecb9ee045723e95
Reviewed-on: https://chromium-review.googlesource.com/1153858
Reviewed-by: Yang Guo <yangguo@chromium.org>
Commit-Queue: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54768}
2018-07-28 09:49:14 +00:00
Sergiy Byelozyorov
ae76bb4c35 [tools] Whitespace CL
TBR=sergiyb@chromium.org

No-Try: true
Bug: chromium:842224
Change-Id: Ic7c6093331f1bd35fffbfc98cd3f1d0ed3571eb4
Reviewed-on: https://chromium-review.googlesource.com/1154212
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54767}
2018-07-28 05:06:44 +00:00
Sergiy Byelozyorov
28232f63d2 [tools] Whitespace CL
TBR=sergiyb@chromium.org

No-Try: true
Bug: chromium:842224
Change-Id: I63c96969382fff550a64f80d35a7576d84092a0a
Reviewed-on: https://chromium-review.googlesource.com/1154211
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54766}
2018-07-28 04:52:24 +00:00
v8-ci-autoroll-builder
5f06851300 Update V8 DEPS.
Rolling v8/build: adaab11..79a29b1

Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/933672b..1e61f60

Rolling v8/third_party/depot_tools: 079812c..d795ab8

Rolling v8/third_party/fuchsia-sdk: 12961e5..e4f38ff

TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org

Change-Id: I483a9915a057d44369212720b0a2d69ebe1b0ca3
Reviewed-on: https://chromium-review.googlesource.com/1154199
Commit-Queue: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Reviewed-by: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#54765}
2018-07-28 03:53:34 +00:00
Sergiy Byelozyorov
d2d3cc588a [tools] Whitespace CL
TBR=sergiyb@chromium.org

No-Try: true
Bug: chromium:838864
Change-Id: Ie0e6e1742344bfd69ec109f55fcccbaca0d66d66
Reviewed-on: https://chromium-review.googlesource.com/1154209
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54764}
2018-07-28 02:56:40 +00:00
Deepti Gandluri
8512973bfe Fix inconsistent use of Type/Representation
Functions/variables for some atomic memory operators use type,
representation interchangeably. Fix to make it consistent.

Bug: v8:7754, v8:6532
Change-Id: I16ae35b72728739aee4bc67287317c2fd4a9088a
Reviewed-on: https://chromium-review.googlesource.com/1152462
Reviewed-by: Bill Budge <bbudge@chromium.org>
Commit-Queue: Deepti Gandluri <gdeepti@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54763}
2018-07-27 22:58:00 +00:00
Frank Tang
6b5cfc1b6a [Intl] move defineWEProperty to C++
Bug: v8:7979
Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
Change-Id: Icf646f5b9888239acb100a4238bbccc288e93153
Reviewed-on: https://chromium-review.googlesource.com/1150918
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Commit-Queue: Frank Tang <ftang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54762}
2018-07-27 21:44:08 +00:00
Jakob Kummerow
a24d5ad787 [csa] Fix is-neutered check in EmitBigTypedArrayElementStore
The ToBigInt conversion can have side effects, so the check for
neutered-ness must happen afterwards.

Bug: chromium:867776
Change-Id: I6e550c77a284da4cf132c21a6c3b1ed8f34eedc9
Reviewed-on: https://chromium-review.googlesource.com/1153553
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Dan Elphick <delphick@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54761}
2018-07-27 21:40:03 +00:00
Deepti Gandluri
43098ecbe8 Revert "[CloneObjectIC] overwrite monomorphic/polymorphic feedback if deprecated"
This reverts commit 670fa86fd1.

Reason for revert: Causes gc-stress bots to fail - 
https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8939819990688690880/+/steps/Check_-_d8/0/logs/object-spread-ic/0
https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8939819696982258192/+/steps/Check_-_d8/0/logs/object-spread-ic/0

Original change's description:
> [CloneObjectIC] overwrite monomorphic/polymorphic feedback if deprecated
> 
> An object with a deprecated Map which has already been cached in
> CloneObjectIC feedback is still a valid Map for fast cloning --- but
> to be consistent with other ICs, deprecated maps are ignored, and are
> expected to be transitioned away from.
> 
> If the source object has a deprecated map, the instance is migrated.
> 
> BUG=v8:7611, chromium:867958
> R=​jkummerow@chromium.org, mvstanton@chromium.org
> 
> Change-Id: I9771b00400fb4dda45a62e874a31d9b50630d847
> Reviewed-on: https://chromium-review.googlesource.com/1152414
> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
> Commit-Queue: Caitlin Potter <caitp@igalia.com>
> Cr-Commit-Position: refs/heads/master@{#54758}

TBR=jkummerow@chromium.org,mvstanton@chromium.org,caitp@igalia.com

Change-Id: Id17652ad6f3f09adb43848069549ad146d48b2d7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: v8:7611, chromium:867958
Reviewed-on: https://chromium-review.googlesource.com/1153747
Reviewed-by: Deepti Gandluri <gdeepti@chromium.org>
Commit-Queue: Deepti Gandluri <gdeepti@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54760}
2018-07-27 21:39:00 +00:00
Sergiy Byelozyorov
6cd560b265 Revert "[tools] Add an option to checkout v8-perf repo before running perf tests"
This reverts commit ba02337157.

Reason for revert: decided to use CIPD package instead, see reasoning here: http://shortn/_MgZHcjC60Q.

Original change's description:
> [tools] Add an option to checkout v8-perf repo before running perf tests
>
> R=​machenbach@chromium.org
>
> No-Try: true
> Bug: chromium:838864
> Change-Id: I02e38778ec4c33a20f4b2e93fb22615baa316883
> Reviewed-on: https://chromium-review.googlesource.com/1151295
> Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
> Reviewed-by: Michael Achenbach <machenbach@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#54723}

TBR=machenbach@chromium.org,sergiyb@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

No-Try: true
No-Tree-Checks: true
Bug: chromium:838864
Change-Id: I65a5b075c6fede61b59528ba92f6803011f187c7
Reviewed-on: https://chromium-review.googlesource.com/1153687
Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54759}
2018-07-27 21:28:58 +00:00
Caitlin Potter
670fa86fd1 [CloneObjectIC] overwrite monomorphic/polymorphic feedback if deprecated
An object with a deprecated Map which has already been cached in
CloneObjectIC feedback is still a valid Map for fast cloning --- but
to be consistent with other ICs, deprecated maps are ignored, and are
expected to be transitioned away from.

If the source object has a deprecated map, the instance is migrated.

BUG=v8:7611, chromium:867958
R=jkummerow@chromium.org, mvstanton@chromium.org

Change-Id: I9771b00400fb4dda45a62e874a31d9b50630d847
Reviewed-on: https://chromium-review.googlesource.com/1152414
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Commit-Queue: Caitlin Potter <caitp@igalia.com>
Cr-Commit-Position: refs/heads/master@{#54758}
2018-07-27 19:37:39 +00:00
Brian Stell
4792240096 [Intl] Add tests for duplicate subtag detection.
Also removed an obsolete test that is covered by test262/intl402

Bug: v8:7954, v8:5751

Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
Change-Id: I41113653cd27c165e6f0a52e4b63bb9ddc553cba
Reviewed-on: https://chromium-review.googlesource.com/1150453
Commit-Queue: Jungshik Shin <jshin@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Jungshik Shin <jshin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54757}
2018-07-27 18:10:16 +00:00
Brian Stell
7f614962fc [Intl] Use C++ versions of CanonicalizeLanguageTag and isStructuallyValidLanguageTag.
Remove the JS versions.

Bug: v8:7954
Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
Change-Id: I1dc90932e570c4acc7ca32a807b452148a6b2d88
Reviewed-on: https://chromium-review.googlesource.com/1144524
Commit-Queue: Brian Stell <bstell@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54756}
2018-07-27 15:28:23 +00:00
Tobias Tebbi
ed8d35ce35 [torque] infer type of local const bindings
We currently only expose this to desugarings and not in the grammar
to keep 'const' and 'let' bindings consistent.
A side-effect of this change is that it is now possible to use a
shadowed name in the initializer of a const binding.

Bug: v8:7793
Change-Id: Ic2ca6af0735acf0e748d394f9039fe6612bd4a06
Reviewed-on: https://chromium-review.googlesource.com/1150534
Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
Reviewed-by: Daniel Clifford <danno@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54755}
2018-07-27 14:43:40 +00:00
Ben L. Titzer
352e408b0e [wasm] Support 4GiB memories in Liftoff
Add codegen support for up to 4GiB memories in Liftoff code.

This CL also adds three new mjsunit tests that stress large WASM
memories (1, 2, and 4 GiB) and checks that accesses near these
boundaries properly generate traps.

Note there is still some trickiness around the setting of:
  1.) the flag --wasm-max-mem-pages
  2.) wasm-limits.h kSpecMaxWasmMemoryPages = 65536
  3.) wasm-limits.h kV8MaxWasmMemoryPages = 32767

In particular, the allocation of memories is still limited to
3.) and the runtime flag can only lower this limit.

The above means that the tests for 2GiB and 4GiB memories will silently
OOM by design until 3.) is changed (though they currently pass with
manual testing). I argue it is better to include these tests up front,
since they will immediately trigger if their memory allocation succeeds.

Therefore the plan is to lift the restriction on 3.) after removing
all other other internal V8 limitations including array buffers and views.

R=clemensh@chromium.org
CC=mstarzinger@chromium.org
BUG=v8:7881

Change-Id: I3205ac2daf5c9a84364c670a2c3ef2258e5649f6
Reviewed-on: https://chromium-review.googlesource.com/1151309
Commit-Queue: Ben Titzer <titzer@chromium.org>
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54754}
2018-07-27 14:20:00 +00:00