- 25 Jan, 2019 4 commits
-
-
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}
-
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}
-
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}
-
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}
-
- 24 Jan, 2019 7 commits
-
-
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}
-
peterwmwong authored
This is part of an effort to improve the performance of TA#subarray. Bug: v8:7161 Change-Id: Id110b4bd30fd8f67b9f8f23268e64de22e471c68 Reviewed-on: https://chromium-review.googlesource.com/c/1432596 Commit-Queue: Peter Wong <peter.wm.wong@gmail.com> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#59073}
-
Tobias Tebbi authored
Change-Id: I56321f49894612e80e8e3f5d85a759718be6ef10 Reviewed-on: https://chromium-review.googlesource.com/c/1433786 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@{#59067}
-
Mike Stanton authored
All users have elements already, and we can just pass that in. Change-Id: Ie9b8c1290d74bce120461c9f15695e8eb7dfd7c2 Reviewed-on: https://chromium-review.googlesource.com/c/1430072 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#59064}
-
Tobias Tebbi authored
Bug: v8:7793 Change-Id: If304608a284edb09e0a19171bbb56645714f6c32 Reviewed-on: https://chromium-review.googlesource.com/c/1433779Reviewed-by:
Daniel Clifford <danno@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#59061}
-
Daniel Clifford authored
This requires honoring the instance size of the object stored in the map for JSObject. To do this, allocation is now split into two instrinsics, one that calculates the base size of the allocated object (%GetAllocationBaseSize) and one that actually allocates (%Allocate). In the process, remove objects.tq, which only existed to contain a macro to fetch the default JSObject map, which is functionality that is now in the JSObject class constructor. Bug: v8:7793 Change-Id: I426a7943aac67eacad46d4ff39f5c821489a04bc Reviewed-on: https://chromium-review.googlesource.com/c/1426959 Commit-Queue: Daniel Clifford <danno@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#59052}
-
Frank Tang authored
Bug: v8:8704 Change-Id: Ib0548a6aa9f4b148d412de5632c1652f529371fa Reviewed-on: https://chromium-review.googlesource.com/c/1424021 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#59050}
-
- 23 Jan, 2019 6 commits
-
-
peterwmwong authored
This is part of an effort to improve the performance of TA#subarray. Bug: v8:7161 Change-Id: I1579ee45a810e1f2d0279fef9e18bad09e1fc3d9 Reviewed-on: https://chromium-review.googlesource.com/c/1426107Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#59048}
-
Mike Stanton authored
Change-Id: I3a60be25b9c7daadcad6078447348b790b249e1c Reviewed-on: https://chromium-review.googlesource.com/c/1402774 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#59042}
-
Jakob Gruber authored
For jitless mode, we must be able to switch between the native regexp engine and interpreted regexps at runtime since --jitless is itself a runtime flag. This CL unconditionally compiles in the regexp interpreter in all builds. It can be toggled through the --regexp-interpret-all flag. Bug: v8:7777, v8:8678 Change-Id: Iadd21a152de7c07586d5af32bee5fdf9931f1a01 Reviewed-on: https://chromium-review.googlesource.com/c/1408929 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#59041}
-
Jakob Gruber authored
Code object iteration was missing logic for RELATIVE_CODE_TARGET reloc entries. Garbage collection could thus miss objects that were referenced only as targets of pc-relative calls or jumps. RELATIVE_CODE_TARGETs are only used on arm, mips, and s390 and only at mksnapshot-time. This exposed another issue in that the interpreter entry trampoline copy we generate for profiling *did* contain relative calls in runtime-accessible code. This is a problem, since code space on arm is, by default, too large to be fully addressable through pc-relative calls. This CL thus also disables the related FLAG_interpreted_frames_native_stack feature on arm. Drive-by: Ensure the builtins constants table does not contain Code objects. Bug: v8:8713,v8:6666 Change-Id: Idd914b46970ad08f9091fc72113fa7aed2732e71 Reviewed-on: https://chromium-review.googlesource.com/c/1424866Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#59023}
-
Michael Achenbach authored
This reverts commit 516d9068. Reason for revert: Breaks layout tests: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8-Blink%20Linux%2064/29444 See also: https://v8.dev/docs/blink-layout-tests Original change's description: > Expose the number of microtasks from RunMicrotasks > > This CL adds the number of processed microtasks to the tracing marker > of RunMicrotasks, plus let RunMicrotasks return the number. > > Bug: v8:7804, v8:8124 > Change-Id: Ie584e22964121fbda3a822379d760e7518fc54a7 > Reviewed-on: https://chromium-review.googlesource.com/c/1425277 > Commit-Queue: Taiju Tsuiki <tzik@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#59017} TBR=bmeurer@chromium.org,tzik@chromium.org Change-Id: I7db675dbbc496cc3c45220aa141252dd371d2780 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7804, v8:8124 Reviewed-on: https://chromium-review.googlesource.com/c/1429859Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#59018}
-
tzik authored
This CL adds the number of processed microtasks to the tracing marker of RunMicrotasks, plus let RunMicrotasks return the number. Bug: v8:7804, v8:8124 Change-Id: Ie584e22964121fbda3a822379d760e7518fc54a7 Reviewed-on: https://chromium-review.googlesource.com/c/1425277 Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#59017}
-
- 22 Jan, 2019 3 commits
-
-
Mike Stanton authored
Now, the CodeAssembler can annotate Nodes with SourcePositions. SourcePositions themselves get a new mode "external," in which they get a file_id, line and column. The file_id is currently maintained in the isolate, mapping to strings for filenames. Additionally, inlining information is ignored at this point, but in the long run I'd like to recognize calls to different CSA functions as manual inlinings. At this point, if you want to see the results in tools like GDB, you'll need to build without clang, and use the GCC toolchain. GN flag is_clang=false will do the trick. Bug: v8:8418 Change-Id: I123cdc041612285fa7d0ba532a625bceeda5d338 Reviewed-on: https://chromium-review.googlesource.com/c/1322954 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#59009}
-
peterwmwong authored
This is part of an effort to improve the performance of TA#subarray. Bug: v8:7161 Change-Id: I6f4b0f01e498d48e0fce11fbf7dcd7a0ad1ae748 Reviewed-on: https://chromium-review.googlesource.com/c/1425002 Commit-Queue: Peter Wong <peter.wm.wong@gmail.com> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58988}
-
Peter Marshall authored
Everything was including log.h through heap-inl.h, so remove that include by moving the one user into heap.cc, and then fix all the include errors. This reduces the log.h include ball from ~550 to ~100. Change-Id: I6d09bc2f365b48645fcfdc695a68ea12539a745d Reviewed-on: https://chromium-review.googlesource.com/c/1424198 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#58981}
-
- 21 Jan, 2019 2 commits
-
-
Simon Zünd authored
This CL adds a stack check to the TFS builtin "FlattenIntoArray" as it is called recursively and can cause a SEGV with a large enough "depth" argument. R=jgruber@chromium.org Bug: v8:8708 Change-Id: I833506531bcff1c4703b9a21678028cf0e63638d Reviewed-on: https://chromium-review.googlesource.com/c/1424858 Commit-Queue: Simon Zünd <szuend@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58952}
-
peterwmwong authored
This is part of an effort to improve the performance of TA#subarray. Bug: v8:7161 Change-Id: Iae84d16a037386bebfeaa7e8fb0648da295653b4 Reviewed-on: https://chromium-review.googlesource.com/c/1419225 Commit-Queue: Peter Wong <peter.wm.wong@gmail.com> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58947}
-
- 18 Jan, 2019 2 commits
-
-
Predrag Rudic authored
MIPS32 doesn't have constraint for maximum code range or maximum PC relative code range, and allocation of kMaxPCRelativeCodeRangeInMB memory results in OOM failure from allocator. This patch also skips verifying transitive builtins for 64-bit MIPS because it doesn't have implemented pc-relative calls and jumps yet. Change-Id: I7cad154827c2a9fd274901895a5a54c5ce176b03 Reviewed-on: https://chromium-review.googlesource.com/c/1414853Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Predrag Rudic <prudic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#58927}
-
Maya Lekova authored
This reverts commit 0896599f. Reason for revert: Speculative revert, seems to cause a layout test failure blocking the LKGR - https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8-Blink%20Linux%2064/29320 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=mlippautz@chromium.org,mythria@chromium.org,jgruber@chromium.org,verwaest@chromium.org Change-Id: I2e0f80a4577a8ca86c05a62205f9dfa488418a52 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/1420758Reviewed-by:
Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#58911}
-
- 17 Jan, 2019 7 commits
-
-
Z Duong Nguyen-Huu authored
The current implementation does not correctly handle the edge case for setYear where input is something like -0.99 Bug: v8:5139 Change-Id: Ia919814eb6282c7f996cccc4531ed073e843ba27 Reviewed-on: https://chromium-review.googlesource.com/c/1412501Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Z Nguyen-Huu <duongn@microsoft.com> Cr-Commit-Position: refs/heads/master@{#58899}
-
Junliang Yan authored
Port fab59bbb Original Commit Message: The previous implementation of MicrotaskQueue::RunMicrotasks() didn't support non-default MicrotaskQueue as RunMicrotasks builtin couldn't take a parameter. This CL updates the entry trampoline for RunMicrotasks builtin to pass a MicrotaskQueue parameter to support non-default one. R=tzik@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Id30e746879b1a17921320eac6c6f6c30e56961cc Reviewed-on: https://chromium-review.googlesource.com/c/1417385Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58894}
-
Mythri authored
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/1409426Reviewed-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}
-
Clemens Hammacher authored
Refactor all call sites to use the new API introduced in https://crrev.com/c/1411347 and remove the legacy constructors. R=mstarzinger@chromium.org Bug: v8:8689, v8:8562 Change-Id: Id73686413726b2860f551dd200ef4b8823ef3034 Reviewed-on: https://chromium-review.googlesource.com/c/1415491Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58884}
-
tzik authored
This updates the InterfaceDescriptor for JSRunMicrotasksEntry and RunMicrotasksTrampoline from DummyDescriptor to RunMicrotasksEntryDescriptor. Bug: v8:8124 Change-Id: I4522fd45bd18b33a2a4471b76c217d2a0f504cb0 Reviewed-on: https://chromium-review.googlesource.com/c/1412132 Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58879}
-
tzik authored
The previous implementation of MicrotaskQueue::RunMicrotasks() didn't support non-default MicrotaskQueue as RunMicrotasks builtin couldn't take a parameter. This CL updates the entry trampoline for RunMicrotasks builtin to pass a MicrotaskQueue parameter to support non-default one. Bug: v8:8124 Change-Id: I817238cd9a1fd6c20dcd58022274736c5e86229a Reviewed-on: https://chromium-review.googlesource.com/c/1369906Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#58872}
-
Clemens Hammacher authored
and TurboAssembler. Instead of listing all the different combinations of arguments (which is one more now, temporarily), just forward all arguments down via MacroAssembler and TurboAssembler to TurboAssemblerBase. Interestingly, this requires more specific types sometimes (int instead of size_t), since further down the forwarding chain, the compiler does not recognize any more that the value is a constant, and emits a warning about a possibly truncating implicit conversion. R=mstarzinger@chromium.org Bug: v8:8689, v8:8562 Change-Id: Ifd13d2210ee64251c0075c0d9b68cacd5107d9ab Reviewed-on: https://chromium-review.googlesource.com/c/1414913Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58869}
-
- 16 Jan, 2019 3 commits
-
-
Daniel Clifford authored
With the changes in this patch, it is now possible to add methods to both Torque's class and struct types. As a special case, "constructor" methods are used to initialize the values of classes and structs when they are constructed. The functionality in this patch includes: - The refactoring of class- and struct-handling code to share field and method declaration code between both. - Addition of the "%Allocate" intrinsic that allocates raw bytes to be allocated from the V8 GC's NewSpace heap as the basis for freshly created, initialized class objects. - An implementation of a CallMethodExpression AST node that enables calling methods and constructors, including special handling of passing through the "this" pointer for method calls on structs by reference. The syntax for struct construction using "{}" remains as before, but now calls the struct's matching constructor rather than implicitly initializing the struct fields with the initialization arguments. A new syntax for allocation classes is introduced: "new ClassName{constructor_param1, constructor_param1, ...}", which de-sugars to an %Allocate call followed by a call to the matching constructor. - class constructors can use the "super" keyword to initialize their super class. - If classes and struct do not have a constructor, Torque creates a default constructor for them based on their field declarations, where each field's initial value is assigned to a same-typed parameter to the the default constructor. The default constructor's parameters are in field-declaration order, and for derived classes, the default constructor automatically uses a "super" initialization call to initialize inherited fields. - Class field declarations now automatically create ".field" and ".field=" operators that create CSA-compatible object accessors. - Addition of a no-argument constructor for JSArrays that creates an empty, PACKED_SMI_ELEMENTS JSArray using the machinery added elsewhere in this patch. Bug: v8:7793 Change-Id: I31ce5f4b444656ab999555d780aeeba605666bfa Reviewed-on: https://chromium-review.googlesource.com/c/1392192 Commit-Queue: Daniel Clifford <danno@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#58860}
-
Ben L. Titzer authored
The table.copy bytecode copies a range of table entries in a similar way to memcopy. This CL implements the behavior in a runtime call that calls into the wasm engine. R=mstarzinger@chromium.org,binji@chromium.org BUG=v8:7747 Change-Id: I420451202b1b78ea92cbd10387a644ed57e111c8 Reviewed-on: https://chromium-review.googlesource.com/c/1414919 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#58858}
-
Jakob Gruber authored
On ia32, arm and mips we generate miscellaneous memcpy-related functions at runtime: arm: memcpy for uint8-uint8 and uint16-uint8 {dest-source} pairs. ia32: memmove mips: memcpy uint8-uint8 In jitless mode, runtime codegen is disallowed, so these must be converted into builtins. As far as I can tell, the mips64 files were dead code (#ifdef'd to V8_HOST_ARCH_MIPS instead of MIPS64). Note also the slightly changed implementation of ia32's MemMove's jump tables. Bug: v8:8675 Change-Id: I5dc2a50fcbad332ce9f78228425b987b0d9acdf3 Reviewed-on: https://chromium-review.googlesource.com/c/1407067Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58839}
-
- 15 Jan, 2019 2 commits
-
-
Ben L. Titzer authored
The table.drop bytecode "drops" the backing storage for an element initializer. In the V8 implementation, this is a nop, other than updating a per-instance boolean array so that two drops of the same segment or a drop of an active segment will trap. This is implemented with inline code in TurboFan in order to be symmetric to memory.drop, but could as easily be a runtime call to be supported in Liftoff. R=mstarzinger@chromium.org CC=binji@chromium.org BUG=v8:7747 Change-Id: Ic017398eaa764dd3a9ff19523453ff7142c9abf6 Reviewed-on: https://chromium-review.googlesource.com/c/1408996Reviewed-by:
Ben Smith <binji@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#58817}
-
tzik authored
As a follow-up of https://crrev.com/c/1372857 that repordered the parameters of JSEntry, this CL updates JSEntry for S390 for new ordering. Bug: v8:8124 Change-Id: I7cd3b03b4000b40b157527174946af6d79f67065 Reviewed-on: https://chromium-review.googlesource.com/c/1405962 Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58809}
-
- 14 Jan, 2019 3 commits
-
-
milad authored
Change-Id: Ibd2d9919ce47638debde8e59c10714c4836b9292 Reviewed-on: https://chromium-review.googlesource.com/c/1408388Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Joran Siu <joransiu@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58801}
-
tzik authored
As a follow-up of https://crrev.com/c/1372857 that repordered the parameters of JSEntry, this CL updates JSEntry for PPC for new ordering. Bug: v8:8124 Change-Id: I9daa23dc66209e435a729c2e8464c54d098dcf1f Reviewed-on: https://chromium-review.googlesource.com/c/1406530 Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58771}
-
Sven Sauleau authored
It removes the assertion that caused the bug report by introducing a new trampoline (WasmBigIntToI64) for the conversion code stub between a Bigint object and a Wasm i64 BigIntToI64). The tests were updated to cover calling the stub from a Wasm callsite. Bug: v8:8625 Change-Id: I55891001cfa72f6f2849792293b43bbb54147f1a Reviewed-on: https://chromium-review.googlesource.com/c/1405028 Commit-Queue: Sven Sauleau <ssauleau@igalia.com> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#58767}
-
- 11 Jan, 2019 1 commit
-
-
Mike Stanton authored
Also fix an issue with naming in Array.prototype.filter that wasn't addressed before. Change-Id: I7465eda12e6981f46f6efa2efc81183cbdffea01 Reviewed-on: https://chromium-review.googlesource.com/c/1400847 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#58728}
-