- 07 Dec, 2018 3 commits
-
-
Jakob Gruber authored
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} Tbr: mstarzinger@chromium.org,yangguo@chromium.org,jkummerow@chromium.org,bmeurer@chromium.org Bug: v8:7777, v8:5784 Change-Id: I005ee2a820d49a75a90481d262a310e4ccfd1391 Reviewed-on: https://chromium-review.googlesource.com/c/1367746Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58101}
-
Jakob Gruber authored
This reverts commit f849396c. Reason for revert: arm64: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/24229 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} TBR=jkummerow@chromium.org,yangguo@chromium.org,mstarzinger@chromium.org,jarin@chromium.org,jgruber@chromium.org,bmeurer@chromium.org Change-Id: I52c3abd3f4e5872fe26ed7e527a58b118e02b387 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7777, v8:5784 Reviewed-on: https://chromium-review.googlesource.com/c/1367804Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58095}
-
Jakob Gruber authored
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}
-
- 04 Dec, 2018 4 commits
-
-
Sigurd Schneider authored
This reverts commit ed3d6472. Reason for revert: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20noi18n%20-%20debug/24178 Original change's description: > Reland "[code-comments] Put code comments into the code object" > > This is a reland of e774cffe > > This reland disables a test as v8:8548 is blocking it, which was > broken by a recent CL. CQ did not catch this because the merge-base > CQ used did not yet contain the CL that caused v8:8548. > > Original change's description: > > [code-comments] Put code comments into the code object > > > > Code comments in the snapshot can now be enabled with gn > > arg 'v8_enable_snapshot_code_comments' > > > > Bug: v8:7989 > > Change-Id: I8bd00cafa63132d00d849394c311ba15e6b6daf3 > > Reviewed-on: https://chromium-review.googlesource.com/c/1329173 > > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#58020} > > TBR=mvstanton@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,tebbi@chromium.org > > Bug: v8:7989, v8:8548 > Change-Id: I464fc897205fefdf2dfc2eadc54d699c4e08a0e9 > Reviewed-on: https://chromium-review.googlesource.com/c/1361166 > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58028} TBR=mvstanton@chromium.org,mstarzinger@chromium.org,sigurds@chromium.org,jgruber@chromium.org Change-Id: I1075bb09de7cb8dad71e31ff51a4e7bb6a200a8b No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7989, v8:8548 Reviewed-on: https://chromium-review.googlesource.com/c/1362043Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58029}
-
Sigurd Schneider authored
This is a reland of e774cffe This reland disables a test as v8:8548 is blocking it, which was broken by a recent CL. CQ did not catch this because the merge-base CQ used did not yet contain the CL that caused v8:8548. Original change's description: > [code-comments] Put code comments into the code object > > Code comments in the snapshot can now be enabled with gn > arg 'v8_enable_snapshot_code_comments' > > Bug: v8:7989 > Change-Id: I8bd00cafa63132d00d849394c311ba15e6b6daf3 > Reviewed-on: https://chromium-review.googlesource.com/c/1329173 > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58020} TBR=mvstanton@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,tebbi@chromium.org Bug: v8:7989, v8:8548 Change-Id: I464fc897205fefdf2dfc2eadc54d699c4e08a0e9 Reviewed-on: https://chromium-review.googlesource.com/c/1361166Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58028}
-
Leszek Swirski authored
This reverts commit e774cffe. Reason for revert: Breaks OptimizeForSize tests https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8928056438104852432/+/steps/OptimizeForSize/0/logs/TestCodeAssemblerCode../0 Original change's description: > [code-comments] Put code comments into the code object > > Code comments in the snapshot can now be enabled with gn > arg 'v8_enable_snapshot_code_comments' > > Bug: v8:7989 > Change-Id: I8bd00cafa63132d00d849394c311ba15e6b6daf3 > Reviewed-on: https://chromium-review.googlesource.com/c/1329173 > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58020} TBR=mvstanton@chromium.org,mstarzinger@chromium.org,sigurds@chromium.org,jgruber@chromium.org Change-Id: Ie336a99218db4def848bd5c8c58dfb66f0e372b2 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7989 Reviewed-on: https://chromium-review.googlesource.com/c/1361165Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#58021}
-
Sigurd Schneider authored
Code comments in the snapshot can now be enabled with gn arg 'v8_enable_snapshot_code_comments' Bug: v8:7989 Change-Id: I8bd00cafa63132d00d849394c311ba15e6b6daf3 Reviewed-on: https://chromium-review.googlesource.com/c/1329173 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#58020}
-
- 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}
-
- 20 Nov, 2018 1 commit
-
-
Clemens Hammacher authored
This adds a {PrintRegister} method which prints the given register in a readable way (e.g. "eax", ... on ia32). This is currently only used in Liftoff. The {RegisterConfiguration} class has the same functionality, and I plan to make {RegisterConfiguration} also use the new {RegisterName} functions in a follow-up CL. R=mstarzinger@chromium.org Bug: v8:8238, v8:8423, v8:6600 Change-Id: If03901f1d8c5b043e0097e63920ab711bd7e2d17 Reviewed-on: https://chromium-review.googlesource.com/c/1340041Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#57646}
-
- 12 Nov, 2018 1 commit
-
-
Jakob Kummerow authored
Bug: v8:3770 Change-Id: I413ce57f7fa91cef2445995ca22650477f92b0df Reviewed-on: https://chromium-review.googlesource.com/c/1321892Reviewed-by:
Dan Elphick <delphick@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#57445}
-
- 05 Nov, 2018 1 commit
-
-
Jakob Kummerow authored
and split Smi out of objects.h into smi.h. Bug: v8:3770, v8:5402 Change-Id: I5ff7461495d29c785a76c79aca2616816a29ab1e Reviewed-on: https://chromium-review.googlesource.com/c/1313035Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#57252}
-
- 31 Oct, 2018 3 commits
-
-
Jakob Kummerow authored
and reland "[ubsan] More Object** replacements" This reverts commit 162d4e6d. Reason for revert: Not the culprit, test failed before. Original change's description: > Revert "[ubsan] Replace Object** in GlobalHandles" > > This reverts commit 93927279. > > Reason for revert: Speculative revert, seems the most probable cause of > https://bugs.chromium.org/p/v8/issues/detail?id=8396 > > Revert "[ubsan] More Object** replacements" > > This reverts commit 5cce694d. > > Speculative revert. > > NOTRY=true > > Bug: v8:8396 > Change-Id: I9c2866a9db707cd03e4cf90822acde20813cebf0 > Reviewed-on: https://chromium-review.googlesource.com/c/1309761 > Commit-Queue: Maya Lekova <mslekova@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57174} TBR=yangguo@chromium.org,mstarzinger@chromium.org,mslekova@chromium.org Bug: v8:8396 Change-Id: I64fc80804b4ec324cef80ac528d08b724963f7f7 Reviewed-on: https://chromium-review.googlesource.com/c/1311813Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#57194}
-
Maya Lekova authored
This reverts commit 93927279. Reason for revert: Speculative revert, seems the most probable cause of https://bugs.chromium.org/p/v8/issues/detail?id=8396 Revert "[ubsan] More Object** replacements" This reverts commit 5cce694d. Speculative revert. NOTRY=true Bug: v8:8396 Change-Id: I9c2866a9db707cd03e4cf90822acde20813cebf0 Reviewed-on: https://chromium-review.googlesource.com/c/1309761 Commit-Queue: Maya Lekova <mslekova@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57174}
-
Jakob Kummerow authored
mostly in HandleScopeImplementer and related classes. Bug: v8:3770 Change-Id: I9da757c60be99434b711fe74a5f5d296a0f08b22 Reviewed-on: https://chromium-review.googlesource.com/c/1300854 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57154}
-
- 26 Oct, 2018 1 commit
-
-
Jakob Gruber authored
This CL restores consistency with other platforms. ebx is now the kRootRegister on ia32, and thus not an allocatable register any more. The PreserveRootIA32 register configuration can be removed since it is now identical to the Default configuration. Bug: v8:6666 Change-Id: If4e2b4c52aa8b5db40bcd3b4469004b29c0e3d99 Reviewed-on: https://chromium-review.googlesource.com/c/1299078 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#57018}
-
- 22 Oct, 2018 1 commit
-
-
Jakob Gruber authored
This removes a bunch of porting helpers, e.g. scopes that mark the addressability of ebx, printing embedded builtin candidates, and the call/jump mechanism through a virtual target register. This also disables root register verification by default on ia32. It can be completely removed in a bit. Bug: v8:6666 Change-Id: I4705d61991ddc57c30981c311a1c8c5e2f8ddf4d Reviewed-on: https://chromium-review.googlesource.com/c/1288271Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#56864}
-
- 19 Oct, 2018 1 commit
-
-
Sigurd Schneider authored
Drive-by: Eliminate unnecessary includes to src/assembler.h. Bug: v8:8238 Change-Id: Ia0408b993b8b1c21a76c947f406f96b63fe41994 Reviewed-on: https://chromium-review.googlesource.com/c/1288810Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#56817}
-
- 16 Oct, 2018 1 commit
-
-
Jakob Gruber authored
This adds root-relative access in a couple of spots (e.g.: LoadRoot, CompareRoot, PushRoot, Push, Move, etc.). Some methods now dispatch based on whether the given Immediate is an embedded object. ShouldGenerateIsolateIndependentCode() was added as a porting crutch: it forces isolate-independent code for builtins even though the builtin is not in the Builtins::IsIsolateIndependent() whitelist. This allows us to easily figure out which builtins can be white-listed with --print-embedded-builtin-candidates. Newly isolate-independent builtins are now whitelisted. Drive-by: Remove dead CompareRoot and JumpIfRoot helpers. Bug: v8:6666 Change-Id: I6b5f6f71b90ac22e7e15482af0617b0ca1c319da Reviewed-on: https://chromium-review.googlesource.com/c/1280665 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#56673}
-
- 10 Oct, 2018 1 commit
-
-
Sigurd Schneider authored
Change-Id: I2499c3ada16bdf51f7830847753b856aa8aaff46 Bug: v8:6666 Reviewed-on: https://chromium-review.googlesource.com/c/1270836 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#56515}
-
- 28 Sep, 2018 1 commit
-
-
Clemens Hammacher authored
We have the generic {no_reg} and {no_dreg}, other definitions are dead. Currently even {no_dreg} is dead, but I am keeping this because I can see future need for that. R=mstarzinger@chromium.org Bug: v8:8238 Change-Id: I0de597fead6b3def18fd5c530419d3c149f235a8 Reviewed-on: https://chromium-review.googlesource.com/1251123Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56288}
-
- 19 Sep, 2018 1 commit
-
-
Maya Lekova authored
This CL implements the following design doc: https://docs.google.com/document/d/1h5kdfemMQMpUd15PSKW1lqikJW5hsGwrmOvoqhGFRts/edit?ts=5b978756#heading=h.urs7r34mx9p Bug: v8:7790 Change-Id: I5f758c6d906ea9275c30b28f339063c64a2dc8d8 Reviewed-on: https://chromium-review.googlesource.com/1221807Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#56021}
-
- 18 Sep, 2018 1 commit
-
-
Jakob Gruber authored
In the near future all ia32 ASM builtins must be audited & possibly refactored to ensure they do not address ebx (= kRootRegister). This CL adds mechanisms to verify ebx usage. SupportsRootRegisterScope marks regions that are root-register-ready (i.e. does not use ebx). AllowExplicitEbxAccessScope marks regions that are explicitly allowed to use ebx, e.g. because they spill and restore its value at all boundaries and do not contain any root-relative accesses. Consistency is verified by calling the new AssertIsAddressable function at strategic spots in the Assembler. All of this code is temporary and should be removed once ia32 fully supports the kRootRegister. Bug: v8:6666 Change-Id: I7c5514794db0da889bdae9e3c23bc0d54780879d Reviewed-on: https://chromium-review.googlesource.com/1226805Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#55992}
-
- 12 Sep, 2018 1 commit
-
-
Clemens Hammacher authored
Most were using uint8_t already, but some were declared as int8_t. This CL consistently makes 8-bit immediates unsigned values. R=titzer@chromium.org Change-Id: I8f829486fb5ab1bf597b0be1eabc9b811543c3e3 Reviewed-on: https://chromium-review.googlesource.com/1220147Reviewed-by:
Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55820}
-
- 11 Sep, 2018 1 commit
-
-
Clemens Hammacher authored
The macro has been deprecated since 2016, and it keeps confusing me, so let's just remove it completely from the code base. R=leszeks@chromium.org TBR=mstarzinger@chromium.org, verwaest@chromium.org, jgruber@chromium.org Bug: v8:8015 Change-Id: Ibe1122fd9d2624bc94873d9c51dc8499c54a04fd Reviewed-on: https://chromium-review.googlesource.com/1209322Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55779}
-
- 30 Aug, 2018 1 commit
-
-
Sigurd Schneider authored
Also takes care of InterpreterEnterBytecodeAdvance. Drive-by: - Add DCHECK to ensure cmpb is only used with byte registers. - Add Push/PopRootRegister to TurboAssembler with DCHECK ensuring that there is a NoRootArrayScope Change-Id: Ibcf1c91b12767bdf6425b18872c41b31124de3ba Bug: v8:6666 Reviewed-on: https://chromium-review.googlesource.com/1190305Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#55512}
-
- 23 Aug, 2018 2 commits
-
-
Michael Starzinger authored
R=sigurds@chromium.org Change-Id: Ib024d099946d4351bfce9de8eb61be1dba5e1ce5 Reviewed-on: https://chromium-review.googlesource.com/1186415 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#55351}
-
jgruber authored
A first baby-step towards embedded builtins on ia32. This adds the initial implementation for indirect load functionality (they still depend on embedded external references to get the roots pointer). External reference operands still directly embed external references. We can change these sites to be root-relative once the root register exists. Drive-by: replace raw jmp(HeapObject), call(HeapObject), mov(HeapObject) uses by their macro-assembler counterparts and add sanity-checks to ensure we're not calling them by accident when generating isolate-independent code. Bug: v8:6666 Change-Id: Ide11273721bcdaaee06934eedeca9f39346d1d50 Reviewed-on: https://chromium-review.googlesource.com/1170687 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#55332}
-
- 14 Aug, 2018 2 commits
-
-
Benedikt Meurer authored
This adds support for unaligned load/store access to the DataView backing store and uses byteswap operations to fix up the endianess when necessary. This changes the Word32ReverseBytes operator to be a required operator and adds the missing support on the Intel and ARM platforms (on 64-bit platforms the Word64ReverseBytes operator is also mandatory now). This further improves the performance on the dataviewperf.js test mentioned in the tracking bug by up to 40%, and at the same time reduces the code complexity in the EffectControlLinearizer. Bug: chromium:225811 Change-Id: I7c1ec826faf46a144a5a9068f8f815a5fd040997 Reviewed-on: https://chromium-review.googlesource.com/1174252Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55111}
-
Leszek Swirski authored
This reverts commit c46915b9. Reason for revert: Disasm failures https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20debug/21727 Original change's description: > [turbofan] Further optimize DataView accesses. > > This adds support for unaligned load/store access to the DataView > backing store and uses byteswap operations to fix up the endianess > when necessary. This changes the Word32ReverseBytes operator to be > a required operator and adds the missing support on the Intel and > ARM platforms (on 64-bit platforms the Word64ReverseBytes operator > is also mandatory now). > > This further improves the performance on the dataviewperf.js test > mentioned in the tracking bug by up to 40%, and at the same time > reduces the code complexity in the EffectControlLinearizer. > > Bug: chromium:225811 > Change-Id: I296170b828c2ccc1c317ed37840b564aa14cdec2 > Reviewed-on: https://chromium-review.googlesource.com/1172777 > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55099} TBR=sigurds@chromium.org,bmeurer@chromium.org Change-Id: If7a62e3a1a4ad26823fcbd2ab6eb4c053ad11c49 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:225811 Reviewed-on: https://chromium-review.googlesource.com/1174171Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#55107}
-
- 13 Aug, 2018 1 commit
-
-
Benedikt Meurer authored
This adds support for unaligned load/store access to the DataView backing store and uses byteswap operations to fix up the endianess when necessary. This changes the Word32ReverseBytes operator to be a required operator and adds the missing support on the Intel and ARM platforms (on 64-bit platforms the Word64ReverseBytes operator is also mandatory now). This further improves the performance on the dataviewperf.js test mentioned in the tracking bug by up to 40%, and at the same time reduces the code complexity in the EffectControlLinearizer. Bug: chromium:225811 Change-Id: I296170b828c2ccc1c317ed37840b564aa14cdec2 Reviewed-on: https://chromium-review.googlesource.com/1172777 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#55099}
-
- 09 Aug, 2018 1 commit
-
-
Deepti Gandluri authored
Bug: v8:6532 Change-Id: I6391c3d5e86d2b04735e241a1e0549a170ab4852 Reviewed-on: https://chromium-review.googlesource.com/1164640Reviewed-by:
Ben Titzer <titzer@chromium.org> Reviewed-by:
Ben Smith <binji@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#55027}
-
- 08 Aug, 2018 1 commit
-
-
Michael Starzinger authored
R=sigurds@chromium.org Change-Id: I1ca0e215da36400a8817bc8c8912ccfde8eca613 Reviewed-on: https://chromium-review.googlesource.com/1166911Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54973}
-
- 24 Jul, 2018 1 commit
-
-
Clemens Hammacher authored
This is a reland of a462a785 Original change's description: > [turboassembler] Introduce hard-abort mode > > For checks and assertions (mostly for debug code, like stack alignment > or zero extension), we had two modes: Emit a call to the {Abort} > runtime function (the default), and emit a debug break (used for > testing, enabled via --trap-on-abort). > In wasm, where we cannot just call a runtime function because code must > be isolate independent, we always used the trap-on-abort behaviour. > This causes problems for our fuzzers, which do not catch SIGTRAP, and > hence do not detect debug code failures. > > This CL introduces a third mode ("hard abort"), which calls a C > function via {ExternalReference}. The C function still outputs the > abort reason, but does not print the stack trace. It then aborts via > "OS::Abort", just like the runtime function. > This will allow fuzzers to detect the crash and even find a nice error > message. > > Even though this looks like a lot of code churn, it is actually not. > Most added lines are new tests, and other changes are minimal. > > R=mstarzinger@chromium.org > > Bug: chromium:863799 > Change-Id: I77c58ff72db552d49014614436259ccfb49ba87b > Reviewed-on: https://chromium-review.googlesource.com/1142163 > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54592} Bug: chromium:863799 Change-Id: I7729a47b4823a982a8e201df36520aa2b6ef5326 Reviewed-on: https://chromium-review.googlesource.com/1146100Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54656}
-
- 23 Jul, 2018 1 commit
-
-
Deepti Gandluri authored
Bug: v8:6532 Change-Id: I0871aaafff2385758449ddde923178d1c9e1ff8a Reviewed-on: https://chromium-review.googlesource.com/1146998Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#54620}
-
- 20 Jul, 2018 2 commits
-
-
Sigurd Schneider authored
This reverts commit a462a785. Reason for revert: Breaks a TurboAssembler test: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Arm/7726 Original change's description: > [turboassembler] Introduce hard-abort mode > > For checks and assertions (mostly for debug code, like stack alignment > or zero extension), we had two modes: Emit a call to the {Abort} > runtime function (the default), and emit a debug break (used for > testing, enabled via --trap-on-abort). > In wasm, where we cannot just call a runtime function because code must > be isolate independent, we always used the trap-on-abort behaviour. > This causes problems for our fuzzers, which do not catch SIGTRAP, and > hence do not detect debug code failures. > > This CL introduces a third mode ("hard abort"), which calls a C > function via {ExternalReference}. The C function still outputs the > abort reason, but does not print the stack trace. It then aborts via > "OS::Abort", just like the runtime function. > This will allow fuzzers to detect the crash and even find a nice error > message. > > Even though this looks like a lot of code churn, it is actually not. > Most added lines are new tests, and other changes are minimal. > > R=mstarzinger@chromium.org > > Bug: chromium:863799 > Change-Id: I77c58ff72db552d49014614436259ccfb49ba87b > Reviewed-on: https://chromium-review.googlesource.com/1142163 > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54592} TBR=mstarzinger@chromium.org,clemensh@chromium.org Change-Id: I60c011cfe262ccebbb9abf32699a9fe17e72a3c8 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:863799 Reviewed-on: https://chromium-review.googlesource.com/1145431 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#54597}
-
Clemens Hammacher authored
For checks and assertions (mostly for debug code, like stack alignment or zero extension), we had two modes: Emit a call to the {Abort} runtime function (the default), and emit a debug break (used for testing, enabled via --trap-on-abort). In wasm, where we cannot just call a runtime function because code must be isolate independent, we always used the trap-on-abort behaviour. This causes problems for our fuzzers, which do not catch SIGTRAP, and hence do not detect debug code failures. This CL introduces a third mode ("hard abort"), which calls a C function via {ExternalReference}. The C function still outputs the abort reason, but does not print the stack trace. It then aborts via "OS::Abort", just like the runtime function. This will allow fuzzers to detect the crash and even find a nice error message. Even though this looks like a lot of code churn, it is actually not. Most added lines are new tests, and other changes are minimal. R=mstarzinger@chromium.org Bug: chromium:863799 Change-Id: I77c58ff72db552d49014614436259ccfb49ba87b Reviewed-on: https://chromium-review.googlesource.com/1142163 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54592}
-
- 19 Jul, 2018 1 commit
-
-
Clemens Hammacher authored
R=mstarzinger@chromium.org Bug: v8:7754 Change-Id: I470813e241ace22b2e39b7bb9ff26dd824b50426 Reviewed-on: https://chromium-review.googlesource.com/1142162Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54555}
-
- 06 Jul, 2018 1 commit
-
-
Sigurd Schneider authored
This CL surfaces AssemblerOptions to CodeAssembler::GenerateCode and to pipeline methods. To allow forward declaring AssemblerOptions, AssemblerBase::Options was moved out of the AssemblerBase class. Bug: v8:6666 Change-Id: If9fc50d3d4767bb5dd39a0c3b6e094021f4cae2b Reviewed-on: https://chromium-review.googlesource.com/1127039 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#54286}
-
- 02 Jul, 2018 1 commit
-
-
Clemens Hammacher authored
On Windows (32-bit), we need to emit explicit stack limit checks for stack frames bigger than one page (4kB). This CL implements this by emitting corresponding code at the end of Liftoff functions if needed. R=mstarzinger@chromium.org Bug: v8:7908, v8:6600 Change-Id: Iacb3e7afdd433a4e68620d9230bd0ba473611da8 Reviewed-on: https://chromium-review.googlesource.com/1120175 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54141}
-
- 26 Jun, 2018 1 commit
-
-
Sigurd Schneider authored
We had a kRootRegisterBias on x64 before. This CL ports the feature to all other platforms as well. The root register bias is helpful to adjust the value of the root register, which allows to better utilize signed immediate offset constants in load instructions. We currently use a separate add instruction to add kRootRegisterBias in the code that initializes the root register. This could be improved by adding a custom relocation mode ensuring that instead of the root address, the root address plus the bias is inserted (and in this way the add instruction can be omitted). Bug: v8:6666 Change-Id: I55cf02ab85d11e3c6d0d83a8f7905dbf924890f1 Reviewed-on: https://chromium-review.googlesource.com/1113539 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#54023}
-