- 04 Sep, 2018 9 commits
-
-
Yang Guo authored
Also extend the API to reflect this new feature. R=jgruber@chromium.org, szuend@google.com, ulan@chromium.org Bug: v8:8125 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ic7a7604a8c663ba04b324eb8902ff325a25654e7 Reviewed-on: https://chromium-review.googlesource.com/1202087Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#55604}
-
Yang Guo authored
R=machenbach@chromium.org Change-Id: I28553eb80f78359e6aeb5bb05a1ea39467e164c9 Reviewed-on: https://chromium-review.googlesource.com/1203830Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#55603}
-
Michael Starzinger authored
This fixes exception creation (by the WebAssembly throw operation) so that it is not observable by JavaScript. Internal properties are now stored with symbol names instead of string names, which also prevents them from being accessed or monkey-patched directly by JavaScript. R=clemensh@chromium.org TEST=mjsunit/regress/wasm/regress-8094 BUG=v8:8094 Change-Id: I33cb27f4373114cd4db28d9aef23560093e55242 Reviewed-on: https://chromium-review.googlesource.com/1203951 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55602}
-
Stephan Herhut authored
WebAssembly.Instantiate would silently fail when the passed in memory object did not have guard regions even though the compiled module assumes so. This lead to an inconsitent state and a DCHECK error. Instead, now throw a LinkError. Change-Id: I68bab842bcc40d3325aea4b19979d80054ed407c Reviewed-on: https://chromium-review.googlesource.com/1180892 Commit-Queue: Stephan Herhut <herhut@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#55601}
-
Clemens Hammacher authored
Bug: v8:8126 R=sattlerf@google.com CC=jgruber@chromium.org, titzer@chromium.org Change-Id: I32ec94fd913def346d1e783b2ffd0ec7d16e5df5 Reviewed-on: https://chromium-review.googlesource.com/1203730Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55600}
-
Stephan Herhut authored
The wasm compiler used Pipeline::GenerateCodeForTesting to generate code for various stubs. This change adds a dedicated entry point and moves some common code there. Bug: v8:8015 Change-Id: Ied628ba14c36e68826cb71d00506994184cc4763 Reviewed-on: https://chromium-review.googlesource.com/1196885 Commit-Queue: Stephan Herhut <herhut@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55599}
-
Sergiy Byelozyorov authored
R=machenbach@chromium.org Bug: chromium:874316 Change-Id: I148916d0b0f34214325910b29aceb39d3a1db459 Reviewed-on: https://chromium-review.googlesource.com/1201523Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#55598}
-
v8-ci-autoroll-builder authored
Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/5167fb3..88dc49a TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I84883887372c1abff8d2a643f98dad7ba867e903 Reviewed-on: https://chromium-review.googlesource.com/1203570 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@{#55597}
-
Yutaka Hirano authored
In general, whether an error thrown from a script will be muted is passed as (part of) ScriptOriginOptions when the script is compiled. Currently, when eval is called, that information is not given, and it uses the default options (IsSharedCrossOrigin = false, IsOpaque = false). Give it the options for the script in which eval is called. Bug: chromium:875153 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng;luci.chromium.try:linux_chromium_rel_ng Change-Id: I4b5b872b4a8c2b8e503d457f199d85892a4c817c Reviewed-on: https://chromium-review.googlesource.com/1188052Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Yutaka Hirano <yhirano@chromium.org> Cr-Commit-Position: refs/heads/master@{#55596}
-
- 03 Sep, 2018 24 commits
-
-
Benedikt Meurer authored
The previous typing rules for ToNumeric and ToNumber didn't match on the NonBigIntPrimitive input set, which causes trouble when we morph ToNumeric nodes into ToNumber nodes, and generally lead to worse typings in the graph, and thus worse code generation. This change improves the existing typing rules and turns ToNumber into a chokepoint again. Bug: chromium:879898, v8:8015 Change-Id: I4a7ff0e9c420c5dcfdb2b96884e019a5943828a4 Reviewed-on: https://chromium-review.googlesource.com/1201522Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55595}
-
Yang Guo authored
This reverts commit 1b3b808a. Reason for revert: crbug/879988 TBR=kozy@chromium.org Original change's description: > inspector: find magic comment using V8 scanner > > Inspector tries to provide sourceURL and sourceMappingURL for scripts > with parser errors. Without this CL we convert source of each script > to inspector string and search for magic comment there. Some web sites > use pattern when they get some data from network and constantly try to > parse this data as JSON, in this case we do a lot of useless work. > > So we can parse magic comments on V8 side only for compilation errors > (excluding parse JSON errors), to do it we can reuse scanner by running > it on each potential comment. > > R=alph@chromium.org,verwaest@chromium.org,yangguo@chromium.org > > Bug: chromium:873865,v8:7731 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel > Change-Id: I77c270fd0e95cd7b2c9ee4b7f72ef344bc1fa104 > Reviewed-on: https://chromium-review.googlesource.com/1182446 > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Alexei Filippov <alph@chromium.org> > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55280} TBR=alph@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org,verwaest@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:873865, v8:7731, chromium:879988 Change-Id: Ia7ac766e19f9b58562d9430811f10b25c4556a46 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/1202583 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#55594}
-
Ross McIlroy authored
Change-Id: Ifbe9ac0dc49b9826fb7ea2e81ce8e44401c3dc20 Reviewed-on: https://chromium-review.googlesource.com/1200002Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#55593}
-
Yang Guo authored
This reverts commit 5bbd1921. Reason for revert: Tentative revert for crbug.com/879988 TBR=sattlerf@chromium.org,verwaest@chromium.org Original change's description: > [scanner] Inlining ScanIdentifier and Token check > > This improves parse time for code-load and other benchmarks. > > Bug: v8:7926 > Change-Id: I9c8017f2e7f73dd952c025db5abe8e4062e6ef9b > Reviewed-on: https://chromium-review.googlesource.com/1196506 > Commit-Queue: Florian Sattler <sattlerf@google.com> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55521} TBR=marja@chromium.org,verwaest@chromium.org,sattlerf@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:7926, chromium:879988 Change-Id: Ic71d9cf63b69c0f9560851259f434b02cc082417 Reviewed-on: https://chromium-review.googlesource.com/1202086 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#55592}
-
Nico Weber authored
made possible by https://chromium-review.googlesource.com/c/chromium/src/+/1063611 Bug: chromium:826218 Change-Id: Id3123de5705c91beb0a5eb87ca4490fe55a7de01 Reviewed-on: https://chromium-review.googlesource.com/1201002Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org> Cr-Commit-Position: refs/heads/master@{#55591}
-
jgruber authored
Now that we've removed kRootRegister from all ia32 interface descriptors, let's make sure it does not sneak back in. Bug: v8:6666 Change-Id: Ie3528908a142c36f106b0053041ed974216533d4 Reviewed-on: https://chromium-review.googlesource.com/1202083 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#55590}
-
Bogdan Lazarescu authored
Change-Id: Ie18b39ab50d592c81de6dd2aa2d246191f758b5e Reviewed-on: https://chromium-review.googlesource.com/1179670 Commit-Queue: Bogdan Lazarescu <bogdan.lazarescu@arm.com> Reviewed-by: Ben Titzer <titzer@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55589}
-
jgruber authored
Just a minor refactoring that loads parameters just prior to their uses to reduce register spills and restores. CSA is not smart enough to do this on its own. Bug: v8:6666 Change-Id: I6d01abc35b333b2b0d99fa86daaa6ecb6afcf6c0 Reviewed-on: https://chromium-review.googlesource.com/1201883 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#55588}
-
jgruber authored
The isolate can be efficiently loaded through other means: either as a root-relative load (if embedded builtins are enabled), or as an embedded external reference (i.e. the absolute pointer is included in the instruction stream) otherwise. The generated code should be at least as fast as previously. On x64 (with embedded builtins): Before: // Register moves in prologue: 0x7f47a6b4860a a 488955e0 REX.W movq [rbp-0x20],rdx // And the load from a stack slot at each use-site. 0x7f47a6b486f2 f2 488b7de0 REX.W movq rdi,[rbp-0x20] After: // Each use-site just loads a root-relative offset. 0x7f1645fcc6ce ee 498dbd38ffffff REX.W leaq rdi,[r13-0xc8] On ia32 (no embedded builtins), before: 0x5c608930 10 8955f0 mov [ebp-0x10],edx 0x5c6089fb db 891424 mov [esp],edx After: 0x41d0898d 8d b80033b156 mov eax,0x56b13300 Removal reduces register pressure, and frees up ebx as the root register on ia32. Note that the set of allocatable registers was only reduced on ia32 to exclude the root register. Bug: v8:6666 Change-Id: I14e401e2823c82042c76acae10c3c935b9982993 Reviewed-on: https://chromium-review.googlesource.com/1201586 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#55587}
-
Florian Sattler authored
Bug: v8:7926 Change-Id: I9b8129d60fc4d65481757222c255e883b24f47ab Reviewed-on: https://chromium-review.googlesource.com/1196549 Commit-Queue: Florian Sattler <sattlerf@google.com> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#55586}
-
jgruber authored
In preparation for kRootRegister support on ia32. Instead of pushing the register args first thing within the builtin to free up needed scratch registers, we just pass the last 3 arguments on the stack. Drive-by: Update documentation of helper function. Bug: v8:6666 Change-Id: I4a194d6885ac9cdfb9f5e66d687522442fae39ba Reviewed-on: https://chromium-review.googlesource.com/1199025 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#55585}
-
Florian Sattler authored
PreParser types, e.g., PreParserExpression, PreParserList, PreParserFormalParameter. This also enhances ThreadedLists to be used on the same class more than once. Bug: v8:7926 Change-Id: Ied204120e5d12ab1f1c4192f6b3c05971a12683b Reviewed-on: https://chromium-review.googlesource.com/1199262 Commit-Queue: Florian Sattler <sattlerf@google.com> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#55584}
-
Michael Starzinger authored
R=titzer@chromium.org TEST=mjsunit/wasm/anyref Change-Id: Ia79c78038f6cc92f657ee1b48474323bde981155 Reviewed-on: https://chromium-review.googlesource.com/1201784Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55583}
-
Dan Elphick authored
Bug: v8:8068 Change-Id: Iaa89311441305cfe938a938b456045b40dec3943 Reviewed-on: https://chromium-review.googlesource.com/1199463Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#55582}
-
Dan Elphick authored
When v8_enable_embedded_bytecode_handlers is true, initialize the bytecode dispatch table from the builtins table. Also stops creating the handlers more than once as the SetupInterpreter will now always do nothing even when not starting from a snapshot. In the short term, with the flag enabled all the bytecode handlers are eagerly deserialized. Finally, the bytecode handlers are marked as non-isolate independent to prevent them being embedded in the binary until they can be converted. Bug: v8:8068 Change-Id: I9e5ef7f1dce1b2d11c7aa26526f06b53f8939697 Reviewed-on: https://chromium-review.googlesource.com/1188477Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#55581}
-
Georg Neis authored
Bug: v8:7790 Change-Id: I93ecb8540a002b6bfca857c2938920ac52308df1 Reviewed-on: https://chromium-review.googlesource.com/1193874Reviewed-by: Maya Lekova <mslekova@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#55580}
-
Alexander Timokhin authored
After https://chromium-review.googlesource.com/c/v8/v8/+/1101323 some AllocationSites can have dropped weak_next field, but this doesn't suported in serializer/deserializer. This CL adds support for such AllocationSites. Change-Id: Ibf495ae4effdf4e127892d906967d8e30eebfc87 Reviewed-on: https://chromium-review.googlesource.com/1183238 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#55579}
-
Simon Zünd authored
This CL replaces occurrences of "length" with the CSA macro LengthStringConstant(). R=jgruber@chromium.org Bug: v8:8015 Change-Id: Idf095587940f859e4c634865560abae325cd9fb4 Reviewed-on: https://chromium-review.googlesource.com/1201782Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Simon Zünd <szuend@google.com> Cr-Commit-Position: refs/heads/master@{#55578}
-
Simon Zünd authored
This CL does two things: It adds a CSA helper to determine whether the debug_execution_mode is kSideEffects. And it adds a runtime function that exposes PerformSideEffectCheckForObject. This will be needed for the Array.p.unshift Torque version. R=jgruber@chromium.org Change-Id: Idc1ae077956e0862e613a2c28af3f2cf4d5c3762 Reviewed-on: https://chromium-review.googlesource.com/1196362 Commit-Queue: Simon Zünd <szuend@google.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#55577}
-
Simon Zünd authored
This CL replaces the JavaScript fall-back for Array.p.shift with a baseline C++ implementation. R=jgruber@chromium.org Bug: v8:7624 Change-Id: Ib55e04e18e4e69089fc541636d3cad7fcb4c7245 Reviewed-on: https://chromium-review.googlesource.com/1186327 Commit-Queue: Simon Zünd <szuend@google.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#55576}
-
Yang Guo authored
R=jgruber@chromium.org Change-Id: Ie2024c5425b657ba1779f1cd2108c7cf406ffade Reviewed-on: https://chromium-review.googlesource.com/1174431 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#55575}
-
Yang Guo authored
New steps would be - `tools/dev/v8gen.py x64.release.sample` - `ninja -C out.gn/x64.release.sample v8_monolith` - `g++ -I. -Iinclude samples/hello-world.cc -o hello_world lv8_monolith -Lout.gn/x64.release.sample/obj/ -pthread -std=c++0x` - `./hello_world` (no more worrying about .bin files) R=jkummerow@chromium.org, mths@chromium.org Change-Id: I3bba03b4c3ed34daf242a570f420b90f94ec6de0 Reviewed-on: https://chromium-review.googlesource.com/1179663 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#55574}
-
Yang Guo authored
These are now direct dependencies in Node.js. R=lushnikov@chromium.org Change-Id: I01a68394e2e22a1024b6c21b8222ac8b113fc693 Reviewed-on: https://chromium-review.googlesource.com/1179143 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#55573}
-
Yutaka Hirano authored
Bug: None Change-Id: I26f136ff20f67b3eebc4374c9ac380d63f720ba9 Reviewed-on: https://chromium-review.googlesource.com/1192802 Commit-Queue: Yutaka Hirano <yhirano@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#55572}
-
- 02 Sep, 2018 2 commits
-
-
Sergiy Byelozyorov authored
TBR=sergiyb@chromium.org No-Try: true Bug: chromium:826280 Change-Id: I1ffaa592c686e07f13426d4f8459d50ff59b4d3c Reviewed-on: https://chromium-review.googlesource.com/1171239 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#55571}
-
Benedikt Meurer authored
The typing rules for NumberMax and NumberMin didn't properly deal with -0 up until now, leading to suboptimal typing, i.e. for a simple case like Math.max(Math.round(x), 1) TurboFan was unable to figure out that the result is definitely going to be a positive integer in the range [1,inf] or NaN (assuming that NumberOrOddball feedback is used for the value x). Bug: v8:8015 Change-Id: I06e14a9c9b0b813eb214ace7749fcc6ab36bb66a Reviewed-on: https://chromium-review.googlesource.com/1199304 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#55570}
-
- 01 Sep, 2018 2 commits
-
-
Benedikt Meurer authored
Printing of both union and tuple types was broken such that the first type was always skipped due to a bug. Bug: v8:8015 Change-Id: I4bd215a9d8fa5bc7e017dd28e66512f4961228d1 Reviewed-on: https://chromium-review.googlesource.com/1199365Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55569}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/1a26c15..6773a0d Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/cd6bcbe..5167fb3 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/e7f9302..e323bd9 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/58f7169..3aa6139 Rolling v8/tools/gyp: https://chromium.googlesource.com/external/gyp/+log/d61a939..81286d3 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: Iada5a1194eef2052e0915b7bcf3c6e1576739fa1 Reviewed-on: https://chromium-review.googlesource.com/1199912Reviewed-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@{#55568}
-
- 31 Aug, 2018 3 commits
-
-
Sathya Gunasekaran authored
This makes us spec compliant. Bug: chromium:875643 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I489870495fe1d326991c99f0551fe3329268c984 Reviewed-on: https://chromium-review.googlesource.com/1199910 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#55567}
-
Sathya Gunasekaran authored
Instead of creating the SFIs during bootstrapping and storing on the context, this patch just creates the SFIs on demand. This patch saves 8 words per context, and several words per bound function by not storing the SFI. The created bound JSFunction is cached on the instance anyway, so it's totally fine to take a small hit when creating the bound JSFunction. Previously in the JS implementation, the creation of a bound function was even slower as it was a lazy function that would have to parsed, compiled and executed. So this is a step up in terms up perf and memory. Bug: v8:5751 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: If3b8461d00e5b37567b34b236d44e14576b630ff Reviewed-on: https://chromium-review.googlesource.com/1200006Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#55566}
-
Frank Tang authored
Bug: v8:7979 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Ie3005cc93e582ea4d8d501a8a4a194d7ae35c129 Reviewed-on: https://chromium-review.googlesource.com/1198682 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#55565}
-