- 25 Jun, 2018 1 commit
-
-
Leszek Swirski authored
Roughly: GetIsolate(): -31 handle(HeapObject): -6 TBR=verwaest@chromium.org Bug: v8:7786 Change-Id: I3857f8c45f1f93c727d575d5f9244d9811949a7f Reviewed-on: https://chromium-review.googlesource.com/1111838Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#53997}
-
- 22 Jun, 2018 1 commit
-
-
Clemens Hammacher authored
The wire bytes are currently stored as {SeqOneByteString} on the JS heap. In order to make the {NativeModule} isolate independent, and to ensure fast access to the wire bytes, they should move to the native heap. R=titzer@chromium.org Bug: chromium:854794, v8:7868, v8:7424 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I36811ec87f780c5b1f6863cd6de89a165aa0b7d5 Reviewed-on: https://chromium-review.googlesource.com/1108208 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53977}
-
- 21 Jun, 2018 1 commit
-
-
Leszek Swirski authored
Bug: v8:7786 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ic00953a5375f60b61a093234c03ce0df41dbe228 Reviewed-on: https://chromium-review.googlesource.com/1110125Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#53944}
-
- 20 Jun, 2018 1 commit
-
-
Clemens Hammacher authored
The reference to the {NativeModule} (stored in a {Managed}) should live on the {WasmModuleObject}, not on the individual {WasmCompiledModule} objects. R=titzer@chromium.org Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I21dfa088c9643d36d9fd5052a145e7e2af5e47f9 Reviewed-on: https://chromium-review.googlesource.com/1106380 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53860}
-
- 14 Jun, 2018 2 commits
-
-
Clemens Hammacher authored
This is a reland of 0909dbe3. Added missing V8_EXPORT_PRIVATE to AndroidLogStream. TBR=mstarzinger@chromium.org Original change's description: > Introduce StdoutStream which prints to Android log or stdout > > The often used construct {OFStream(stdout)} does not work on Android. > This CL introduces an {StdoutStream} which behaves exactly like > {OFStream(stdout)} on non-android platforms, and redirects to the > Android log on appropriate systems and configurations. > > R=mstarzinger@chromium.org > > Bug: v8:7820 > Change-Id: Ia682fdf6d064e37c605c19b032f5a10b96ac825b > Reviewed-on: https://chromium-review.googlesource.com/1088911 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-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@{#53692} Bug: v8:7820 Change-Id: I8164bad78a401dbe4246c9ffcacd050fe511ed58 Reviewed-on: https://chromium-review.googlesource.com/1100636Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53733}
-
Michael Achenbach authored
This reverts commit 0909dbe3. Reason for revert: Blocks roll: https://chromium-review.googlesource.com/c/chromium/src/+/1099143 Original change's description: > Introduce StdoutStream which prints to Android log or stdout > > The often used construct {OFStream(stdout)} does not work on Android. > This CL introduces an {StdoutStream} which behaves exactly like > {OFStream(stdout)} on non-android platforms, and redirects to the > Android log on appropriate systems and configurations. > > R=mstarzinger@chromium.org > > Bug: v8:7820 > Change-Id: Ia682fdf6d064e37c605c19b032f5a10b96ac825b > Reviewed-on: https://chromium-review.googlesource.com/1088911 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-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@{#53692} TBR=mstarzinger@chromium.org,jarin@chromium.org,jgruber@chromium.org,clemensh@chromium.org,bmeurer@chromium.org Change-Id: Iadadd9a0df10dca0fad647138a83db50148e864d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7820 Reviewed-on: https://chromium-review.googlesource.com/1100635Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#53725}
-
- 13 Jun, 2018 2 commits
-
-
Clemens Hammacher authored
The often used construct {OFStream(stdout)} does not work on Android. This CL introduces an {StdoutStream} which behaves exactly like {OFStream(stdout)} on non-android platforms, and redirects to the Android log on appropriate systems and configurations. R=mstarzinger@chromium.org Bug: v8:7820 Change-Id: Ia682fdf6d064e37c605c19b032f5a10b96ac825b Reviewed-on: https://chromium-review.googlesource.com/1088911Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-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@{#53692}
-
Clemens Hammacher authored
For serialization, we do not need the {WasmCompiledModule}. All we need is the {NativeModule}. R=mstarzinger@chromium.org Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Iff7dc9cde3b1ab777028dbafcc1c870e45e28a93 Reviewed-on: https://chromium-review.googlesource.com/1097480Reviewed-by: Ben Titzer <titzer@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53686}
-
- 11 Jun, 2018 1 commit
-
-
Dominik Inführ authored
Emphasize this code handles ephemerons (key-value pairs) and not ephemeral objects (short-lived objects). Bug: chromium:844008 Change-Id: I1dbf97f69ea5d17b1eb446d92dffef0cc3d5d08f Reviewed-on: https://chromium-review.googlesource.com/1095101Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@google.com> Cr-Commit-Position: refs/heads/master@{#53628}
-
- 07 Jun, 2018 2 commits
-
-
Clemens Hammacher authored
With lazy compilation, not every exported function has code assiciated with it. {WasmExportedFunction} provides the function index though, which can be used to check whether code exists and access that code. R=mstarzinger@chromium.org Bug: v8:7758 Change-Id: Id80285fec46bf5be4af49875734aa0fe28d732c9 Reviewed-on: https://chromium-review.googlesource.com/1090273Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53576}
-
Eric Holk authored
This CL adds the simplest version of a trap handler fallback. At instantiation time, we check whether the module was compiled to use trap handlers and the memory is guarded. If the memory is not guarded but the module is supposed to use trap handlers, we recompile the module with bounds checks so that we can use an unguarded memory. The compiled module is replaced with a bounds checking version, meaning future instances from this module will also use bounds checks. Some likely desirable features that are current missing but can be added future CLs include: * Disabling trap handler mode entirely. * Recompiling all old instances so that trap handler and bounds checked code does not coexist in the same process. Bug: v8:7143 Change-Id: I161fc0d544133b07dc4a93cc6af813369aaf3efe Reviewed-on: https://chromium-review.googlesource.com/1018182 Commit-Queue: Eric Holk <eholk@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#53566}
-
- 06 Jun, 2018 1 commit
-
-
Clemens Hammacher authored
On Android, %DebugPrint should output to the Android log instead of stdout. R=mstarzinger@chromium.org Bug: v8:7820 Change-Id: Ia2ab14f1e4ae15914a1e0e721457f83b288683ff Reviewed-on: https://chromium-review.googlesource.com/1088691 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53559}
-
- 31 May, 2018 1 commit
-
-
Dan Elphick authored
Removes all explicit calls to GetIsolate() in runtime/ by passing it through calling function functions and implicit calls via the single argument Handle constructor and handle function. Bug: v8:7786 Change-Id: I96ac2289a72a42c7abb6754418fecb8e03f2bb29 Reviewed-on: https://chromium-review.googlesource.com/1080528 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#53457}
-
- 18 May, 2018 1 commit
-
-
Choongwoo Han authored
Optimize String.p.split for the case when the separator is empty and the subject is a direct one-byte string. Bug: v8:7103 Change-Id: Ica277d2c426679a1f77a1ef8ecb523bd596f65fb Reviewed-on: https://chromium-review.googlesource.com/1045950 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#53260}
-
- 11 May, 2018 1 commit
-
-
Michael Starzinger authored
This makes the fact that export wrapper code is shared across instances explicit by hanging the {export_wrappers} array off the module object instead of the instance-specific {WasmCompiledModule} object. R=titzer@chromium.org Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ic5c73bcc17f759e520c105317361e5654628b99e Reviewed-on: https://chromium-review.googlesource.com/1051987 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53131}
-
- 08 May, 2018 1 commit
-
-
Marja Hölttä authored
- Make FeedbackVector backing store a WeakFixedArray. - "feedback" is always strong but "extra" might be weak. - Whenever the handler stored in FeedbackVector is a WeakCell to a transition Map, replace it with an in-place weak reference. For a more detailed description of the changes, see the design doc https://docs.google.com/document/d/1P8cIme2wKszdYt64ObAiuh6pXgLnrrn80Hpl1ejJbOU/edit#heading=h.ijx1oculrikp BUG=v8:7308 Change-Id: I72c5cf6597ef24d4c22a1fe8e25b67ca196d4ec8 Reviewed-on: https://chromium-review.googlesource.com/1027855 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#53051}
-
- 04 May, 2018 1 commit
-
-
Michael Starzinger authored
This is a reland of a0c57368 Original change's description: > [wasm] Maintain link from Instance to Module. > > This moves the link from a {WasmInstanceObject} to its corresponding > {WasmModuleObject} into the right place and also makes it strong. This > ensures that an instance always keeps the underlying module alive and > hence removes the situation of an "orphaned instance". > > R=clemensh@chromium.org > > Change-Id: Id59f6a49740af8ef0248679c3d2c696bb9776944 > Reviewed-on: https://chromium-review.googlesource.com/1041691 > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52942} Change-Id: I9854400bfc1d22bd258f17118fcb7460cdc3acd5 Reviewed-on: https://chromium-review.googlesource.com/1043786Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#52985}
-
- 03 May, 2018 3 commits
-
-
Bill Budge authored
- Separates measuring from wasm::SerializeNativeModule so caller can allocate or reserve the buffer memory. Call site thus avoid one unnecessary copy. Bug: chromium:719007 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I50412c0c0279114dcdc1aead810ad39e7c4e2a6e Reviewed-on: https://chromium-review.googlesource.com/1039183 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52965}
-
Michael Achenbach authored
This reverts commit a0c57368. Reason for revert: Speculative revert due to failures with custom snapshot: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/builds/19061 Local bisect also points to this change: http://shortn/_IhVxU2FKLu Original change's description: > [wasm] Maintain link from Instance to Module. > > This moves the link from a {WasmInstanceObject} to its corresponding > {WasmModuleObject} into the right place and also makes it strong. This > ensures that an instance always keeps the underlying module alive and > hence removes the situation of an "orphaned instance". > > R=clemensh@chromium.org > > Change-Id: Id59f6a49740af8ef0248679c3d2c696bb9776944 > Reviewed-on: https://chromium-review.googlesource.com/1041691 > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52942} TBR=mstarzinger@chromium.org,clemensh@chromium.org Change-Id: I1830e6ce14314f06f918a0c428182bfd68354ad9 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/1041968Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#52949}
-
Michael Starzinger authored
This moves the link from a {WasmInstanceObject} to its corresponding {WasmModuleObject} into the right place and also makes it strong. This ensures that an instance always keeps the underlying module alive and hence removes the situation of an "orphaned instance". R=clemensh@chromium.org Change-Id: Id59f6a49740af8ef0248679c3d2c696bb9776944 Reviewed-on: https://chromium-review.googlesource.com/1041691Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#52942}
-
- 23 Apr, 2018 3 commits
-
-
Sigurd Schneider authored
This is a reland of 5728b3fb Original change's description: > [builtins] Separate species protectors for Array, TypedArray, Promise > > Previously, there was one species protector for Array, TypedArray and > Promise. This CL splits the protector in three separate ones. This means > that invalidating one of them does not have negative performance > implications for the other ones. > > Bug: chromium:835347, v8:7340 > Change-Id: Id84aa0071f17096192965264eb60ddadd1e8e73f > Reviewed-on: https://chromium-review.googlesource.com/1023408 > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52733} Bug: chromium:835347, v8:7340 Change-Id: I0c0188a0723e206ddb362834bcf872b23cd7666d Reviewed-on: https://chromium-review.googlesource.com/1023811 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#52742}
-
Sigurd Schneider authored
This reverts commit 5728b3fb. Reason for revert: Breaks noi18n build Original change's description: > [builtins] Separate species protectors for Array, TypedArray, Promise > > Previously, there was one species protector for Array, TypedArray and > Promise. This CL splits the protector in three separate ones. This means > that invalidating one of them does not have negative performance > implications for the other ones. > > Bug: chromium:835347, v8:7340 > Change-Id: Id84aa0071f17096192965264eb60ddadd1e8e73f > Reviewed-on: https://chromium-review.googlesource.com/1023408 > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52733} TBR=sigurds@chromium.org,bmeurer@chromium.org Change-Id: Ied8b436e7991c759eb3b98702c142aa127a7e63c No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:835347, v8:7340 Reviewed-on: https://chromium-review.googlesource.com/1024151Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#52736}
-
Sigurd Schneider authored
Previously, there was one species protector for Array, TypedArray and Promise. This CL splits the protector in three separate ones. This means that invalidating one of them does not have negative performance implications for the other ones. Bug: chromium:835347, v8:7340 Change-Id: Id84aa0071f17096192965264eb60ddadd1e8e73f Reviewed-on: https://chromium-review.googlesource.com/1023408 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#52733}
-
- 14 Apr, 2018 1 commit
-
-
Jakob Kummerow authored
The "Address" type is V8's general-purpose type for manipulating memory addresses. Per the C++ spec, pointer arithmetic and pointer comparisons are undefined behavior except within the same array; since we generally don't operate within a C++ array, our general-purpose type shouldn't be a pointer type. Bug: v8:3770 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ib96016c24a0f18bcdba916dabd83e3f24a1b5779 Reviewed-on: https://chromium-review.googlesource.com/988657 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#52601}
-
- 10 Apr, 2018 1 commit
-
-
Ben L. Titzer authored
This class was stateless, other than the frozen-for-testing field, which has been moved to the NativeModule. R=clemensh@chromium.org Change-Id: I68ff2b455a62915904aa4b61710b40e679414c3a Reviewed-on: https://chromium-review.googlesource.com/999536 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52499}
-
- 22 Mar, 2018 4 commits
-
-
Eric Holk authored
When using trap handlers, memory references do not get any checks inserted. This means there is no check for a null memory as happens when the memory size is 0. Normally this would be correctly caught as an out of bounds access, since the low memory addresses are not normally mapped. However, if they were mapped for some reason, we would not catch the out of bounds access. The fix is to ensure WebAssembly instances always have a guard region even if the memory is size 0. This is a rewrite of 5e76ff5a Note that this can lead to a large amount of unnecessary address space usage, so we share a single reservation for empty array buffers. Bug: chromium:769637 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ia8e84be6d595e347d3d342959f2c374db1a3f683 Reviewed-on: https://chromium-review.googlesource.com/702657Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Eric Holk <eholk@chromium.org> Cr-Commit-Position: refs/heads/master@{#52163}
-
Leszek Swirski authored
This is a reland of d8f564ea TBR=mstarzinger@chromium.org,yangguo@chromium.org,jgruber@chromium.org Original change's description: > Reland: Remove SFI code field > > Remove the SharedFunctionInfo code field, inferring the code object > from the function_data field instead. In some cases, the function_data > field can now hold a Code object (e.g. some WASM cases). > > (Reland of https://chromium-review.googlesource.com/952452) > > TBR=mstarzinger@chromium.org > > Bug: chromium:783853 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng > Change-Id: I10ea5be7ceed1b51362a2fad9be7397624d69343 > Reviewed-on: https://chromium-review.googlesource.com/970649 > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52136} Bug: chromium:783853 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I5187851b923e9a92f43daf8cb99e662786cbb839 Reviewed-on: https://chromium-review.googlesource.com/975942 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#52159}
-
Leszek Swirski authored
This reverts commit d8f564ea. Reason for revert: Breaks mac asan (https://build.chromium.org/p/client.v8/builders/V8%20Mac64%20ASAN/builds/17067) Original change's description: > Reland: Remove SFI code field > > Remove the SharedFunctionInfo code field, inferring the code object > from the function_data field instead. In some cases, the function_data > field can now hold a Code object (e.g. some WASM cases). > > (Reland of https://chromium-review.googlesource.com/952452) > > TBR=mstarzinger@chromium.org > > Bug: chromium:783853 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng > Change-Id: I10ea5be7ceed1b51362a2fad9be7397624d69343 > Reviewed-on: https://chromium-review.googlesource.com/970649 > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52136} TBR=yangguo@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,leszeks@chromium.org Change-Id: I348ec7a9d837a7b068fd08312b77e87abf21be7b No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:783853 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/975305Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#52143}
-
Leszek Swirski authored
Remove the SharedFunctionInfo code field, inferring the code object from the function_data field instead. In some cases, the function_data field can now hold a Code object (e.g. some WASM cases). (Reland of https://chromium-review.googlesource.com/952452) TBR=mstarzinger@chromium.org Bug: chromium:783853 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I10ea5be7ceed1b51362a2fad9be7397624d69343 Reviewed-on: https://chromium-review.googlesource.com/970649 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#52136}
-
- 20 Mar, 2018 2 commits
-
-
Leszek Swirski authored
This reverts commit 520b025f. Reason for revert: Breaks internal-snapshot build: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20internal%20snapshot/builds/14603 Original change's description: > Remove SFI code field > > Remove the SharedFunctionInfo code field, inferring the code object > from the function_data field instead. In some cases, the function_data > field can now hold a Code object (e.g. some WASM cases). > > Bug: chromium:783853 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng > Change-Id: I1219a4d6aa5abaa9fee54dda883da7a3186e347a > Reviewed-on: https://chromium-review.googlesource.com/952452 > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52064} TBR=yangguo@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,leszeks@chromium.org,bmeurer@chromium.org,verwaest@chromium.org Change-Id: Iaf464ed29ba4317bbbb255c1aec76fb65cddba84 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:783853 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/970647Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#52066}
-
Leszek Swirski authored
Remove the SharedFunctionInfo code field, inferring the code object from the function_data field instead. In some cases, the function_data field can now hold a Code object (e.g. some WASM cases). Bug: chromium:783853 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I1219a4d6aa5abaa9fee54dda883da7a3186e347a Reviewed-on: https://chromium-review.googlesource.com/952452Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#52064}
-
- 14 Mar, 2018 1 commit
-
-
Michael Starzinger authored
R=clemensh@chromium.org BUG=v8:7549 Change-Id: Ie2d9d9b569b46396e78b3a6c39fe7e36b6090608 Reviewed-on: https://chromium-review.googlesource.com/962247Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#51923}
-
- 09 Mar, 2018 2 commits
-
-
Leszek Swirski authored
This was a shim for the non-I+TF codepath, which is now the only codepath (that still uses this tier-up mechanism anyway). There were a couple of places we were accidentally using it due to CompileLazy or deopts, so this also fixes those. Reland of https://chromium-review.googlesource.com/951490 Change-Id: I1101eeda7b16651610c6f120062771bdc3c8a49f Reviewed-on: https://chromium-review.googlesource.com/957032Reviewed-by: Mythri Alle <mythria@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#51849}
-
Leszek Swirski authored
This reverts commit daa224d4. Reason for revert: https://bugs.chromium.org/p/chromium/issues/detail?id=819873 Original change's description: > [builtins] Remove CheckOptimizationMarker builtin > > This was a shim for the non-I+TF codepath, which is now the only > codepath (that still uses this tier-up mechanism anyway). There were a > couple of places we were accidentally using it due to CompileLazy or > deopts, so this also fixes those. > > Change-Id: I00a7fdf9fb5cf74844138dac62d01ceaaf192e17 > Reviewed-on: https://chromium-review.googlesource.com/951490 > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#51786} TBR=rmcilroy@chromium.org,machenbach@chromium.org,leszeks@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: I80765eb18aaf5086e6db5d5df96f608a317c999f Reviewed-on: https://chromium-review.googlesource.com/957022Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#51829}
-
- 07 Mar, 2018 1 commit
-
-
Leszek Swirski authored
This was a shim for the non-I+TF codepath, which is now the only codepath (that still uses this tier-up mechanism anyway). There were a couple of places we were accidentally using it due to CompileLazy or deopts, so this also fixes those. Change-Id: I00a7fdf9fb5cf74844138dac62d01ceaaf192e17 Reviewed-on: https://chromium-review.googlesource.com/951490 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#51786}
-
- 23 Feb, 2018 1 commit
-
-
jgruber authored
The list of runtime function use counts was generated with: $ grep -o '^ *F(\w*' src/runtime/runtime.h | sed 's/^ *F(//' | sort | while read f; do USE_COUNT=$(git grep "\(Runtime::k\|Runtime::kInline\|%\|%_\)$f" | wc -l); echo $USE_COUNT $f; done This reduces libv8.so size by 59K on an x64 release build. Bug: v8:7310 Change-Id: Ib4d097e63ed065f41bf73e9529e4354575be5229 Reviewed-on: https://chromium-review.googlesource.com/934272Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#51526}
-
- 22 Feb, 2018 1 commit
-
-
Benedikt Meurer authored
This is preparatory cleanup work for eventually tracking the functions (rather than concrete closures) in the CALL_IC, also for builtins like the default PromiseCapability [[Resolve]] and [[Reject]] functions. It adds a new FeedbackCell type, which is used by JSFunctions consistently now to reference the feedback vector (or undefined if not the function is not compiled yet or is a native/asm.js function). This also changes the calling convention for FastNewClosure builtin and the JSCreateClosure operator in TurboFan to carry the FeedbackCell here instead of the parent FeedbackVector and the slot index. In addition we eliminate the now unused %InterpreterNewClosure runtime function. Bug: v8:2206, v8:7253, v8:7310 Change-Id: Ib4ce456e276e0273e57c163dcdd0b33abf863656 Reviewed-on: https://chromium-review.googlesource.com/928403 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#51474}
-
- 05 Feb, 2018 1 commit
-
-
Andreas Haas authored
The test required a special runtime function, which did not work in general but only in the context of that one test. After an offline discussion we decided that what the test is testing is not worth a runtime function, since we would also see in other tests if something goes wrong. R=clemensh@chromium.org Bug: v8:7403 Change-Id: I129a189a9df299d409a4a555eae28783e47b97d1 Reviewed-on: https://chromium-review.googlesource.com/901284Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#51095}
-
- 01 Feb, 2018 1 commit
-
-
Michaël Zasso authored
See https://chromium-review.googlesource.com/c/v8/v8/+/869932 Bug: v8:6972 Change-Id: I012210a31265adb7f7038a9b447f24e2d40ebca7 Reviewed-on: https://chromium-review.googlesource.com/895762Reviewed-by: Franziska Hinkelmann <franzih@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Franziska Hinkelmann <franzih@chromium.org> Cr-Commit-Position: refs/heads/master@{#51022}
-
- 31 Jan, 2018 1 commit
-
-
Mike Stanton authored
The FeedbackNexus classes initially were one-to-one with IC classes, but over time this got out of date. We also found Nexus' useful, so we made more classes even for cases that weren't ICs. The inheritence and polymorphism became confusing and led to duplication. Better, to just talk about a (single) FeedbackNexus. Bug: v8:7344 Change-Id: I509dc9657895d56c3859de6e6589695cdff9e73e Reviewed-on: https://chromium-review.googlesource.com/890452 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Franziska Hinkelmann <franzih@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#50997}
-