- 07 Dec, 2018 4 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}
-
Jakob Gruber authored
This migrates the JSEntryStub to three dedicated builtins: JSEntry JSConstructEntry JSRunMicrotasksEntry Drive-by: Tweaks to make the code isolate-independent (e.g. using the correct macro assembler method to load and store external references through the kRootRegister). Drive-by: The context slot on x64/ia32 must be set up after kRootRegister is initialized, so we first reserve the slot and later load its value. Drive-by: Update all remaining comments referencing JSEntryStub. Bug: v8:7777 Change-Id: Ie3ba17ffb3bde6f18ec1d26d778b258719b2d4ef Reviewed-on: https://chromium-review.googlesource.com/c/1365275Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58088}
-
- 06 Dec, 2018 1 commit
-
-
Jakob Gruber authored
In preparation for converting JSEntry into a builtin. The root register used to be initialized by an embedded external reference, which is not isolate-independent. Pass in its value explicitly instead. Tbr: clemensh@chromium.org Bug: v8:7777 Change-Id: If9d20cb193af175bd1cf58e5826bdf6f397869ad Reviewed-on: https://chromium-review.googlesource.com/c/1363139Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58065}
-
- 05 Dec, 2018 3 commits
-
-
Predrag Rudic authored
This implementation uses mutex to implement those instructions. I will add 32-bit version LL/SC after review. Change-Id: I7b0e2b42527bc21060a84eb5e27099e129f2858f Reviewed-on: https://chromium-review.googlesource.com/c/1354462Reviewed-by:
Sreten Kovacevic <skovacevic@wavecomp.com> Commit-Queue: Predrag Rudic <prudic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#58048}
-
Jakob Gruber authored
Drive-by: Replace uses in CallApi* with a direct call now that they've been converted to builtins themselves and are thus immovable. Bug: v8:7777 Change-Id: I660b5788bdac4f5e45cc5c5677b86be17474cd83 Reviewed-on: https://chromium-review.googlesource.com/c/1361161 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#58037}
-
Jakob Gruber authored
Bug: v8:7777 Change-Id: Iee3e03b0a3fea245408de4d675caa634a74aa188 Reviewed-on: https://chromium-review.googlesource.com/c/1357053Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58036}
-
- 04 Dec, 2018 5 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}
-
Jakob Gruber authored
This is the first (and major) step towards converting CallApiCallback and CallApiGetter stubs into builtins. The CallApiCallbackStub was parameterized with the number of arguments passed on the stack. This CL converts the compile-time parameter into an explicit runtime parameter, and removes all uses of the stub parameter. Drive-by: The implementation is now mostly consistent across platforms. Drive-by: Refactor the calling convention to free up two registers (kCallData and kHolder are now passed on the stack). Bug: v8:7777 Change-Id: I212dccc2930de89c264a13755918c9fae7842f1f Reviewed-on: https://chromium-review.googlesource.com/c/1354887 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#58005}
-
- 30 Nov, 2018 2 commits
-
-
Jakob Gruber authored
Bug: v8:8503, v8:7777 Change-Id: Iadf515cf4735d1046c7c14f44c02d5d5f95df87a Reviewed-on: https://chromium-review.googlesource.com/c/1356512Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#57969}
-
Predrag Rudic authored
64-bit implementations of ExtractBits and InsertBits were using 32-bit instructions. Masking when representation of instruction is 64 is now correct. Also added optimization for 32-bit InsertBits. Change-Id: I3d5117835daa67708e544d01d1d9058dcc0cc64e Reviewed-on: https://chromium-review.googlesource.com/c/1355141Reviewed-by:
Sreten Kovacevic <skovacevic@wavecomp.com> Commit-Queue: Sreten Kovacevic <skovacevic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#57961}
-
- 29 Nov, 2018 3 commits
-
-
Andreas Haas authored
The problem were missing V8_EXPORT_PRIVATE and V8_EXPORT. The unittests test if the trap handler only handles those traps it is supposed to handle: * Only handle traps when the thread-in-wasm flag is set. * Only handle traps of the right type, i.e. memory access violations. * Only handle traps at recorded instructions. The tests also test the consistency of the thread-in-wasm flag. I made one change in the trap handler where that consistency could be violated. All tests are executed with the default trap handler provided by V8, and with the trap handler callback installed in a test signal/exception handler. Patchset 1 is the original CL. R=mstarzinger@chromium.org Change-Id: I172d94f24cdba4c3a1f7f344825b059dbb59da79 Reviewed-on: https://chromium-review.googlesource.com/c/1351024Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#57947}
-
Peter Marshall authored
This is a reland of d5f4a33e Landing with test disabled for now. Original change's description: > [cpu-profiler] Fix stack iterability for fast C calls with no exit frame > > Before fast C calls, store the current FP and PC on the isolate. When > iterating frames in SafeStackFrameIterator, check if these fields are > set and start iterating at the calling frame's FP instead of the current > FP, which will be in C++ code. We need to do this because c_entry_fp is > not set on the Isolate for Fast-C-Calls because we don't build an exit > frame. > > This change makes stack samples that occur within 'Fast-C-Calls' > iterable, meaning we can properly attribute ticks within the JS caller. > > Fast-C-Calls can't call back into JS code, so we can only ever have one > such call on the stack at a time, allowing us to store the FP on the > isolate rather than the stack. > > TBR=v8-mips-ports@googlegroups.com > > Bug: v8:8464, v8:7202 > Change-Id: I7bf39eba779dad34754d5759d741c421b362a406 > Reviewed-on: https://chromium-review.googlesource.com/c/1340241 > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Martyn Capewell <martyn.capewell@arm.com> > Reviewed-by: Alexei Filippov <alph@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57896} TBR=v8-mips-ports@googlegroups.com TBR=jgruber@chromium.org Bug: v8:8464, v8:7202 Change-Id: I260d5ab3bc12c9c4529fb52a297a1040dcaa8ebf Reviewed-on: https://chromium-review.googlesource.com/c/1354466 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#57935}
-
Michael Achenbach authored
This reverts commit ddaa1f0a. Reason for revert: Still flaky on windows. Maybe reland and keep skipped on windows? https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Win32%20-%20nosnap%20-%20shared/31002 https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Win64/27826 Original change's description: > Reland "[cpu-profiler] Fix stack iterability for fast C calls with no exit frame" > > This is a reland of d5f4a33e > > Original change's description: > > [cpu-profiler] Fix stack iterability for fast C calls with no exit frame > > > > Before fast C calls, store the current FP and PC on the isolate. When > > iterating frames in SafeStackFrameIterator, check if these fields are > > set and start iterating at the calling frame's FP instead of the current > > FP, which will be in C++ code. We need to do this because c_entry_fp is > > not set on the Isolate for Fast-C-Calls because we don't build an exit > > frame. > > > > This change makes stack samples that occur within 'Fast-C-Calls' > > iterable, meaning we can properly attribute ticks within the JS caller. > > > > Fast-C-Calls can't call back into JS code, so we can only ever have one > > such call on the stack at a time, allowing us to store the FP on the > > isolate rather than the stack. > > > > TBR=v8-mips-ports@googlegroups.com > > > > Bug: v8:8464, v8:7202 > > Change-Id: I7bf39eba779dad34754d5759d741c421b362a406 > > Reviewed-on: https://chromium-review.googlesource.com/c/1340241 > > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > > Reviewed-by: Martyn Capewell <martyn.capewell@arm.com> > > Reviewed-by: Alexei Filippov <alph@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#57896} > > TBR=v8-mips-ports@googlegroups.com > TBR=jgruber@chromium.org > > Bug: v8:8464, v8:7202 > Change-Id: I5f37ded4ea572e8e9890ba186aa3d74a0dfc1274 > Reviewed-on: https://chromium-review.googlesource.com/c/1354042 > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57912} TBR=alph@chromium.org,jgruber@chromium.org,petermarshall@chromium.org,martyn.capewell@arm.com,v8-arm-ports@googlegroups.com,v8-mips-ports@googlegroups.com,ibogosavljevic@wavecomp.com Change-Id: If810648dbf60df2ff70455b6e8ef466136c90145 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8464, v8:7202 Reviewed-on: https://chromium-review.googlesource.com/c/1354461Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#57925}
-
- 28 Nov, 2018 3 commits
-
-
Peter Marshall authored
This is a reland of d5f4a33e Original change's description: > [cpu-profiler] Fix stack iterability for fast C calls with no exit frame > > Before fast C calls, store the current FP and PC on the isolate. When > iterating frames in SafeStackFrameIterator, check if these fields are > set and start iterating at the calling frame's FP instead of the current > FP, which will be in C++ code. We need to do this because c_entry_fp is > not set on the Isolate for Fast-C-Calls because we don't build an exit > frame. > > This change makes stack samples that occur within 'Fast-C-Calls' > iterable, meaning we can properly attribute ticks within the JS caller. > > Fast-C-Calls can't call back into JS code, so we can only ever have one > such call on the stack at a time, allowing us to store the FP on the > isolate rather than the stack. > > TBR=v8-mips-ports@googlegroups.com > > Bug: v8:8464, v8:7202 > Change-Id: I7bf39eba779dad34754d5759d741c421b362a406 > Reviewed-on: https://chromium-review.googlesource.com/c/1340241 > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Martyn Capewell <martyn.capewell@arm.com> > Reviewed-by: Alexei Filippov <alph@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57896} TBR=v8-mips-ports@googlegroups.com TBR=jgruber@chromium.org Bug: v8:8464, v8:7202 Change-Id: I5f37ded4ea572e8e9890ba186aa3d74a0dfc1274 Reviewed-on: https://chromium-review.googlesource.com/c/1354042Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#57912}
-
Maya Lekova authored
This reverts commit d5f4a33e. Reason for revert: Seems to cause a no snapshot build failure - https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20nosnap%20-%20debug/21967 Original change's description: > [cpu-profiler] Fix stack iterability for fast C calls with no exit frame > > Before fast C calls, store the current FP and PC on the isolate. When > iterating frames in SafeStackFrameIterator, check if these fields are > set and start iterating at the calling frame's FP instead of the current > FP, which will be in C++ code. We need to do this because c_entry_fp is > not set on the Isolate for Fast-C-Calls because we don't build an exit > frame. > > This change makes stack samples that occur within 'Fast-C-Calls' > iterable, meaning we can properly attribute ticks within the JS caller. > > Fast-C-Calls can't call back into JS code, so we can only ever have one > such call on the stack at a time, allowing us to store the FP on the > isolate rather than the stack. > > TBR=v8-mips-ports@googlegroups.com > > Bug: v8:8464, v8:7202 > Change-Id: I7bf39eba779dad34754d5759d741c421b362a406 > Reviewed-on: https://chromium-review.googlesource.com/c/1340241 > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Martyn Capewell <martyn.capewell@arm.com> > Reviewed-by: Alexei Filippov <alph@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57896} TBR=alph@chromium.org,jgruber@chromium.org,petermarshall@chromium.org,martyn.capewell@arm.com,v8-arm-ports@googlegroups.com,v8-mips-ports@googlegroups.com,ibogosavljevic@wavecomp.com Change-Id: I85f846e57b6fa845e7770c616435cebffdb2a245 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8464, v8:7202 Reviewed-on: https://chromium-review.googlesource.com/c/1352302Reviewed-by:
Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#57899}
-
Peter Marshall authored
Before fast C calls, store the current FP and PC on the isolate. When iterating frames in SafeStackFrameIterator, check if these fields are set and start iterating at the calling frame's FP instead of the current FP, which will be in C++ code. We need to do this because c_entry_fp is not set on the Isolate for Fast-C-Calls because we don't build an exit frame. This change makes stack samples that occur within 'Fast-C-Calls' iterable, meaning we can properly attribute ticks within the JS caller. Fast-C-Calls can't call back into JS code, so we can only ever have one such call on the stack at a time, allowing us to store the FP on the isolate rather than the stack. TBR=v8-mips-ports@googlegroups.com Bug: v8:8464, v8:7202 Change-Id: I7bf39eba779dad34754d5759d741c421b362a406 Reviewed-on: https://chromium-review.googlesource.com/c/1340241 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Martyn Capewell <martyn.capewell@arm.com> Reviewed-by:
Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#57896}
-
- 26 Nov, 2018 2 commits
-
-
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}
-
Marja Hölttä authored
- Remove heap-inl.h includes from places where it looked unnecessary. (This is a non-scientific approach, because it's probably pulled in indirectly anyway.) - Annotate places which include heap-inl.h because they need heap/ internals. - ACCESSORS legitimately needs heap-inl.h because of Heap::FromWritableHeapObject. - Add includes to heap/heap-write-barrier(-inl).h - A bunch of IWYU fixes discovered when working on this CL (includes which were missing because heap-inl.h pulls them in indirectly). BUG=v8:7490,v8:8238,v8:8499 Change-Id: I00f9a74d430f13d7c080dca77a92b03bcca7ef96 Reviewed-on: https://chromium-review.googlesource.com/c/1349241Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#57814}
-
- 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}
-
- 19 Nov, 2018 1 commit
-
-
Clemens Hammacher authored
Instead, include macro-assembler.h (and others) where needed. R=mstarzinger@chromium.org Bug: v8:8238, v8:7490 Change-Id: I6ba4420bafee3d937bc6b648ac907f30a1d6aa52 Reviewed-on: https://chromium-review.googlesource.com/c/1340280Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#57599}
-
- 16 Nov, 2018 2 commits
-
-
Clemens Hammacher authored
The platform specific macro assembler headers can not be included directly. They require symbols declared in macro-assembler.h. We also cannot include macro-assembler.h from the platform specific headers, because that would form a cycle, and the include in macro-assembler.h would be skipped, which then also fails. This CL documents and enforces this unfortunate situation. This helps with further iwyu cleanups. Note that current code which includes the platform specific headers only works because we transitively included macro-assembler.h already before. R=mstarzinger@chromium.org Bug: v8:8238, v8:7490 Change-Id: I2dc65ad950400941406e1f2f8969d0d15f524bf8 Reviewed-on: https://chromium-review.googlesource.com/c/1340240 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57578}
-
Jakob Gruber authored
This pulls both classes into a dedicated file. InstructionStream may be removed in a follow-up. Tbr: mlippautz@chromium.org Bug: v8:6666 Change-Id: Ibd374eba25cebf7495390ec13f6b4aeac5e1dc01 Reviewed-on: https://chromium-review.googlesource.com/c/1337738Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#57562}
-
- 15 Nov, 2018 1 commit
-
-
Predrag Rudic authored
On MIPS and MIPS64 build began to fail after this commit: 01079cb8. Change-Id: Ib967fc0d17ce1d10fdfa97d541ce9e761508593f Reviewed-on: https://chromium-review.googlesource.com/c/1337741Reviewed-by:
Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Commit-Queue: Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#57554}
-
- 14 Nov, 2018 2 commits
-
-
Ivica Bogosavljevic authored
This CL implements AtomicPair operators: Load, Store, Add, Sub, Or, Xor, And, Exchange and CompareExchange using runtime on MIPS32R2 and older. MIPS32R6 includes instructions for 64-bit atomic access so they are implemented using those. Change-Id: I1309c1ea4771480516ec5a92f7592533bdcb205c Reviewed-on: https://chromium-review.googlesource.com/c/1326466Reviewed-by:
Sreten Kovacevic <skovacevic@wavecomp.com> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#57496}
-
Predrag Rudic authored
Build started to fail after this commit: bd0a7fd6. Change-Id: I2b628c067f6e5120d19498fd0b766c5233baf3e1 Reviewed-on: https://chromium-review.googlesource.com/c/1335552Reviewed-by:
Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Commit-Queue: Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#57495}
-
- 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}
-
- 09 Nov, 2018 1 commit
-
-
Jakob Gruber authored
This is only used by ProfileEntryHookStub. For builtins, this also needs to go through an indirection. Bug: v8:6666 Change-Id: I088fa472e2d365ccfb2d027bfbdad182ffae487e Reviewed-on: https://chromium-review.googlesource.com/c/1326025Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#57379}
-
- 07 Nov, 2018 2 commits
-
-
Igor Sheludko authored
because otherwise cleared weak references require special treatment during decompression. Bug: v8:7703 Change-Id: I38761d656c606e7ba7fc3075dffbd855a9f72302 Reviewed-on: https://chromium-review.googlesource.com/c/1322909 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#57315}
-
Predrag Rudic authored
After commit 6d706ae3, MIPS builders started to fail. This CL completes that commit. Change-Id: Ib3fef6771f7878c8760b4820e54b06e853d6be3d Reviewed-on: https://chromium-review.googlesource.com/c/1320489Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Commit-Queue: Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#57309}
-
- 05 Nov, 2018 2 commits
-
-
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}
-
Michael Starzinger authored
The relocation mode in question was by now only used in tests to model a wrapper call from wrapper code (on the GC'ed heap) to a non-movable wasm code object. Instead of using a special relocation mode, we switch to using the existing {EXTERNAL_REFERENCE} mode similar to other static C++ functions called from generated code. R=sigurds@chromium.org BUG=v8:8238 Change-Id: I30af98b92aed207c52ccccaf018a455ecac39c2b Reviewed-on: https://chromium-review.googlesource.com/c/1309821Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57239}
-
- 02 Nov, 2018 1 commit
-
-
Ivica Bogosavljevic authored
On MIPS32R6, instruction JIC and JIALC where not properly patched and this caused compilation failure in snapshot generating phase Change-Id: I29d8323faf22f825116e295cd2a2d55e714e61ed Reviewed-on: https://chromium-review.googlesource.com/c/1314118Reviewed-by:
Sreten Kovacevic <skovacevic@wavecomp.com> Commit-Queue: Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#57216}
-
- 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}
-