- 09 Jan, 2019 26 commits
-
-
Yang Guo authored
Change-Id: Ibd14f7b3fe78635675c76ae864112e3a3a7bc701 Reviewed-on: https://chromium-review.googlesource.com/c/1382463 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#58674}
-
Camillo Bruni authored
- Add DataGatheringScope::AddSkippableFunction - Rename preparsed_scope_data_builder to preparse_data_builder Change-Id: Ic882de638bed91a6ca4716f88db859410f1450b8 Reviewed-on: https://chromium-review.googlesource.com/c/1400846Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#58673}
-
Junliang Yan authored
R=joransiu@ca.ibm.com Change-Id: Iba732965ba7efc961295888b1cbf6ea1ef1990b0 Reviewed-on: https://chromium-review.googlesource.com/c/1403234Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58672}
-
Tamer Tas authored
R=sergiyb@chromium.org No-Try: true Change-Id: I94937b6852c8e7e8aece3b67eb1c2a79dbf71c25 Reviewed-on: https://chromium-review.googlesource.com/c/1392193 Commit-Queue: Tamer Tas <tmrts@chromium.org> Reviewed-by: Sergiy Belozorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#58671}
-
Leszek Swirski authored
Emit a single destructuring assignment for destructuring declarations, which can be desugared by the bytecode generator. This allows us to remove destructuring desugaring from the parser (specifically, the pattern rewriter) entirely. The pattern "rewriter" is now only responsible for walking the destructuring pattern to declare variables, mark them assigned, and potentially rewrite scopes for the edge case of parameters with a sloppy eval. Note that since the rewriter is no longer rewriting, we have to flip the VariableProxy copying logic for var re-lookup, so that we now pass the new VariableProxy to the variable declaration and leave the original unresolved (rather than passing the original through and rewriting to a new unresolved VariableProxy). This change does have some effect on breakpoint locations, due to some of the available information changing between the parser and bytecode generator, however the new locations appear to be more consistent between assignments and declarations. Change-Id: I3a58dd0a387d2bfb8e5e9e22dde0acc5f440cb82 Reviewed-on: https://chromium-review.googlesource.com/c/1382462 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#58670}
-
Stephan Herhut authored
When adding the new heuristic to allocate registers that do not take part in hinting first, I managed to break hinting for most cases. This change makes hinting operational again. Bug: chromium:920106 Change-Id: I0f460a66196087266dcb70a7a0e5569124bdd2ff Reviewed-on: https://chromium-review.googlesource.com/c/1402791Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Stephan Herhut <herhut@chromium.org> Cr-Commit-Position: refs/heads/master@{#58669}
-
Toon Verwaest authored
It's anyway only read in case of simple parameters. In that case pattern is guaranteed to be a VariableProxy, from which we can read the name as well. Change-Id: Ie340064453594ab4f84b1d0223506801635c289d Reviewed-on: https://chromium-review.googlesource.com/c/1402782 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#58668}
-
Predrag Rudic authored
Ivica Bogosavljevic is no longer part of MIPS V8 team, and therefore his name is removed from OWNERS. TBR=mstarzinger@chromium.org NOTRY=true No-Presubmit: true Change-Id: I1ea6745b795573a17362dfd869528ddf78b8ab41 Reviewed-on: https://chromium-review.googlesource.com/c/1402775 Commit-Queue: Predrag Rudic <prudic@wavecomp.com> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58667}
-
Georg Neis authored
Bug: v8:7790 Change-Id: Ife2d4d19bc40ec195974c5302677fef4ab442fa2 Reviewed-on: https://chromium-review.googlesource.com/c/1398721 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#58666}
-
tzik authored
This is a leftover of the previous CL. https://chromium-review.googlesource.com/c/v8/v8/+/1402305. noexcept keyword needs to be consistent between the declaration and implementation in C++17. Bug: v8:8616, chromium:752720 Change-Id: I8a21426e550d666bd84c1a6e7bc36d1eec495333 Reviewed-on: https://chromium-review.googlesource.com/c/1402305Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#58665}
-
Michael Starzinger authored
R=clemensh@chromium.org TEST=mjsunit/asm/regress-920076 BUG=chromium:920076 Change-Id: Ieb6d1dd84ab9434ff17ee09444e7d8ce830f898c Reviewed-on: https://chromium-review.googlesource.com/c/1402778Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#58664}
-
Clemens Hammacher authored
This reverts commit 556ef4c3. Reason for revert: Seems to cause hangs in tests. Original change's description: > [wasm] Inline CompileFailed step > > The {CompileFailed} just calls {AsyncCompileFailed}, which also does > not do much. Thus just inline directly call a function instead of > spawning a foreground task. This saves one instance of DeferredHandles. > > R=ahaas@chromium.org > > Bug: v8:7921, v8:8423 > Change-Id: Ia8fb72a3ce2efd1f9a069c1a3b0b670b15fd8bce > Reviewed-on: https://chromium-review.googlesource.com/c/1402714 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58662} TBR=ahaas@chromium.org,clemensh@chromium.org Change-Id: I3430fb304b8df72b93330d104c09b0a144bbd069 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7921, v8:8423 Reviewed-on: https://chromium-review.googlesource.com/c/1402786Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58663}
-
Clemens Hammacher authored
The {CompileFailed} just calls {AsyncCompileFailed}, which also does not do much. Thus just inline directly call a function instead of spawning a foreground task. This saves one instance of DeferredHandles. R=ahaas@chromium.org Bug: v8:7921, v8:8423 Change-Id: Ia8fb72a3ce2efd1f9a069c1a3b0b670b15fd8bce Reviewed-on: https://chromium-review.googlesource.com/c/1402714Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58662}
-
Georg Neis authored
Bug: v8:7790 Change-Id: Iad109ee7112b8c21b4fd89e189e68911b6aa4968 Reviewed-on: https://chromium-review.googlesource.com/c/1397708Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#58661}
-
Toon Verwaest authored
Change-Id: Ib9f51cab17a3ed9e8960857e77fc80a9a08df798 Reviewed-on: https://chromium-review.googlesource.com/c/1400841Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#58660}
-
Jakob Kummerow authored
The incremental migration required several pairs of functionally equivalent macros. This patch consolidates everything onto the respective new version and drops the obsolete versions. Bug: v8:3770 Change-Id: I4fb05ff223e8250c83a13f46840810b0893f410b Reviewed-on: https://chromium-review.googlesource.com/c/1398223Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#58659}
-
Michael Starzinger authored
R=hablich@chromium.org BUG=chromium:845877 Change-Id: Ia5ede7b5aaa4d5937160b1e0733132c47afeb712 Reviewed-on: https://chromium-review.googlesource.com/c/1400407Reviewed-by: Michael Hablich <hablich@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#58658}
-
Toon Verwaest authored
Bug: v8:8659 Change-Id: I7208589dcb5c40dd915a50517f83f3da646202be Reviewed-on: https://chromium-review.googlesource.com/c/1402547Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#58657}
-
Clemens Hammacher authored
For compilation we only need the NativeModule. Thus only create this before compilation, create other runtime objects later. This is a first step towards removing the deferred handles and clustering all foreground work in one chunk after compilation. R=ahaas@chromium.org Bug: v8:7921, v8:8423 Change-Id: If62387d68ddf0f5e067adbaef5fbeca7178958a4 Reviewed-on: https://chromium-review.googlesource.com/c/1402544Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58656}
-
Predrag Rudic authored
Port commit 4ab96a9a Original message: > Remove the use of a jump table in the prologue of the deopt entries > and instead pass the bailout id explicitly in a register when calling > the deopt entry routine from optimized code. This unifies the logic > with the way the Arm64 code works. It saves the following amount of > memory in code stubs: > > - arm: 384KB > - ia32: 480KB > - x64: 240KB > > This could be offset by a slight increase in the size of optimized code > for loading the immediate, however this impact should be minimal and > will scale with the maximum number of bailout ids (e.g., the size of > code will increase by one instruction per bailout id on Arm, therefore > ~98,000 bailouts will be needed before the overhead is greater than > the current fixed table size). > > Change-Id: I838604b48fa04cbd45320c7b9dac0de08fd8eb25 > Reviewed-on: https://chromium-review.googlesource.com/c/1398224 > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58636} Change-Id: I4d070b90ebd4f9d4e82eaa74fe6d41c3a39d93e8 Reviewed-on: https://chromium-review.googlesource.com/c/1400848Reviewed-by: Sreten Kovacevic <skovacevic@wavecomp.com> Commit-Queue: Sreten Kovacevic <skovacevic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#58655}
-
Jakob Gruber authored
OOMs in CSA code would trigger fairly arbitrary assertion failures on some paths. This changes CSA::AllocateRaw to call FatalProcessOutOfMemory (just like runtime methods). CSA::AllocateFixedArray additionally checks for FixedArray::kMaxLength. This increases overall builtin code size on x64 release by 28K / 2.5%. Bug: chromium:917561, chromium:848672 Change-Id: I757271264f396e0df8d8fe0570bad078075c27d5 Reviewed-on: https://chromium-review.googlesource.com/c/1400414 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#58654}
-
Tom Tan authored
.rodata usually hosts read only data. MSVC link.exe complains mismatch when merging this read/write .rodata from embedded.S with .rodata from other object file. Bug: chromium:919180 Change-Id: I7789e42afe116cc4bf772e2cbb312d19e4ce7fe5 Reviewed-on: https://chromium-review.googlesource.com/c/1396361 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58653}
-
Joyee Cheung authored
Bug: v8:8354 Change-Id: I20bb169695d7ecca739f14f9a3ddfafed0dcb964 Reviewed-on: https://chromium-review.googlesource.com/c/1393284Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Joyee Cheung <joyee@igalia.com> Cr-Commit-Position: refs/heads/master@{#58652}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/121336d..117f6f1 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/c805793..3511bed Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/d16b51b..da90c53 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: Ie1ad71d68998fa7acfe59bbc04a7f5f2deea5a38 Reviewed-on: https://chromium-review.googlesource.com/c/1401816Reviewed-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@{#58651}
-
Sathya Gunasekaran authored
Bug: v8:8656 Change-Id: I86f00d377ac99a065c4ecf02abed08ec4feb3686 Reviewed-on: https://chromium-review.googlesource.com/c/1401214Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#58650}
-
Sathya Gunasekaran authored
Bug: v8:5368 Change-Id: I4142c4051e394f1a249421bf68da456381e390ae Reviewed-on: https://chromium-review.googlesource.com/c/1401326Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#58649}
-
- 08 Jan, 2019 14 commits
-
-
Deepti Gandluri authored
Change-Id: I241565dea56db982a46eed8ecdd2fd2692c368ce Reviewed-on: https://chromium-review.googlesource.com/c/1395800Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#58648}
-
Frank Tang authored
Bug: v8:7481 Change-Id: I2587de31faa4dee3ae6f3d5a1872161aae48d1d3 Reviewed-on: https://chromium-review.googlesource.com/c/1395321 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#58647}
-
Frank Tang authored
TC39 accept stable sort in Oct 2018 Bug: v8:7808 Change-Id: I2ad1bca62bda10838dc33acb109a5c937a3b1947 Reviewed-on: https://chromium-review.googlesource.com/c/1400401Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#58646}
-
Frank Tang authored
The spec changed in 7/2018 to treat -0 and 0 differently. https://github.com/tc39/ecma402/pull/232 Bug: v8:7474, v8:8099 Change-Id: I77db4ae716b081b7628dc7ee253a463520c7f6e9 Reviewed-on: https://chromium-review.googlesource.com/c/1400403Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#58645}
-
Clemens Hammacher authored
Most parallel moves do not actually require the heavy analysis in the GapResolver since there is no overlap between source and destination registers. Handle some of these cases by a fast-path to avoid the quadratic behaviour in the general case. The fast path is taken for about 2/3 of the non-empty parallel moves on wasm workloads. R=herhut@chromium.org, titzer@chromium.org Bug: v8:8423 Change-Id: I026256fd6cf268f176fccc97f0f427e07629aeb3 Reviewed-on: https://chromium-review.googlesource.com/c/1400410 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Stephan Herhut <herhut@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#58644}
-
Mike Stanton authored
Change-Id: Ifc71ae885b2a08b898ace7f75a8df0ca2b9c3a3d Reviewed-on: https://chromium-review.googlesource.com/c/1275820 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#58643}
-
Maya Lekova authored
TBR=machenbach@chromium.org Bug: v8:8653 NOTRY=true Change-Id: Ifb80024142491649e66114bed2179faa45365b73 Reviewed-on: https://chromium-review.googlesource.com/c/1400843 Commit-Queue: Maya Lekova <mslekova@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#58642}
-
Peter Marshall authored
These flakes can't be reproduced locally so we need more information when they fail. Add some logging so that we can figure out why they are breaking. Bug: v8:8649, v8:8648 Change-Id: I2fb1384bb7592c6fc68c08952505e79329f00bec Reviewed-on: https://chromium-review.googlesource.com/c/1400418 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#58641}
-
Yang Guo authored
R=jgruber@chromium.org Bug: v8:7624 Change-Id: I357e0b9d497ebff03e0e41a3495621c5b4c63464 Reviewed-on: https://chromium-review.googlesource.com/c/1400402 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58640}
-
Peter Marshall authored
Within an inline stack we would have multiple copies of the exact same CodeEntry object to represent an inline frame. We had one copy for every time that the frame appeared in an inline stack. One CodeEntry can have multiple inline stacks and each stack can have multiple inline frames. In the common case, the stacks overlap and repeat frames. This CL creates a single CodeEntry object to represent each inlined function as an inline frame (for a given CodeEntry with inlinings). This removes most of the duplication of inline CodeEntry objects. We still have some duplication, e.g. if we inline bar() into foo() and foo2() but they are not themselves inlined into anything, then we will have two inline CodeEntry objects for bar(). Removing all duplication is harder to achieve because the lifetime of the inlined frame CodeEntry is now no longer tied to the inliner. Get rid of the InlineEntry struct as it is now indentical to CodeEntryAndLineNumber. We store the list of canonical inline CodeEntry objects on the CodeObject of the inlining function so that it can own the lifetimes of inlined frames. Also rename inline_locations_ to inline_stacks_ to be clearer. Bug: v8:7719 Change-Id: Ied765b4cce7fd33f3290798331f1e6767cc42e8c Reviewed-on: https://chromium-review.googlesource.com/c/1396086 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#58639}
-
Toon Verwaest authored
Change-Id: Ie157933d32acf89ff3c1571c843f07ff6fd1c525 Reviewed-on: https://chromium-review.googlesource.com/c/1400782Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#58638}
-
Toon Verwaest authored
Bug: chromium:919710 Change-Id: I5a04e76fbc925a89b0ebe1916637f6ae5d109b24 Reviewed-on: https://chromium-review.googlesource.com/c/1400419Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#58637}
-
Ross McIlroy authored
Remove the use of a jump table in the prologue of the deopt entries and instead pass the bailout id explicitly in a register when calling the deopt entry routine from optimized code. This unifies the logic with the way the Arm64 code works. It saves the following amount of memory in code stubs: - arm: 384KB - ia32: 480KB - x64: 240KB This could be offset by a slight increase in the size of optimized code for loading the immediate, however this impact should be minimal and will scale with the maximum number of bailout ids (e.g., the size of code will increase by one instruction per bailout id on Arm, therefore ~98,000 bailouts will be needed before the overhead is greater than the current fixed table size). Change-Id: I838604b48fa04cbd45320c7b9dac0de08fd8eb25 Reviewed-on: https://chromium-review.googlesource.com/c/1398224 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#58636}
-
Camillo Bruni authored
Always precheck that the PreparseData has data before serializing it. Drive-by-fix: - rename preparsed_scope_data_builder_ to preparse_data_builder_ Change-Id: I8e709af8f69db44e03caa9132f06a7b8c906bfdb Reviewed-on: https://chromium-review.googlesource.com/c/1387305Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#58635}
-