- 12 Feb, 2021 15 commits
-
-
Benedikt Meurer authored
Following up on https://crrev.com/c/2689185, this CL significantly simplifies the whole implementation of the stack trace capturing. Before this CL, capturing any stack trace (for the purpose of the API or Error.stack) would roughly work like this: 1. The CaptureStackTrace() function uses the StackFrameIterator to walk the system stack. For each native frame it uses the FrameSummary abstraction to get all (including potentially inlined) frames. For each of those it appends a record consisting of six elements to a FrameArray (this holds pointers to the actual closures and receivers). 2. Afterwards the FrameArray is shrinked to the required size, and a new FixedArray is allocated, and initialized with new StackTraceFrame objects where each holds a reference to the FrameArray, the index of the frame, and an initially uninitialized StackFrameInfo reference. This new FixedArray is then returned from CaptureStackTrace() and either stored on a message object or provided to the API as v8::StackTrace. The new approach removes a lot of the machinery in between and directly creates a FixedArray of StackFrameInfo objects in CaptureStackTrace(). These StackFrameInfo objects are directly exposed as v8::StackFrame on the public API, and they hold the six fields that were previously stored flat in the FrameArray. This not only avoids a lot of copying around of data and creation of temporary objects and handles, but most importantly unifies and simplifies the stack frame function inside StackFrameInfo, so you no longer need to wonder which function / object might be responsible for a certain API. There's still a lot of room for improvement. In particular we currently don't cache the source position for a given StackFrameInfo (or globally), but rather recompute it every time. This is still very fast, significantly faster than the previous approach. There are some notable (potentially user visible) changes: - The CallSite#GetPosition() method now consistently returns the Wasm module relative bytecode offset for all Wasm frames (previously it'd return the function relative bytecode offset for non-asm.js Wasm frames). - The column and line numbers returned from StackFrameInfo methods are consistently 1-based now, instead of sometimes being 0-based (Wasm) and sometimes being 1-based (JS and asm.js Wasm). The only potentially noticable difference is that for CallSite#GetLineNumber() no longer returns 0 for Wasm frames, but that was wrong and useless anyways. - CallSite#GetThis() would sometimes return the_hole, another bug flushed out by this CL. The CL also contains some other not noteworthy drive-by-cleanups. Fixed: chromium:1057211 Bug: chromium:1077657, chromium:1069425, v8:8742 Bug: chromium:1127391, chromium:1098530, chromium:981541 Change-Id: Iff12f6838a4d99080db8dd96bccc14440affc5a5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2689183 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Simon Zünd <szuend@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#72694}
-
Marja Hölttä authored
Bug: v8:11384 Change-Id: I6c4410530811df62d57b93e8b7e34c29d928bcb4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2689188 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#72693}
-
Santiago Aboy Solanes authored
Bug: v8:11422 Change-Id: I106b2226d531d7a868ac9344cce8c965250316e1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2690589Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#72692}
-
Nico Hartmann authored
Temporarily disable these tests failing on msan builds after latest roll: - test262/intl402/DateTimeFormat/timezone-invalid - intl/regress-364374 - mjsunit/regress/regress-crbug-627935 No-Try: true No-Tree-Checks: true Bug: v8:11438 Change-Id: I4a7755f9f65b2e9a12463c9e12fbbe39d3f5efb2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2692188Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Auto-Submit: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/master@{#72691}
-
Clemens Backes authored
UBSan starts complaining about a nullptr destination in memcpy after https://crrev.com/c/2691828. This CL fixes the error by not copying if there is nothing to copy. R=nicohartmann@chromium.org No-Try: true No-Tree-Checks: true Change-Id: I2c941b37d26931d6c2253bc3bb2c0aa659d4cb71 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2690605 Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/master@{#72690}
-
v8-ci-autoroll-builder authored
Rolling v8/base/trace_event/common: https://chromium.googlesource.com/chromium/src/base/trace_event/common/+log/71cb2ac..7af6071 Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/6408b07..d1fa78c Rolling v8/buildtools: https://chromium.googlesource.com/chromium/src/buildtools/+log/fc5af1a..7e85fef Rolling v8/buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx/+log/d9040c7..8fa8794 Rolling v8/third_party/aemu-linux-x64: BJKsuvEy1d1R4k1qe_4WGn47cAA9BDUVDaMnfbyiH-cC..zN4Wm-IY1Nd2ZF2IFXt3kLaxI1cDiwANew4sQzpVRSgC Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/e6e7c93..d2aa569 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/79f916a..398091b Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/5798a76..35e7868 TBR=v8-waterfall-sheriff@grotations.appspotmail.com Change-Id: Ia25c05ee0cda2c20bcf26e1d309894340d2018d3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2691828Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#72689}
-
Dominik Inführ authored
Ensure that epilogues are added to the LocalHeap before starting the GC. Adding the epilogue after invoking NotifyStarted() might mean that the epilogue is only added after the GC is already done and the epilogue isn't run at all. The test flakily fails because the epilogue didn't execute then. Bug: v8:11434 Change-Id: I60723a99cd9224307f48acd0c0e8af3f93dd3eb2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2690600 Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#72688}
-
Ng Zhi An authored
This should also unblock V8 DEPS roll: https://chromium-review.googlesource.com/c/v8/v8/+/2689808 Bug: chromium:1177324 Change-Id: Iede2ba9c2257a2996715bcb7821ce14baa9ae9a8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2689089Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#72687}
-
Leszek Swirski authored
Sparkplug is a new baseline, non-optimising second-tier compiler, designed to fit in the compiler trade-off space between Ignition and TurboProp/TurboFan. Design doc: https://docs.google.com/document/d/13c-xXmFOMcpUQNqo66XWQt3u46TsBjXrHrh4c045l-A/edit?usp=sharing Bug: v8:11420 Change-Id: Ideb7270db3d6548eedd8337a3f596eb6f8fea6b1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2667514 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#72686}
-
Thibaud Michaud authored
Sample elapsed time between two consecutive exception events of the same type (throw/rethrow/catch). This will give us an idea of how frequently exception handling features are used at runtime during the origin trial. R=ahaas@chromium.org Bug: v8:8091 Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng Change-Id: Ic3095eeeca08d2e079a507a492f10d2efb5ecfd2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2684367Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#72685}
-
Andrew Comminos authored
When the CPU profiler receives a bytecode flush event, ensure that we clear the appropriate CodeEntry. Bug: v8:11054 Change-Id: I94e771e42192b75ea6d317738e4f2d5b76533dc8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2691826Reviewed-by: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Andrew Comminos <acomminos@fb.com> Cr-Commit-Position: refs/heads/master@{#72684}
-
Ng Zhi An authored
Extract v64x2.alltrue code sequence into macro-assembler for sharing between TurboFan and Liftoff. Bug: v8:11347,v8:11348 Change-Id: Ica436178b4f92ea0ed574010cd74f1babf66680f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2686013 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#72683}
-
Deepti Gandluri authored
- Add a no-simd-sse flag to skip SIMD tests on bots with no hardware support. Change-Id: I4efdbb5ee39c2e10ea8776a1f1e536ac96823efe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2629465 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Zhi An Ng <zhin@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#72682}
-
Ng Zhi An authored
Extract code sequence for v64x2.alltrue into macro-assembler for sharing between TurboFan and Liftoff. Bug: v8:11347,v8:11348 Change-Id: I8119f5425c8cf11ddac77f69ed9e62a408f7049d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2686011 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#72681}
-
Ng Zhi An authored
Bug: v8:11347,v8:11348 Change-Id: Ib9eb0c8d03af9e0d9171ba668e8720332659e187 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2686010 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#72680}
-
- 11 Feb, 2021 25 commits
-
-
Seth Brenith authored
In https://chromium-review.googlesource.com/c/v8/v8/+/2641180 , we are discussing renaming AccumulatorUse. To avoid polluting that change with a large mechanical find&replace, I've created a separate change for the renaming. Change-Id: Ibc7e438f9e719571c9237e7e08ba86562a3c679f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2684923Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#72679}
-
Milad Fa authored
Port 1b81ffb1 Original Commit Message: Other archs will come later. R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I7a1194c3270486de326b74b63cefc4aded5faff5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2691028Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72678}
-
Toon Verwaest authored
This speeds up sparkplug by >20%. This reland fixes the OffHeapBytecodeArray to also register a GC callback. Turns out off-heap here doesn't mean that the underlying bytecode array is off-heap and it can in fact move. Change-Id: I7c6e82abd2a7be08ead537ab84855e76edc3b290 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2688400 Auto-Submit: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#72677}
-
Milad Fa authored
Port 66964c51 Original Commit Message: Extract codegen into macro-assembler functions for reuse in Liftoff. Some minor tweaks in I32x4TruncSatF64x2SZero and I32x4TruncSatF64x2UZero to check dst and src overlap and move to scratch/dst accordingly. In TurboFan we can set these restrictions in the instruction-selector, but not in Liftoff. This doesn't make TurboFan codegen any worse, since those restrictions are still in place. R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: Iae59472a5e77c1becc5ff880081f2c0c8c149630 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2690828Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72676}
-
Sathya Gunasekaran authored
If the accessor pair is available, thread it through to the TryLookupCachedProperty function rather than looking it up again. On a simple microbenchmark[0] with --no-opt and --no-use-ic this provides a 5-10% improvement. [0]: https://gist.github.com/gsathya/c47da0a15be08062c12cda9b0887de3d Bug: v8:9805 Change-Id: I5b2d0c5e27c49a1d39a99dc63c3b0809bca4d6a7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2685178Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#72675}
-
Ng Zhi An authored
Other archs will come later. Bug: v8:11347,v8:11348 Change-Id: I9ea656b9c7ce03c9dafb631dd67f6e2f7d4346a2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2686312Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#72674}
-
Junliang Yan authored
Change-Id: If817a6ed0e20cf71f33bbeec69118adff0ac898e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2690548Reviewed-by: Milad Fa <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/master@{#72673}
-
Omer Katz authored
Bug: chromium:1056170 Change-Id: I6fb5278dd1ef14faac13602cd28286d0e0d29054 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2689198 Commit-Queue: Omer Katz <omerkatz@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Omer Katz <omerkatz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#72672}
-
Santiago Aboy Solanes authored
Reasons: * We disabled it more than a year ago for all configs * Not easy to re-enable * Not compatible with pointer compression as-is * Not compatible with concurrent TP/TF as-is * No concrete plans to re-enable it Also remove Map's layout_descriptor since it was only used for double field unboxing. Bug: v8:11422 Change-Id: I9260906eac199213b3210712e9903f1ecf1d7979 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2676637Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#72671}
-
Michael Lippautz authored
cppgc/testing.h is already part of a testonly gn target which only can be included from other test targets. This prevents any production target to depend on cppgc/testing.h. Bug: chromium:1056170 Change-Id: I51f6c47ffac2a05c8c63d7b4663c456a64fe75b4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2689196Reviewed-by: Omer Katz <omerkatz@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#72670}
-
Benedikt Meurer authored
The `wasmvalue` was missing from `PropertyPreview` and `ObjectPreview` subtype enums. Bug: chromium:1170282 Change-Id: If4f8aa330d81e603c82a16b19f14d037d556a373 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2689197Reviewed-by: Philip Pfaffe <pfaffe@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Auto-Submit: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#72669}
-
Mythri A authored
Currently %OptimizeFunctionOnNextCall returns if there is the function is already optimized. This cl changes this function to allow tiering up till we reach top tier. That allows us to tier up from Turboprop to Turbofan using intrinsics. This cl also introduces a runtime-test function to check if turboprop-as-toptier or turboprop-as-midtier is enabled. Bug: chromium:1172797, v8:9684 Change-Id: Idbd99b816d4b93e4e619be5d4ccdfe89fc561a9e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2682638 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#72668}
-
Clemens Backes authored
This reverts commit b471bc93. Reason for revert: Seems like we don't reliably deliver scriptParsed events on reload after this CL. Original change's description: > [wasm] Send a single scriptParsed event per script > > If a script was shared between multiple modules (because they used the > same wire bytes) it could happen that we still triggered multiple > "scriptParsed" events via CDP. This was because > {WasmEngine::GetOrCreateScript} did not communicate back whether it > used a cached script or whether it created a new one. > > This CL moves the call to {Debug::OnAfterCompile} (which triggers the > "scriptParsed" event) to the {WasmEngine::GetOrCreateScript} method, > such that we only call it once per script. > Since the engine only holds a weak reference to the script, we would > still trigger multiple events if the script is garbage-collected in the > meantime. In this case there is no way around this, as the new script > would have a new ID, hence we need to emit a new event to make it > public to the debugger. > > R=thibaudm@chromium.org > CC=bmeurer@chromium.org > > Bug: chromium:1151211 > Change-Id: I1a7986514fd708680541a0e5dc24e60f01f42c28 > Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng > Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng > Cq-Include-Trybots: luci.v8.try:v8_mac64_gc_stress_dbg_ng > Cq-Include-Trybots: luci.v8.try:v8_linux_gc_stress_dbg_ng > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2687755 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72648} TBR=clemensb@chromium.org,bmeurer@chromium.org,thibaudm@chromium.org Change-Id: I6cc299734e4fcff29289355973e7660b60b49a25 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:1151211 Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng Cq-Include-Trybots: luci.v8.try:v8_mac64_gc_stress_dbg_ng Cq-Include-Trybots: luci.v8.try:v8_linux_gc_stress_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2689199Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#72667}
-
Ng Zhi An authored
Bug: v8:11416 Change-Id: I68bd6cade55472aed006638ea6d0c1d516d9d2cc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2686308 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#72666}
-
Ng Zhi An authored
Did not factor out the codegen because it is short enough (1 or 2 instructions) and will unlikely be changed (for optimization reasons). Bug: v8:11265 Change-Id: Ia79c8553ad4b3924d21f77a6064c9003dfcaeb7a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2689001 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#72665}
-
Ng Zhi An authored
Did not factor out the codegen because it is short enough (1 or 2 instructions) and will unlikely be changed (for optimization reasons). Bug: v8:11265 Change-Id: Ic5e5bc7642e80448bdaa6d130dfe7c12018eb481 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2683209 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#72664}
-
Almothana Athamneh authored
Bug: v8:11385 Change-Id: Ia1511cb68b0b38081c28d9f7c036f7589fc4ab7e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2689195 Auto-Submit: Almothana Athamneh <almuthanna@chromium.org> Commit-Queue: Almothana Athamneh <almuthanna@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#72663}
-
Seth Brenith authored
Torque generates runtime accessor member functions for most class fields that are defined in .tq files, but fields with struct types are currently omitted. This change adds those accessors. As an example, if a .tq file defines the following: struct InternalClassStructElement { a: Smi; b: Smi; } class InternalClassWithStructElements extends HeapObject { const count: Smi; entries[count]: InternalClassStructElement; } Then the following accessors are generated to get and set each struct field within the 'entries' field: inline int entries_a(int i) const; inline void set_entries_a(int i, int value); inline int entries_b(int i) const; inline void set_entries_b(int i, int value); Bug: v8:7793 Change-Id: Ia40b5918e9d09f53ad8e78bc33f8629b8d6a79fe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2676926Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#72662}
-
Thibaud Michaud authored
In the latest spec, catch can take an exception index immediate, and control-flow jumps to the appropriate catch handler depending on the thrown exception. Do this by allowing multiple jump targets for the same pc in labels and in the control transfer map. At runtime, the unwinder will choose the appropriate control transfer entry based on the exception tag, unpack the exception and jump to the handler. Enable the exception cctests that were currently disabled for the interpreter, fix some issues and add tests for the new behaviors. R=clemensb@chromium.org Bug: v8:8091 Change-Id: I30cb8f9459647a7c6f7bfd9785b238a9c9e9fc10 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2690587Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#72661}
-
Omer Katz authored
HeapBase::CollectStatistics returns a HeapStatistics struct that can be used by blink to populate a memory dump. Bug: chromium:1056170 Change-Id: Ic147a02ba6b4aa77bf92cfca067da70b7e1af55b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2689181 Commit-Queue: Omer Katz <omerkatz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#72660}
-
Marja Hölttä authored
Notes: https://docs.google.com/document/d/1fEumNPCcOn4X0N5jGlAT7GQ5CEKKnw0YxLPXMoaSK5Q/edit?usp=sharing Bug: v8:11374 Change-Id: I96720c0d69fe28e7229c4c22ed3d291587b73f59 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2667511 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#72659}
-
Almothana Athamneh authored
Bug: chromium:1174109 Change-Id: I798fb25f97e8f5e7b38b71ea482b1ec779d0a31a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2689186 Commit-Queue: Almothana Athamneh <almuthanna@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#72658}
-
Michael Lippautz authored
WrapperDescriptor is used to describe how JS wrapper objects can be inspected to find C++ wrappable objects. In addition, to specifying which embedder fields are used to find type and instance, the descriptor also provides and embedder id that identifies garbage-collected objects. It is expected that the first field of the type is a uint16_t with that id. Bug: chromium:1056170 Change-Id: I9cf8d79db972f2dea023114fd5a567e89a3bf373 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2688399Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#72657}
-
Ulan Degenbaev authored
Bug: v8:9380 Change-Id: I31d825265d283627406d4b976c8ab067eb7d2c06 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2154798 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#72656}
-
Marja Hölttä authored
Bug: v8:11340, chromium:177058 Change-Id: I34f400bc4d66275eb2fed082f1d44eccf21839d7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2689187Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#72655}
-