- 07 May, 2019 1 commit
-
-
Milad Farazmand authored
Port 0a0d70eb R=sigurds@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Id4a864b95368c392de8b363076114cd36c463397 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598549Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#61306}
-
- 25 Apr, 2019 1 commit
-
-
Irina Yatsenko authored
AllocationMemento, CoverageInfo, DebugInfo, DescriptorArray, FeedbackCell, FeedbackVector Bug: v8:8952 Change-Id: I17297706a8d9bd4a0ee01b0b133ca613dbc31cf9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1521910 Commit-Queue: Irina Yatsenko <irinayat@microsoft.com> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#61026}
-
- 08 Apr, 2019 2 commits
-
-
Francis McCabe authored
This reverts commit a1fdd521. Reason for revert: <INSERT REASONING HERE> Original change's description: > Torquefy a few more types > > WeakFixedArray, WeakArrayList, JSFinalizationGroup, JSFinalizationGroupCleanupIterator, WeakCell, JSWeakRef, BytecodeArray, SourcePositionWithFrameCache > > Bug: v8:8952 > > Change-Id: I9708b08e11603977aeab7bce94b8233a41700ccb > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1504433 > Commit-Queue: Irina Yatsenko <irinayat@microsoft.com> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60688} TBR=rmcilroy@chromium.org,jgruber@chromium.org,irinayat@microsoft.com Change-Id: I55b3571763ea054e47d8bef855769e8ca9a1545d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8952 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1559210Reviewed-by:
Francis McCabe <fgm@chromium.org> Commit-Queue: Francis McCabe <fgm@chromium.org> Cr-Commit-Position: refs/heads/master@{#60689}
-
Irina Yatsenko authored
WeakFixedArray, WeakArrayList, JSFinalizationGroup, JSFinalizationGroupCleanupIterator, WeakCell, JSWeakRef, BytecodeArray, SourcePositionWithFrameCache Bug: v8:8952 Change-Id: I9708b08e11603977aeab7bce94b8233a41700ccb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1504433 Commit-Queue: Irina Yatsenko <irinayat@microsoft.com> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#60688}
-
- 27 Mar, 2019 1 commit
-
-
Milad Farazmand authored
Port: 7629afdb Original Commit Message: Allocate feedback vectors lazily when the function's interrupt budget has reached a specified threshold. This cl introduces a new field in the ClosureFeedbackCellArray to track the interrupt budget for allocating feedback vectors. Using the interrupt budget on the bytecode array could cause problems when there are closures across native contexts and we may delay allocating feedback vectors in one of them causing unexpected performance cliffs. In the long term we may want to remove interrupt budget from bytecode array and use context specific budget for tiering up decisions as well. Change-Id: I261a7f7cedbdaa3be2d0cf22bfa701598f749fd9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1539794Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#60479}
-
- 07 Mar, 2019 1 commit
-
-
Junliang Yan authored
Change-Id: I71a347673f656ba7cdb33d5094277f8cac6f4a7c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1508820 Auto-Submit: Junliang Yan <jyan@ca.ibm.com> Reviewed-by:
Milad Farazmand <miladfar@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#60105}
-
- 01 Mar, 2019 1 commit
-
-
Junliang Yan authored
Port 4f62b4bb Original Commit Message: This is a port of the improvements to the ArgumentsAdaptorTrampoline that previously landed for x64. It skips the arguments adaptor frame creation if the callee cannot observe the actual arguments (as indicated by the "is_safe_to_skip_arguments_adaptor" bit on the SharedFunctionInfo), and instead just massages the current stack frame appropriately (either by pushing more undefineds in case of under application, or by removing the superfluous arguments in case of over application). R=bmeurer@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com, miladfar@ca.ibm.com BUG= LOG=N Change-Id: I94824c4b3d94f7c93c7526c865b82649426cd3a4 Reviewed-on: https://chromium-review.googlesource.com/c/1495014Reviewed-by:
Milad Farazmand <miladfar@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#59974}
-
- 25 Feb, 2019 1 commit
-
-
Junliang Yan authored
Port 591408cb Original Commit Message: We'll need one bit in the SharedFunctionInfo::flags to record whether it's safe to skip arguments adaptor frames (for v8:8895), so this just removes the SharedFunctionInfo::IsDerivedConstructorBit which is redundant, since the same information is already available in the SharedFunctionInfo::FunctionKindBits, and most places in the code use that already, with the exception of the JSConstructStubGeneric builtin. This changes the JSConstructStubGeneric builtin to just check the function kind instead of testing the explicit bit, which also makes this more consistent. It seems like there's not much overhead to that, doing an additional bitmasking plus two comparisons instead of one. This shouldn't really matter since invocation and execution of the constructors is going to dominate and optimized code inlines all of this anyways. If this turns out to affect performance, we can still look into encoding the FunctionKindBits more cleverly. the shift when accessing the function kind. This seems logic, since for the actual boolean bit fields it doesn't matter where they are in the flags, whereas for the function kind this saves one shift. R=bmeurer@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com, miladfar@ca.ibm.com BUG= LOG=N Change-Id: I4e3ba5a066285bf50e869c32228d79d26d57258f Reviewed-on: https://chromium-review.googlesource.com/c/1486411Reviewed-by:
Milad Farazmand <miladfar@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#59837}
-
- 15 Feb, 2019 1 commit
-
-
Jakob Kummerow authored
This takes heap-inl.h out of the "Giant Include Cluster". Naturally, that means adding a bunch of explicit includes in a bunch of places that relied on transitively including them before. As of this patch, no header file outside src/heap/ includes heap-inl.h. Bug: v8:8562,v8:8499 Change-Id: I65fa763f90e66afc30d105b9277792721f05a6d4 Reviewed-on: https://chromium-review.googlesource.com/c/1459659 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#59617}
-
- 13 Feb, 2019 1 commit
-
-
Junliang Yan authored
Port c142e0a2 Original Commit Message: Refactor the CallApiCallback builtin to - pass the context as with other stubs, and - pass holder and call data in registers. This avoids having to place holder and call data onto the stack, and thus makes it possible to easily call the CallApiCallback builtin from other builtins while just forwarding the (stack) arguments. The idea is to use this in the future to optimize the general case of calling into any API method via a FunctionTemplateInfo and doing appropriate security and/or interface checks upfront as necessary (eventually making the HandleApiCall C++ builtin obsolete at some point). R=bmeurer@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Ic6c246bb28a6affa6fe015c1207c773b375a2b30 Reviewed-on: https://chromium-review.googlesource.com/c/1470443Reviewed-by:
Milad Farazmand <miladfar@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#59562}
-
- 08 Feb, 2019 1 commit
-
-
Gus Caplan authored
This is a reland of d7def900 Original change's description: > Reland "[builtins] [turbofan] Refactor Float64Pow to use single implementation" > > This is a reland of I968a08cef6a6d49350aa79185b2c6fb856d15f23 > > Original change's description: > > [builtins] [turbofan] Refactor Float64Pow to use single implementation > > > > Remove platform-specific Float64Pow implementations and utils Pow in > > favor of a base::ieee754::pow implementation. > > > > This unifies the implementation of pow for the compiler, wasm, and > > runtime. > > > > Bug: v8:5848, v8:5086 > > Change-Id: I968a08cef6a6d49350aa79185b2c6fb856d15f23 > > Reviewed-on: https://chromium-review.googlesource.com/c/1403018 > > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > > Reviewed-by: Georg Neis <neis@chromium.org> > > Reviewed-by: Yang Guo <yangguo@chromium.org> > > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#59229} > > Bug: v8:5848, v8:5086 > Change-Id: I92f22ae03adafd9ad042e8d4bb406cbd5b5fb51e > Cq-Include-Trybots: luci.chromium.try:linux_chromium_ubsan_rel_ng > Reviewed-on: https://chromium-review.googlesource.com/c/1447854 > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#59411} Tbr: neis@chromium.org, bmeurer@chromium.org, jkummerow@chromium.org Bug: v8:5848, v8:5086 Change-Id: I42972b29b8830ed47a00b2b1d408d3005a810c0e Cq-Include-Trybots: luci.chromium.try:linux_chromium_ubsan_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/1456302Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#59454}
-
- 06 Feb, 2019 2 commits
-
-
Sigurd Schneider authored
This reverts commit d7def900. Reason for revert: Breaks UBSan: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux64%20UBSan/4542 Besides undefined behavior, things were looking good! Original change's description: > Reland "[builtins] [turbofan] Refactor Float64Pow to use single implementation" > > This is a reland of I968a08cef6a6d49350aa79185b2c6fb856d15f23 > > Original change's description: > > [builtins] [turbofan] Refactor Float64Pow to use single implementation > > > > Remove platform-specific Float64Pow implementations and utils Pow in > > favor of a base::ieee754::pow implementation. > > > > This unifies the implementation of pow for the compiler, wasm, and > > runtime. > > > > Bug: v8:5848, v8:5086 > > Change-Id: I968a08cef6a6d49350aa79185b2c6fb856d15f23 > > Reviewed-on: https://chromium-review.googlesource.com/c/1403018 > > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > > Reviewed-by: Georg Neis <neis@chromium.org> > > Reviewed-by: Yang Guo <yangguo@chromium.org> > > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#59229} > > Bug: v8:5848, v8:5086 > Change-Id: I92f22ae03adafd9ad042e8d4bb406cbd5b5fb51e > Cq-Include-Trybots: luci.chromium.try:linux_chromium_ubsan_rel_ng > Reviewed-on: https://chromium-review.googlesource.com/c/1447854 > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#59411} TBR=jkummerow@chromium.org,jarin@chromium.org,neis@chromium.org,jgruber@chromium.org,clemensh@chromium.org,bmeurer@chromium.org,me@gus.host Change-Id: I65c4bbd3ab7aaa1c396d182467c5a1fe6a639df5 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:5848, v8:5086 Cq-Include-Trybots: luci.chromium.try:linux_chromium_ubsan_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/1456107Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#59419}
-
Gus Caplan authored
This is a reland of I968a08cef6a6d49350aa79185b2c6fb856d15f23 Original change's description: > [builtins] [turbofan] Refactor Float64Pow to use single implementation > > Remove platform-specific Float64Pow implementations and utils Pow in > favor of a base::ieee754::pow implementation. > > This unifies the implementation of pow for the compiler, wasm, and > runtime. > > Bug: v8:5848, v8:5086 > Change-Id: I968a08cef6a6d49350aa79185b2c6fb856d15f23 > Reviewed-on: https://chromium-review.googlesource.com/c/1403018 > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#59229} Bug: v8:5848, v8:5086 Change-Id: I92f22ae03adafd9ad042e8d4bb406cbd5b5fb51e Cq-Include-Trybots: luci.chromium.try:linux_chromium_ubsan_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/1447854 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#59411}
-
- 05 Feb, 2019 1 commit
-
-
Junliang Yan authored
R=joransiu@ca.ibm.com Change-Id: I20d53b99ac65817b24b1b1f87bfec1910e21d37b Reviewed-on: https://chromium-review.googlesource.com/c/1454264Reviewed-by:
Milad Farazmand <miladfar@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#59380}
-
- 31 Jan, 2019 2 commits
-
-
Georg Neis authored
This reverts commit 595aafeb. Reason for revert: https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8922824501209195616/+/steps/Mozilla/0/logs/15.8.2.13/0 Original change's description: > [builtins] [turbofan] Refactor Float64Pow to use single implementation > > Remove platform-specific Float64Pow implementations and utils Pow in > favor of a base::ieee754::pow implementation. > > This unifies the implementation of pow for the compiler, wasm, and > runtime. > > Bug: v8:5848, v8:5086 > Change-Id: I968a08cef6a6d49350aa79185b2c6fb856d15f23 > Reviewed-on: https://chromium-review.googlesource.com/c/1403018 > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#59229} TBR=yangguo@chromium.org,jarin@chromium.org,neis@chromium.org,clemensh@chromium.org,me@gus.host Change-Id: I266df4b8350cfcebcea8f6063ad75ad962381105 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:5848, v8:5086 Reviewed-on: https://chromium-review.googlesource.com/c/1447715Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#59232}
-
Clemens Hammacher authored
Remove platform-specific Float64Pow implementations and utils Pow in favor of a base::ieee754::pow implementation. This unifies the implementation of pow for the compiler, wasm, and runtime. Bug: v8:5848, v8:5086 Change-Id: I968a08cef6a6d49350aa79185b2c6fb856d15f23 Reviewed-on: https://chromium-review.googlesource.com/c/1403018 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#59229}
-
- 17 Jan, 2019 2 commits
-
-
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}
-
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}
-
- 15 Jan, 2019 1 commit
-
-
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 1 commit
-
-
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}
-
- 10 Jan, 2019 1 commit
-
-
tzik authored
This moves |root_register_value| parameter of JSEntryFunction to the first. I.e. the type of entry function will be changed from Object*(Object* new_target, Object* target, Object* receiver, int argc, Object*** args, Address root_register_value) to Object*(Address root_register_value, Object* new_target, Object* target, Object* receiver, int argc, Object*** args), and moves all parameter handling except for |root_register_value| from JSEntryVariant to JSEntryTrampolineHelper. This is a preparation to add another JS entry point for RunMicrotasks, whose type will be Object*(Address root_register_value, MicrotaskQueue*). The new entry point requires |root_register_value| to be the first to share the implementation of the EntryFrame setup with existing ones. Bug: v8:8124 Change-Id: I675376a2ccd240f61cf04eea6fe9a91031e06ede Reviewed-on: https://chromium-review.googlesource.com/c/1372857 Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58683}
-
- 08 Jan, 2019 1 commit
-
-
tzik authored
|argc| parameter of JSEntry is passed as int from C++ code, and loaded into a register on the asm code. As int is 32 bit, and registers are 64 bit on 64 bit platforms, upper 32 bits of the loaded value may be contaminated by a random value if it's passed as a stack parameter. For now, |argc| is passed as a register parameter on all platforms, and the upper 32 bits of |argc| is filled by zero, fortunately. However, if we shuffle the order of parameters, |argc| can be passed as a stack parameter and its value may be broken. Specifically on x64 Windows, the first 4 parameters are passed as register parameters and the rest are stack parameters. As |argc| is the 4th parameter, if we prepend another parameter and shift |argc| to the 5th parameter, |argc| will become a stack parameter and its load to 64 bit register breaks the value. This CL converts the type of the |argc| parameter to intptr_t, so that it's safe to load from stack to full width registers. Bug: v8:8124 Change-Id: Ie7407cf5e6252ed7323a9c42389db387b0064673 Reviewed-on: https://chromium-review.googlesource.com/c/1400326Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#58614}
-
- 07 Jan, 2019 1 commit
-
-
Junliang Yan authored
Port ccc068d5 Original Commit Message: This CL does two things: 1. It introduces Call/JumpCodeObject as the bottleneck for all calls to non-heap-constant Code objects; and 2. it dispatches directly to the off-heap entry point for all embedded code. Codegen at runtime remains unchanged to preserve the shorter, branch-less calling sequence. R=jgruber@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I282a5711fdd481a1fde3569e72f0a6141ebcdf2a Reviewed-on: https://chromium-review.googlesource.com/c/1396501 Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58596}
-
- 03 Jan, 2019 3 commits
-
-
Junliang Yan authored
Port 42b4180d Original Commit Message: The simulated C++ signature for generated code entry points should rely on primitive values (as opposed to ObjectPtr). R=jkummerow@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I55c67e8d42d97b45d5b0eb878ddd6ab3cf872942 Reviewed-on: https://chromium-review.googlesource.com/c/1394755Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58533}
-
Junliang Yan authored
Port 640d3adf Original Commit Message: InternalPackedArray now only has one constructor variant that expects no arguments (Chrome's only usage of InternalPackedArray). As such, these TFC builtins are no longer used and were removed: - InternalArrayNoArgumentConstructor_Holey - InternalArraySingleArgumentConstructor_Packed - InternalArraySingleArgumentConstructor_Holey On x64.release, this reduces builtins size by ~1.2KB. R=peter.wm.wong@gmail.com, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I46d86178c33e47acf2fb75fd3de743686641caa1 Reviewed-on: https://chromium-review.googlesource.com/c/1393825Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58509}
-
Junliang Yan authored
Port a55803a1 Original Commit Message: This change makes the SFI to bytecode link pseudo-weak. The marking visitors check whether the bytecode is old, and if so, don't mark it and instead push the SFI onto a bytecode_flushing_candidates worklist. Once marking is complete, this list is walked, and for any of the candidates who's bytecode has not been marked (i.e., is only referenced by the shared function info), the bytecode is flushed and the SFI has the function data replaced with an UncompiledData (which overwrites the flushed bytecode array). Since we don't track JSFunctions, these can still think the underlying function is compiled, and so calling them will invoke InterpreterEntryTrampoline. As such, logic is added to InterpreterEntryTrampoline to detect flushed functions, and enter CompileLazy instead. R=rmcilroy@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG=v8:8395 LOG=N Change-Id: I4a913d318363a584d79aa6d7f4ee09f04a89bbbe Reviewed-on: https://chromium-review.googlesource.com/c/1393824Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58508}
-
- 02 Jan, 2019 3 commits
-
-
Junliang Yan authored
Port 24e76616 Original Commit Message: This is a reland of f849396c Original change's description: > [nojit] Remove code stubs > > All stubs have been migrated to builtins. This CL removes most related > code. > > Bug: v8:7777, v8:5784 > Change-Id: I4470cfef34788e6c8e0fd5fd09e40e250d088dad > Reviewed-on: https://chromium-review.googlesource.com/c/1365284 > Commit-Queue: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58093} R=jgruber@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Ie05463245c24975804a8bb7ffdf902c70e042127 Reviewed-on: https://chromium-review.googlesource.com/c/1393302Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58504}
-
Junliang Yan authored
Port b89d4249 Original Commit Message: This migrates the JSEntryStub to three dedicated builtins: JSEntry JSConstructEntry JSRunMicrotasksEntry correct macro assembler method to load and store external references through the kRootRegister). kRootRegister is initialized, so we first reserve the slot and later load its value. R=jgruber@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Ib84feca5e88d032307b5fab42377c56d074faf7f Reviewed-on: https://chromium-review.googlesource.com/c/1393296Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58503}
-
Vasili Skurydzin authored
Related: c6b0e12e [nojit] Refactor CallApiCallback calling convention a31338aa PPC/s390: [nojit] Refactor CallApiCallback calling convention Change-Id: I8f96c7b9a32ba3dde9dbbabb115d79fa36a0db46 Reviewed-on: https://chromium-review.googlesource.com/c/1380991Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58496}
-
- 21 Dec, 2018 3 commits
-
-
Sigurd Schneider authored
This is a reland of f63a657e Original change's description: > [deoptimizer] Refactor GenerateDeoptimizationEntries > > This reduces preprocessor-expanded source size by 64,359 from > > gen ( 21 files): 71,570 to 1,613,100 ( 23x) > src ( 624 files): 367,830 to 52,964,659 ( 144x) > test ( 392 files): 490,924 to 37,360,916 ( 76x) > third_party ( 432 files): 239,085 to 9,547,902 ( 40x) > total ( 1521 files): 1,184,093 to 102,461,098 ( 87x) > > to > > gen ( 21 files): 71,570 to 1,613,100 ( 23x) > src ( 624 files): 367,837 to 52,919,005 ( 144x) > test ( 392 files): 490,924 to 37,342,211 ( 76x) > third_party ( 432 files): 239,085 to 9,547,902 ( 40x) > total ( 1521 files): 1,184,100 to 102,396,739 ( 86x) > > Bug: v8:8562 > Change-Id: Iee474e22ababa1e080b8d6359af4d0076903e59a > Reviewed-on: https://chromium-review.googlesource.com/c/1384091 > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58424} TBR=jarin@chromium.org,ulan@chromium.org Bug: v8:8562 Change-Id: I7a8a350414941f49c6155ff43e36e0cb0b2006e5 Reviewed-on: https://chromium-review.googlesource.com/c/1387497Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58437}
-
Sigurd Schneider authored
This reverts commit f63a657e. Reason for revert: breaks compile on lite mode: https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8926535782549686576/+/steps/build/0/steps/compile/0/stdout Original change's description: > [deoptimizer] Refactor GenerateDeoptimizationEntries > > This reduces preprocessor-expanded source size by 64,359 from > > gen ( 21 files): 71,570 to 1,613,100 ( 23x) > src ( 624 files): 367,830 to 52,964,659 ( 144x) > test ( 392 files): 490,924 to 37,360,916 ( 76x) > third_party ( 432 files): 239,085 to 9,547,902 ( 40x) > total ( 1521 files): 1,184,093 to 102,461,098 ( 87x) > > to > > gen ( 21 files): 71,570 to 1,613,100 ( 23x) > src ( 624 files): 367,837 to 52,919,005 ( 144x) > test ( 392 files): 490,924 to 37,342,211 ( 76x) > third_party ( 432 files): 239,085 to 9,547,902 ( 40x) > total ( 1521 files): 1,184,100 to 102,396,739 ( 86x) > > Bug: v8:8562 > Change-Id: Iee474e22ababa1e080b8d6359af4d0076903e59a > Reviewed-on: https://chromium-review.googlesource.com/c/1384091 > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58424} TBR=ulan@chromium.org,jarin@chromium.org,sigurds@chromium.org Change-Id: I06e6f95255a3cea6a428713e9e841781425dffe8 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8562 Reviewed-on: https://chromium-review.googlesource.com/c/1387494Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58425}
-
Sigurd Schneider authored
This reduces preprocessor-expanded source size by 64,359 from gen ( 21 files): 71,570 to 1,613,100 ( 23x) src ( 624 files): 367,830 to 52,964,659 ( 144x) test ( 392 files): 490,924 to 37,360,916 ( 76x) third_party ( 432 files): 239,085 to 9,547,902 ( 40x) total ( 1521 files): 1,184,093 to 102,461,098 ( 87x) to gen ( 21 files): 71,570 to 1,613,100 ( 23x) src ( 624 files): 367,837 to 52,919,005 ( 144x) test ( 392 files): 490,924 to 37,342,211 ( 76x) third_party ( 432 files): 239,085 to 9,547,902 ( 40x) total ( 1521 files): 1,184,100 to 102,396,739 ( 86x) Bug: v8:8562 Change-Id: Iee474e22ababa1e080b8d6359af4d0076903e59a Reviewed-on: https://chromium-review.googlesource.com/c/1384091Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58424}
-
- 17 Dec, 2018 3 commits
-
-
Jakob Kummerow authored
Along with HeapNumberBase and MutableHeapNumber, of course. Bug: v8:5402 Change-Id: I14a7f8052de3839cad36bb7e4ebb6da38b2ac096 Reviewed-on: https://chromium-review.googlesource.com/c/1379884 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58293}
-
Jakob Kummerow authored
Bug: v8:5402 Change-Id: Ifdbc61eb401160d03b98336292f1725d604e7f51 Reviewed-on: https://chromium-review.googlesource.com/c/1379936 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#58283}
-
Jakob Kummerow authored
Bug: v8:5402 Change-Id: Ibaf91722165df830fd14b3b4a659802bce809bf1 Reviewed-on: https://chromium-review.googlesource.com/c/1379873Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#58275}
-
- 12 Dec, 2018 1 commit
-
-
peterwmwong authored
InternalPackedArray now only has one constructor variant that expects no arguments (Chrome's only usage of InternalPackedArray). As such, these TFC builtins are no longer used and were removed: - InternalArrayNoArgumentConstructor_Holey - InternalArraySingleArgumentConstructor_Packed - InternalArraySingleArgumentConstructor_Holey On x64.release, this reduces builtins size by ~1.2KB. Bug: v8:7624 Change-Id: I7316608dc02b1e09e9e414ee1aeb1fb08410c6f6 Reviewed-on: https://chromium-review.googlesource.com/c/1372772 Commit-Queue: Peter Wong <peter.wm.wong@gmail.com> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58193}
-
- 07 Dec, 2018 2 commits
-
-
Junliang Yan authored
Port 8c7a29b2 Original Commit Message: This addresses follow-up comments to https://crrev.com/c/1354887/. Use DCHECKs instead of CHECKs and make the branch order consistent across architectures. R=jgruber@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Ic974e31905e15d91efae026837095693f0c01b66 Reviewed-on: https://chromium-review.googlesource.com/c/1365681 Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58104}
-
Junliang Yan authored
Port bec0234f Original Commit Message: been converted to builtins themselves and are thus immovable. R=jgruber@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I5e08b7a894ab72647028735521d7851b15ef5f12 Reviewed-on: https://chromium-review.googlesource.com/c/1363566Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58097}
-
- 05 Dec, 2018 1 commit
-
-
Junliang Yan authored
Port cfdf6ff8 R=jgruber@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I8821b82f181a44b70272d770703136983d821d1c Reviewed-on: https://chromium-review.googlesource.com/c/1363449Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58054}
-
- 26 Nov, 2018 1 commit
-
-
Jakob Gruber authored
The ProfileEntryHookStub is no longer used and can be removed. Bug: v8:7777, v8:8503 Change-Id: I4ccd75d38cfee3e7963338d5d8213915db9be4a9 Reviewed-on: https://chromium-review.googlesource.com/c/1349191 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#57823}
-