- 28 Jan, 2019 4 commits
-
-
Mythri authored
It is better to infer the language mode from the context and the closure instead of getting it from the feedback vector. This will allow us to use some of these builtins even when feedback vectors are not allocated. Language mode is only needed to decide if we need to throw an exception when a store fails. This is on a slow path and hence deriving the language mode is not on critical path. Bug: v8:8580 Change-Id: Id0d8e78d35046f015b5cdc15d5fc3f8a17dd8757 Reviewed-on: https://chromium-review.googlesource.com/c/1421924 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#59113}
-
Camillo Bruni authored
Change-Id: Ia082e676e2cabab07c99b424f80b91e9459f1d3d Reviewed-on: https://chromium-review.googlesource.com/c/1430070Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#59112}
-
Georg Neis authored
No difference in behavior because the other branch of the condition already allowed positive 0. Change-Id: Ia31d3366f882b5eaf004f17d26e4213f8de57794 Reviewed-on: https://chromium-review.googlesource.com/c/1435936Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#59111}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/4c3ae01..a041d21 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: Ie68dccacbecc99a6de4fdb50b7fd754d84ac60b8 Reviewed-on: https://chromium-review.googlesource.com/c/1438558Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#59110}
-
- 27 Jan, 2019 1 commit
-
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/75934e6..4c3ae01 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/eb2767b..bdb1123 Rolling v8/third_party/googletest/src: https://chromium.googlesource.com/external/github.com/google/googletest/+log/9518a57..5ec7f0c TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I390a19b67d4cafbad6e0cca72b3a28728d0cd3f1 Reviewed-on: https://chromium-review.googlesource.com/c/1438337Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#59109}
-
- 26 Jan, 2019 5 commits
-
-
v8-ci-autoroll-builder authored
Rolling v8/test/test262/data: https://chromium.googlesource.com/external/github.com/tc39/test262/+log/116c95d..1068137 TBR=adamk@chromium.org,gsathya@chromium.org Change-Id: I1572b3b1f27b09fba4169903c3df46c3f0d178d3 Reviewed-on: https://chromium-review.googlesource.com/c/1437819Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#59108}
-
Michael Achenbach authored
The test runner is stuck on start-up otherwise. TBR=sergiyb@chromium.org NOTRY=true Bug: v8:8552 Change-Id: Ief2632ce168f83ae33bc9ae1f7edee152505cae9 Reviewed-on: https://chromium-review.googlesource.com/c/1437276Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#59107}
-
Ross McIlroy authored
BUG=v8:8395 Change-Id: Ie900be7d146d3a7ded13565b94b192807bc7eb28 Reviewed-on: https://chromium-review.googlesource.com/c/1417930 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#59106}
-
peterwmwong authored
This is part of an effort to improve the performance of TA#subarray. Bug: v8:7161 Change-Id: Iffd469ca6528710c28cc454604a725ca9748359d Reviewed-on: https://chromium-review.googlesource.com/c/1435768 Commit-Queue: Peter Wong <peter.wm.wong@gmail.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#59105}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/018911f..75934e6 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/b000c21..514fe3e Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/80b9cf7..eb2767b Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/3a16568..361dfd1 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: Iea12f7b105b94293ca32ac4933b7338d07c0864e Reviewed-on: https://chromium-review.googlesource.com/c/1437816Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#59104}
-
- 25 Jan, 2019 22 commits
-
-
Jakob Kummerow authored
This roll includes: 8515c2a1c UBSan fix 9977c471b (does not touch files imported into V8) 9cba74155 (does not touch files imported into V8) Bug: v8:3770 Change-Id: If5ae5e7c6a7a81a246c8376545c4437cacaf1dc3 Reviewed-on: https://chromium-review.googlesource.com/c/1436230Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#59103}
-
Jakob Kummerow authored
An enum-typed value should never have a value outside of that enum's range. This patch enforces that in Debug mode, while in Release mode keeping the previous behavior of returning "UnknownOpcode" as the mnemonic for illegal IrOpcode values to ease debugging. Bug: v8:3770 Change-Id: I83a5a356f1fb7a266921940a4495f1d39a1823cd Reviewed-on: https://chromium-review.googlesource.com/c/1436221Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#59102}
-
Jakob Kummerow authored
Not even when copying 0 bytes. Same for memmove and memcmp. Bug: v8:3770 Change-Id: I3ed45a4572467ec7a9fc697ac28c004aa9b8b274 Reviewed-on: https://chromium-review.googlesource.com/c/1436217Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#59101}
-
Jakob Kummerow authored
The Memory<T>(address) helper requires the address to be aligned. Since values embedded into ia32/x64 code can in general be unaligned, we must use ReadUnalignedValue/WriteUnalignedValue to manipulate them. Bug: v8:3770 Change-Id: I12c3fc6aa09062dcc9188b6782ed4a35e1d684bd Reviewed-on: https://chromium-review.googlesource.com/c/1436223Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#59100}
-
Andreas Haas authored
Anyref parameters can exist across GC runs. Therefore the GC has to know where anyref parameters are on the stack so that it can mark them in its marking phase, and update them in the compaction phase. Already in a previous CL we grouped all anyref parameters so that they can be found more easily in a stack frame, see https://crrev.com/c/1371827. In this CL we implement the stack scanning itself. Note that anyref parameters are not scanned while iterating over the caller's frame (to which they actually belong), but while iterating over the callee's frame. The reason is that with tail-calls, only the callee knows how many tagged stack parameters (aka anyref parameters) there are. R=mstarzinger@chromium.org also-by=mstarzinger@chromium.org Bug: v8:7581 Change-Id: I7a41ce11d06c0d420146fdb0bb8d5606f28824d7 Reviewed-on: https://chromium-review.googlesource.com/c/1424955 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#59099}
-
Tobias Tebbi authored
Bug: v8:7793 Change-Id: If79b3d760406e44530da5656459ece6db3eff7ab Reviewed-on: https://chromium-review.googlesource.com/c/1435935 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#59098}
-
Simon Zünd authored
This CL changes Array#sort to use the generic path for fast elements kinds if --force-slow-path is present. Note that the IsFastJSArray macro includes this check but not the Cast itself. R=jgruber@chromium.org Bug: v8:8215 Change-Id: I1135ab9db15effd86020f49f4ae23ba1e1da07f8 Reviewed-on: https://chromium-review.googlesource.com/c/1435940Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#59097}
-
Michael Starzinger authored
This fixes a corner case with the matching for a {UBFX} instruction. According to the ISA reference "UBFX Rd, Rn, #lsb, #width" is only valid for "#width" in the [1;32-#lsb] range. Specifically a "#width" of 0 is invalid but was not checked against by the instruction selector. R=ahaas@chromium.org TEST=mjsunit/regress/wasm/regress-924905 BUG=chromium:924905 Change-Id: I470671282b215be62dfd147a619a0d317f7cc746 Reviewed-on: https://chromium-review.googlesource.com/c/1435939Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#59096}
-
Toon Verwaest authored
Change-Id: I83dc3bed644361be1b94063daefd890b10ba50cd Reviewed-on: https://chromium-review.googlesource.com/c/1433772 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#59095}
-
Mythri authored
Inferring the language mode involves iterating the stack to find the closure. This is an expensive operation and should be done only when required. This cl changes the implementation to infer the language mode only when we can't defer it any further. Currently, we infer the language mode when throwing an exception or when passing this information to PropertyCallbackArguments. This cl also changes the language mode parameter to SetProperty related methods to Maybe<ShouldThrow>. We only use the language mode to decide if we need to throw and using ShouldThrow instead of language mode simplifies the code by avoiding conversions from Maybe<ShouldThrow> to Maybe<LanguageMode> and vice-versa. Bug: v8:8580, chromium:923820, chromium:925289 Change-Id: I72497497f62fe0d86fcecd57b06b3183b7531f7b Reviewed-on: https://chromium-review.googlesource.com/c/1425912 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#59094}
-
Clemens Hammacher authored
The compilation state should have no notion of Isolates. Move code logging and management of the corresponding foreground task to the WasmEngine. R=mstarzinger@chromium.org Bug: v8:8689 Change-Id: Ib690317139d0754731b9f0e71d06e7a722082eed Reviewed-on: https://chromium-review.googlesource.com/c/1434035 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#59093}
-
Clemens Hammacher authored
The WasmCodeManager held a list of all Isolates that use the WasmEngine/WasmCodeManager (those two are 1:1). Since we want to move all isolate-specific tasks (like code logging and compilation callbacks) to the WasmEngine, this CL moves this management from the WasmCodeManager to the WasmEngine. We now have a bidirectional mapping from NativeModules to the Isolates that use them, and from an Isolate to all the NativeModules it uses (n:n). The IsolateData struct will be extended in follow-up CLs to hold things like the ForegroundTaskRunner. The Isolate* in the NativeModule / CompilationState will eventually be removed. R=mstarzinger@chromium.org Bug: v8:8689 Change-Id: Ic2c003c3949f73ce3264dd9dac96884a5c0b9896 Reviewed-on: https://chromium-review.googlesource.com/c/1433793 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#59092}
-
Georg Neis authored
Rearrange things such that when creating the environment we have access to the subject of compilation (either a full JSFunction or just a FunctionBlueprint). Bug: v8:7790 Change-Id: I03cc4701eb8bc1ed44c8381f4ab82da5f9b840b8 Reviewed-on: https://chromium-review.googlesource.com/c/1434374 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#59091}
-
Tobias Tebbi authored
This is a reland of c5154eea Now, the CL no longer enables ASAN for Torque, since this seems to be another Clang issue that's not fixed yet. Original change's description: > [build][torque] remove workarounds for clang bug > > Now that https://bugs.llvm.org/show_bug.cgi?id=40118 has been fixed and > rolled into V8, we can remove the workarounds for this Clang bug. > > This also effectively reverts > https://chromium-review.googlesource.com/c/v8/v8/+/1280222 > > Bug: chromium:893437 > Change-Id: Ia0d6d8ebdafafbc380b1b7a7809ef16effe50d71 > Reviewed-on: https://chromium-review.googlesource.com/c/1425519 > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58987} Bug: chromium:893437 TBR: jarin@chromium.org Change-Id: Ib9ac101702d12e5bf28891cbe6b5b16bd9d5e402 Reviewed-on: https://chromium-review.googlesource.com/c/1433787 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#59090}
-
Mythri authored
SetProperty now infers the language mode from the closure and the context So we no longer have to pass around the language mode. Cleanup by removing the parameter where it is no longer needed. Bug: v8:8580 Change-Id: I89452b5a762eb48a911f158d22c7bfa9e3bb1be4 Reviewed-on: https://chromium-review.googlesource.com/c/1421840 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#59089}
-
Leszek Swirski authored
Declare Variables with a name and position, rather than by passing through a VariableProxy. This allows us to not create dummy proxies for things like function declarations, and allows us to consider those declarations unused. As a side-effect, we also have to check if a variable is unused in the bytecode generator (as it will no longer be allocated), and we end up skip generating code/SFIs for dead variables/functions. Change-Id: I4c2c872473f23e124f9456b4b92f87159658f8e0 Reviewed-on: https://chromium-review.googlesource.com/c/1414916 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#59088}
-
Michael Lippautz authored
V8 has no path in calling this API and thus there is no way for the embedder to get notified about this event. Bug: chromium:843903 Change-Id: I938675aed9191a292f21bae0fed0e3ea8acaf936 Reviewed-on: https://chromium-review.googlesource.com/c/1434377 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#59087}
-
Daniel Clifford authored
Change-Id: Id9a893e9ca87053bb8e010730a9c3e7061bca6a5 Reviewed-on: https://chromium-review.googlesource.com/c/1435934Reviewed-by: Peter Wong <peter.wm.wong@gmail.com> Commit-Queue: Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#59086}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/59bf3c6..018911f Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/b9dbf6c..b000c21 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/695e7cf..80b9cf7 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: If676c40e58ba12fbbe19bf263b07dda453ef386b Reviewed-on: https://chromium-review.googlesource.com/c/1435739Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#59085}
-
Frank Tang authored
Remove hc from -u- if does not agree with the resolved one. Bug: v8:7482 Change-Id: I635c5357b8fd2b630ed80577a9b6a116e9a0e3f4 Reviewed-on: https://chromium-review.googlesource.com/c/1417170 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#59084}
-
Jakob Kummerow authored
Both PropertyCallbackInfo<T> and WeakCallbackInfo<T> callbacks are using a design that relies on invalid reinterpret_casts and thereby undefined behavior. Since they are exposed via the public API, fixing this is going to be difficult. Bug: v8:3770,v8:8735 Change-Id: I7171c5b38f070b4a43a0de1ebb7d1a1458c1d91f Reviewed-on: https://chromium-review.googlesource.com/c/1436222Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#59083}
-
Frank Tang authored
Bug: v8:7834,v8:8707,v8:8664 Change-Id: Idb2d5aa3fb901a6835eb9a07640759dbaee4a1e8 Reviewed-on: https://chromium-review.googlesource.com/c/1436054Reviewed-by: Mathias Bynens <mathias@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#59082}
-
- 24 Jan, 2019 8 commits
-
-
Frank Tang authored
This is a partial reland of 048a3a3e Original change's description: > [Intl] Cleans up intl-relative-time-format flag > > Cleans up always=true intl-relative-time-format flag > It shipped in m71 in Dec 2018. > > Bug: v8:8704 > Change-Id: I52d86aea9aedf201a216a1df0773a486fbee37b9 > Reviewed-on: https://chromium-review.googlesource.com/c/1417299 > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Commit-Queue: Frank Tang <ftang@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58904} Bug: v8:8704 Change-Id: Iac62a347eea7f85dd3fa4a3bbfb18091b80f9a5e Reviewed-on: https://chromium-review.googlesource.com/c/1429224Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#59081}
-
Michael Achenbach authored
This adds the new runtime flag as a variant and runs it on a subset of builders corresponding to the "extra" testing set. Currently failing tests are skipped in the new variant. After https://crrev.com/c/1433777 this costs only little additional resources. Bug: v8:8678 Change-Id: Ibd0e38872814d11252e55a7c6a58d313aa84ebe3 Reviewed-on: https://chromium-review.googlesource.com/c/1433774 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#59080}
-
Toon Verwaest authored
Bug: v8:4231 Change-Id: I833ef23d32a27a403fe733e17f6ff1aa182c39b1 Reviewed-on: https://chromium-review.googlesource.com/c/1430701Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#59079}
-
Toon Verwaest authored
This allows us to do fewer checks on the common path. Change-Id: I2d1a9239cbf7b637bdbc2a15abaadae225410acf Reviewed-on: https://chromium-review.googlesource.com/c/1430700Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#59078}
-
Junliang Yan authored
Bug: v8:8402 Change-Id: I70ad3d9622d91886b4b5631c715d38db542c6731 Reviewed-on: https://chromium-review.googlesource.com/c/1434394Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#59077}
-
Ulan Degenbaev authored
Bug: chromium:749490 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I4ae6883dd5ed5f313e21af20c29e560c73c33675 Reviewed-on: https://chromium-review.googlesource.com/c/948903 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#59076}
-
Mythri authored
This is a reland of 0896599f with a fix for failing layout test. Original change's description: > Change SetProperty/SetSuperProperty to infer language mode when possible > > In most cases, the language mode can be inferred from the closure and > the context. Computing the language mode instead of passing it around > simplifies the ICs and will make it possible to go towards lazily > allocating feedback vectors. Currently ICs obtain the language mode from > the feedback vectors and with lazy feedback allocation we may not always > have feedback vectors. Since computing language mode is a bit expensive > we want to defer it as far as possible. > > In Array builtins and other builtins like Reflect.Set we need to force a > language mode when setting the properties. To support these cases the > SetProperty methods allow the language mode to be overridden when needed. > > This is a first cl in a series of cls, that will defer the language mode > computation further and remove language mode where it is not needed. > > BUG: v8:8580 > Change-Id: I9c2396e3bcfe77c3c9d6760c46d86954d54744b9 > Reviewed-on: https://chromium-review.googlesource.com/c/1409426 > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Commit-Queue: Mythri Alle <mythria@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58893} TBR: ahaas@chromium.org Change-Id: Id5d81eae91b55638dbc72168f0e5203e684869fb Reviewed-on: https://chromium-review.googlesource.com/c/1421077 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#59075}
-
Ulan Degenbaev authored
This patch reduces the cost of the predicate that computes whether an object contains only data or may contain pointers. This also guards pushing to the copy_list_ with the predicate. Bug: chromium:852420 Change-Id: I55c4e15eb8341708a21f484fb95b2c2cc2b25143 Reviewed-on: https://chromium-review.googlesource.com/c/1430068 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#59074}
-