- 06 Sep, 2018 1 commit
-
-
Igor Sheludko authored
... like AllocatePage[s](), FreePages() and SetPermissions(). This CL also changes base::PageAllocator to cache AllocatePageSize and CommitPageSize values returned by the OS. This is a necessary cleanup before introducing BoundedPageAllocator. Bug: v8:8096 Change-Id: Ifb7cdd2caa6a1b029ce0fca6545c61df9d281be2 Reviewed-on: https://chromium-review.googlesource.com/1209343Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#55690}
-
- 03 Sep, 2018 1 commit
-
-
jgruber authored
The isolate can be efficiently loaded through other means: either as a root-relative load (if embedded builtins are enabled), or as an embedded external reference (i.e. the absolute pointer is included in the instruction stream) otherwise. The generated code should be at least as fast as previously. On x64 (with embedded builtins): Before: // Register moves in prologue: 0x7f47a6b4860a a 488955e0 REX.W movq [rbp-0x20],rdx // And the load from a stack slot at each use-site. 0x7f47a6b486f2 f2 488b7de0 REX.W movq rdi,[rbp-0x20] After: // Each use-site just loads a root-relative offset. 0x7f1645fcc6ce ee 498dbd38ffffff REX.W leaq rdi,[r13-0xc8] On ia32 (no embedded builtins), before: 0x5c608930 10 8955f0 mov [ebp-0x10],edx 0x5c6089fb db 891424 mov [esp],edx After: 0x41d0898d 8d b80033b156 mov eax,0x56b13300 Removal reduces register pressure, and frees up ebx as the root register on ia32. Note that the set of allocatable registers was only reduced on ia32 to exclude the root register. Bug: v8:6666 Change-Id: I14e401e2823c82042c76acae10c3c935b9982993 Reviewed-on: https://chromium-review.googlesource.com/1201586 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#55587}
-
- 31 Aug, 2018 1 commit
-
-
jgruber authored
This reorders arguments in preparation for removing ebx from its calling convention (in a follow-up some args will be passed on the stack). Drive-by: Improve readability in the code handling different cases (array,spread,...). Bug: v8:6666 Change-Id: I0160f8efafd0fd0e841739578e01c32b38adb66e Reviewed-on: https://chromium-review.googlesource.com/1196884Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#55557}
-
- 29 Aug, 2018 1 commit
-
-
jgruber authored
This replaces ebx usage in several more interface descriptors. - IC descriptors already passed most arguments on the stack (updated their Register accessors to reflect that). - The allocation site argument appears to be unused in the ConstructStub descriptor. It can probably be removed in a follow-up. Drive-by: Rename ArgumentAdaptorDescriptor to ArgumentsAdaptorDescriptor to match the builtin name. Bug: v8:6666 Change-Id: I4cdf1775a5b4b74491d6d303c49a8af9b6cd3c03 Reviewed-on: https://chromium-review.googlesource.com/1195367 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#55495}
-
- 28 Aug, 2018 1 commit
-
-
jgruber authored
These two builtins are a special case in that their calling convention must be kept in-sync since they are both generated from Generate_CallOrConstructVarargs. ConstructVarargs in particular used all available registers. In order to free ebx, the calling convention is changed to pass the last argument on the stack. As part of this change, the order of the last two arguments is swapped since the stack parameter must be tagged. Bug: v8:6666 Change-Id: If1ad14fc09693c36dd63ffebb6f34fcd3f012896 Reviewed-on: https://chromium-review.googlesource.com/1193444Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#55458}
-
- 25 Aug, 2018 1 commit
-
-
Deepti Gandluri authored
- Implement all the I64Atomic operations on ARM - Change assembler methods to use Registers instead of memory operands - Move atomics64 test up be tested on all archs, disable tests on MIPS BUG:v8:6532 Change-Id: I91bd42fa819f194be15c719266c36230f9c65db8 Reviewed-on: https://chromium-review.googlesource.com/1180211 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Reviewed-by:
Ben Smith <binji@chromium.org> Cr-Commit-Position: refs/heads/master@{#55416}
-
- 23 Aug, 2018 4 commits
-
-
Bill Budge authored
Change-Id: I0870a13fd257e014a3b6dca8ee7ccb3aa5485066 Reviewed-on: https://chromium-review.googlesource.com/1183525Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#55359}
-
Sigurd Schneider authored
This CL removed padding from Abort on ARM, which is no longer needed. Bug: v8:8054 Change-Id: I7ff0b88ba90e10d15b67b5ae8ca80f2cf7460498 Reviewed-on: https://chromium-review.googlesource.com/1183664 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#55356}
-
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}
-
Michael Starzinger authored
R=titzer@chromium.org BUG=v8:6408 Change-Id: I277beafaace334883ddbe63b9615e3f18085ce5e Reviewed-on: https://chromium-review.googlesource.com/1186411 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55350}
-
- 22 Aug, 2018 2 commits
-
-
jgruber authored
This adds a kRuntimeCallArgvRegister definition in platform-specific macro assemblers and unifies interface descriptor initialization. Bug: v8:6666 Change-Id: I6fd98bf9ac46083dd2e557ab558d0a5117dd7b94 Reviewed-on: https://chromium-review.googlesource.com/1185003Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#55310}
-
jgruber authored
Some builtins, so-called wasm runtime stubs, are copied off-heap to ensure reachability through near jumps. These builtins must be individually position-independent. In particular, they may not contain pc-relative calls to other builtins. Drive-by: Set hard_abort mode for all wasm runtime stubs to avoid Abort calls. Bug: v8:6666 Change-Id: Ie5bc9fc539d6a043dcf7dff66c3b4643baec69ab Reviewed-on: https://chromium-review.googlesource.com/1183236 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55296}
-
- 20 Aug, 2018 1 commit
-
-
Deepti Gandluri authored
Bug: v8:6532 Change-Id: Id89f81b12205900fc935e6232840e1976e24d3b4 Reviewed-on: https://chromium-review.googlesource.com/1176962 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#55228}
-
- 17 Aug, 2018 1 commit
-
-
Ulan Degenbaev authored
This moves write-barrier for writes into code to heap-write-barrier.h and adds four new functions: - WriteBarrierForCode(host, rinfo, object) - combined generational and marking write barrier. - WriteBarrierForCode(host) - combined write barrier that rescans all pointers in the host (former RecordWritesIntoCode). - GenerationalWriteBarrierForCode. - MarkingWriteBarrierForCode. Bug: v8:8054,v8:7490 Change-Id: Ib1e07cfa1d5998fca2fa44e2ad08c52305f1373f Reviewed-on: https://chromium-review.googlesource.com/1174436Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#55185}
-
- 16 Aug, 2018 3 commits
-
-
Deepti Gandluri authored
Change-Id: I24893d2db441282df8ac3267b0daf8f163e0edb5 Reviewed-on: https://chromium-review.googlesource.com/1177198Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#55175}
-
Sigurd Schneider authored
It looks like we are not putting doubles into the constant pool on arm any time soon, so lets remove this feature. A follow-up CL will remove the 64bit support from the constant pool. Bug: v8:8054 Change-Id: I87865a9c252c8967b5ac71b4db5d8c3b93a0e705 Reviewed-on: https://chromium-review.googlesource.com/1174531Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#55152}
-
Sigurd Schneider authored
This reverts commit cd285951. Reason for revert: No size improvements, but 5% regression on octane/NavierStrokes: https://chromeperf.appspot.com/report?sid=ebcd213df609b4ff31b0b25b5c8aab9d0738ff46f623161bdcdbb6f594112761&start_rev=579365&end_rev=582538 Original change's description: > [arm] Use constant pool for off-heap targets > > This CL puts off-heap targets (i.e. code addresses for embedded builtins) > in the constant pool on ARM. > > We are landing this CL to evaluate impact on benchmarks and code size, > and expect to revert it once we have gathered that data. > > Bug: v8:6666 > > Change-Id: If4935a6fb162cd1ffb34489c6fa9630f10ca2c9f > Reviewed-on: https://chromium-review.googlesource.com/1154924 > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54914} TBR=sigurds@chromium.org,jgruber@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:6666, chromium:872176 Change-Id: Icd0019c7f0c890d0eb09ddc2a74745c6b68db263 Reviewed-on: https://chromium-review.googlesource.com/1172482 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#55151}
-
- 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}
-
- 08 Aug, 2018 5 commits
-
-
Michael Starzinger authored
R=sigurds@chromium.org Change-Id: I7df887f84024831b4c55b3468bd54429280dd14e Reviewed-on: https://chromium-review.googlesource.com/1167054Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54977}
-
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}
-
Michael Starzinger authored
This is the port of concurrent jump table patching support to ARM. It extends the corresponding stress test and changes the encoding of code targets in jump table slots to use constant pool entries. R=clemensh@chromium.org TEST=cctest/test-jump-table-assembler BUG=v8:8018 Change-Id: I4b709a7f14dace0f4eb9219f995d42ca607bb25f Reviewed-on: https://chromium-review.googlesource.com/1164952 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54971}
-
Michael Starzinger authored
We instantiate the JumpTableAssembler in patching mode (i.e. directly on existing code without an intermittent buffer). In this mode it is not possible to record reloc information. This makes sure we no longer just blindly write into the non-existing buffer. R=clemensh@chromium.org BUG=v8:8028 Change-Id: I4abb8f06cf819fef608e901c4740263f0cecd08a Reviewed-on: https://chromium-review.googlesource.com/1166834 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54966}
-
Michael Starzinger authored
R=sigurds@chromium.org Change-Id: I2f8210a386fa39030c7ffe4c7d0f25bd845c612a Reviewed-on: https://chromium-review.googlesource.com/1166908 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#54964}
-
- 07 Aug, 2018 1 commit
-
-
Sigurd Schneider authored
The instruction size in bytes is now kInstrSize on all platforms. Bug: v8:6666 Change-Id: I2f9880a6a74199a439c8327a4117efb74240aa22 Reviewed-on: https://chromium-review.googlesource.com/1164955 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54944}
-
- 06 Aug, 2018 2 commits
-
-
Sigurd Schneider authored
Bug: v8:6666 Change-Id: I577c2ac89e8247d6fc90f1e9dbd0ef14a14fbddc Reviewed-on: https://chromium-review.googlesource.com/1163246 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#54916}
-
Sigurd Schneider authored
This CL puts off-heap targets (i.e. code addresses for embedded builtins) in the constant pool on ARM. We are landing this CL to evaluate impact on benchmarks and code size, and expect to revert it once we have gathered that data. Bug: v8:6666 Change-Id: If4935a6fb162cd1ffb34489c6fa9630f10ca2c9f Reviewed-on: https://chromium-review.googlesource.com/1154924 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#54914}
-
- 03 Aug, 2018 1 commit
-
-
Sigurd Schneider authored
We have two constants for the PC load delta; this CL consolidates them into one. The CL does not change MIPS as the two constants are defined to different values there. Bug: v8:6666 Change-Id: If207a59dea3ef33756a5d7330217ab8a176bdf63 Reviewed-on: https://chromium-review.googlesource.com/1161926Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#54898}
-
- 02 Aug, 2018 1 commit
-
-
Sigurd Schneider authored
Trampolines to off-heap targets may get inlined. In this case, it is hard to tell where the trampoline is going to; this CL adds code comments which identify the target builtin by name. Bug: v8:6666 Change-Id: Ib085ad118ad64551af2522f9187b4faaad6ce315 Reviewed-on: https://chromium-review.googlesource.com/1160536 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#54874}
-
- 26 Jul, 2018 1 commit
-
-
Clemens Hammacher authored
This ensures that tests actually abort on unimplemented opcodes instead of just printing them as "Unimplemented Instruction". If used to disassemble a code region though, we want to ignore unimplemented opcodes to keep printing remaining valid instructions. The tests were previously fixed by Deepti in 8fa509d3, but this got partly reverted on the "Address" refactoring in 2459046c. R=titzer@chromium.org Change-Id: I802dda2b0f45ee77c4f9b244ed984b1c4679bac3 Reviewed-on: https://chromium-review.googlesource.com/1146649 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#54726}
-
- 25 Jul, 2018 4 commits
-
-
Marja Hölttä authored
This significantly reduces the build time when modifying wasm files: before touching all wasm headers required 684 steps to rebuild, now it's 216. BUG=v8:7754,v8:7490 TBR=clemensh@chromium.org, ulan@chromium.org, tebbi@chromium.org, verwaest@chromium.org, jgruber@chromium.org Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I9003b5b73ac568a29688c5f97ec718c9de8aaaef Reviewed-on: https://chromium-review.googlesource.com/1150163 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#54699}
-
Clemens Hammacher authored
No functional change, just a cleanup I forgot to integrate in the reland: https://crrev.com/c/1146100 R=mstarzinger@chromium.org Bug: v8:7977 Change-Id: Ifbb437d6a1ec9ec1b8623859bdf183dab1a1c0f6 Reviewed-on: https://chromium-review.googlesource.com/1148721Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54685}
-
Leszek Swirski authored
This reverts commit 9d18a7fd. Reason for revert: Breaks build https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20noi18n%20-%20debug/21856 Original change's description: > [iwyu] Remove sfi-inl.h -> wasm include > > This significantly reduces the build time when modifying wasm > files: before touching all wasm headers required 684 steps to > rebuild, now it's 216. > > BUG=v8:7754,v8:7490 > > Change-Id: Id7ff6f9063168556daad4840ee614cf68144cdb2 > Reviewed-on: https://chromium-review.googlesource.com/1145264 > Commit-Queue: Marja Hölttä <marja@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54681} TBR=ulan@chromium.org,marja@chromium.org,titzer@chromium.org,jgruber@chromium.org,clemensh@chromium.org,tebbi@chromium.org,bmeurer@chromium.org,verwaest@chromium.org Change-Id: I3b4087916f65b16db75974dba58914c8ea377a08 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7754, v8:7490 Reviewed-on: https://chromium-review.googlesource.com/1149920Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54683}
-
Marja Hölttä authored
This significantly reduces the build time when modifying wasm files: before touching all wasm headers required 684 steps to rebuild, now it's 216. BUG=v8:7754,v8:7490 Change-Id: Id7ff6f9063168556daad4840ee614cf68144cdb2 Reviewed-on: https://chromium-review.googlesource.com/1145264 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54681}
-
- 24 Jul, 2018 3 commits
-
-
Bill Budge authored
- Eliminates less general forms of vmov between core and scalar FP registers. Bug: v8:7754 Change-Id: I3224c57e03dfd64ea6552b215017dacc357dda26 Reviewed-on: https://chromium-review.googlesource.com/1144126 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#54663}
-
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}
-
jgruber authored
For reproducible snapshots, we need to wipe target addresses. Bug: v8:6666 Change-Id: Id30c3f92c342ae85e9dce677439a6f05182482cd Reviewed-on: https://chromium-review.googlesource.com/1146653 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#54626}
-
- 23 Jul, 2018 1 commit
-
-
Stephan Herhut authored
This moves the static handle() helper function to handles-inl.h as it ultimately depends on handles-inl.h anyway. To make this possible, also move some other code to -inl.h files and split up some header files into a -inl.h part. Bug: v8:7490 Change-Id: I0f68e0728ba082b87ffa911aaf205d9b1523d2c9 Reviewed-on: https://chromium-review.googlesource.com/1146723Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Stephan Herhut <herhut@chromium.org> Cr-Commit-Position: refs/heads/master@{#54617}
-
- 20 Jul, 2018 1 commit
-
-
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}
-