- 28 Mar, 2019 2 commits
-
-
Pierre Langlois authored
This is a reland of 93716b9e Original change's description: > [snapshot] Add support for native counters. > > Counters in generated code, as enabled with --native-code-counters, do not work > in the snapshot. This adds a `v8_enable_snapshot_code_counters` build option > enabled by defaut in debug mode that allows code from the snapshot to increment > the current isolate's set of counters. > > For this to work, we need to add native code counters in the external reference > table. > > To keep the no snapshot configuration similar, we've also enabled the > --native-code-counters flag by default for debug builds. > > Change-Id: I4478b79858c9b04f57e06e7ec67449e9e3a76f53 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1528998 > Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60495} Change-Id: Ib6427caf068ca196a032e3f3b97d9f9219e0fe60 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1543349Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Cr-Commit-Position: refs/heads/master@{#60507}
-
Michael Achenbach authored
This reverts commit 93716b9e. Reason for revert: Breaks asan debug: https://ci.chromium.org/p/v8/builders/ci/V8%20Clusterfuzz%20Mac64%20ASAN%20-%20debug%20builder/7872 https://ci.chromium.org/p/v8/builders/ci/V8%20Clusterfuzz%20Linux64%20ASAN%20-%20debug%20builder/7874 Original change's description: > [snapshot] Add support for native counters. > > Counters in generated code, as enabled with --native-code-counters, do not work > in the snapshot. This adds a `v8_enable_snapshot_code_counters` build option > enabled by defaut in debug mode that allows code from the snapshot to increment > the current isolate's set of counters. > > For this to work, we need to add native code counters in the external reference > table. > > To keep the no snapshot configuration similar, we've also enabled the > --native-code-counters flag by default for debug builds. > > Change-Id: I4478b79858c9b04f57e06e7ec67449e9e3a76f53 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1528998 > Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60495} TBR=sigurds@chromium.org,jgruber@chromium.org,petermarshall@chromium.org,pierre.langlois@arm.com Change-Id: I93f1ed714e3dcd309f3100685e4bd282db471d46 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1543209Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#60500}
-
- 27 Mar, 2019 2 commits
-
-
Pierre Langlois authored
Counters in generated code, as enabled with --native-code-counters, do not work in the snapshot. This adds a `v8_enable_snapshot_code_counters` build option enabled by defaut in debug mode that allows code from the snapshot to increment the current isolate's set of counters. For this to work, we need to add native code counters in the external reference table. To keep the no snapshot configuration similar, we've also enabled the --native-code-counters flag by default for debug builds. Change-Id: I4478b79858c9b04f57e06e7ec67449e9e3a76f53 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1528998 Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#60495}
-
Sigurd Schneider authored
Bug: v8:9020 Change-Id: Ia789e21ac9324fca77f559a88180fadd97491a91 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1541050 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#60486}
-
- 25 Mar, 2019 1 commit
-
-
Benedikt Meurer authored
This adds OBJECT/SNAPSHOT trace events for Script and SharedFunctionInfo objects, logging their creation with appropriate information to make sense of them. Based on that we introduces five flow events to model the optimized compilation via tracing in the "disabled-by-default-v8.compile" category: - "v8.optimizingCompile.start" logs the creation of the PipelineCompilationJob (for TurboFan JavaScript optimization) with the "function" argument referring to the trace event object created for the SharedFunctionInfo. - "v8.optimzingCompile.prepare" logs the preparation of the PipelineCompilationJob on the main thread, also carrying the "function" argument. This connects the flow event to the actual tracing duration event associated with the preparation phases. - "v8.optimizingCompile.execute" logs the (usually concurrent) optimization of the TurboFan graph (again with "function"). - "v8.optimizingCompile.finalize" logs the main thread phase which finalizes the optimized code and eventually installs it (in case of success). - "v8.optimizingCompile.end" signals the end of the PipelineCompilationJob, which carries the "compilationInfo", that contains the interesting bits of the OptimizedCompilationInfo, specifically whether the compile was successfull and which functions were inlined for example. This also adds two instant events "V8.AbortOptimization" and "V8.RetryOptimization" in "disabled-by-default-v8.compile" category that are emitted when TurboFan cannot optimize a certain function. In case of "V8.RetryOptimization", TurboFan might be able to optimize it later, whereas "V8.AbortOptimization" permanently disables the optimization of a given function. The JSON representation of this is ```js { "pid": 256639, "tid": 256639, "ts": 6935411377801, "tts": 159116, "ph": "I", "cat": "disabled-by-default-v8.compile", "name": "V8.AbortOptimization", "dur": 0, "tdur": 0, "args": { "reason": "Function is too big to be optimized", "function": { "id_ref": "0x600000001", "scope": "v8::internal::SharedFunctionInfo" } } }, ``` where the "function" refers to a previously emitted SNAPSHOT for the function in question. In the trace viewer it will show up as instant event under "v8.optimizingCompile.prepare" in case of the relevant example where optimization is disabled due to reaching the bytecode limit (as in the JSON above), i.e. it'll look something like this https://i.paste.pics/aafc2de9df10ea8f5acc1a761d80f07b.png for the example highlighted in the recent blog post https://ponyfoo.com/articles/javascript-performance-pitfalls-v8 that describes the optimization limit. The "v8.optimizingCompile.end" duration event will also carry this information as part of the "compilationInfo" object, but specifically for CI tools, etc. it might be a whole lot easier to just look for the "V8.AbortOptimization" instant event. Bug: v8:8598, v8:9039 Tbr: ulan@chromium.org Doc: bit.ly/v8-tracing-signals Change-Id: Ic87ac336004690c65b6b15ad73bc6fbd4b5f12c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1511483 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60448}
-
- 20 Mar, 2019 2 commits
-
-
Leszek Swirski authored
This reverts commit 3cda21de. Reason for revert: Breaks the roll on Windows (see https://cr-buildbucket.appspot.com/build/8918477701097622400) Original change's description: > V8 x64 backend doesn't emit ABI compliant stack frames > > On 64 bit Windows, the OS stack walking does not work because the V8 x64 > backend doesn't emit unwinding info and also because it doesn't emit ABI > compliant stack frames. See > https://docs.google.com/document/d/1-wf50jFlii0c_Pr52lm2ZU-49m220nhYMrHDi3vXnh0/edit > for more details. > > This problem can be fixed by observing that V8 frames usually all have the same > prolog and epilog: > > push rbp, > mov rbp, rsp > ... > pop rbp > ret N > > and that it is possible to define XDATA (UNWIND_CODEs) that specify how Windows > should walk through V8 frames. Furthermore, since V8 Code objects are all > allocated in the same code-range for an Isolate, it is possible to register a > single PDATA/XDATA entry to cover stack walking for all the code generated > inside that code-range. > > This PR contains changes required to enable stack walking on Win64: > > EmbeddedFileWriter now adds assembler directives to the builtins > snapshot source file (embedded.cc) to emit additional entries in the .pdata and > in the .xdata section of the V8 executable. This takes care of stack walking > for embedded builtins. (The case of non-embedded builtins is not supported). > The x64 Assembler has been modified to collect the information required to emit > this unwind info for builtins. > > Stack walking for jitted code is handled is Isolate.cpp, by registering > dynamically PDATA/XDATA for the whole code-range address space every time a new > Isolate is initialized, and by unregistering them when the Isolate is > destroyed. > > Stack walking for WASM jitted code is handled is the same way in > wasm::NativeModule (wasm/wasm-code-manager.cpp). > > It is important to note that Crashpad and Breakpad are already registering > PDATA/XDATA to manage and report unhandled exceptions (but not for embedded > builtins). Since it is not possible to register multiple PDATA entries for the > same address range, a new function is added to the V8 API: > SetUnhandledExceptionCallback() can be used by an embedder to register its own > unhandled exception handler for exceptions that arise in v8-generated code. > V8 embedders should be modified accordingly (code for this is in a separate PR > in the Chromium repository: > https://chromium-review.googlesource.com/c/chromium/src/+/1474703). > > All these changes are experimental, behind: > > the 'v8_win64_unwinding_info' build flag, and > the '--win64-unwinding-info' runtime flag. > > Bug: v8:3598 > Change-Id: Iea455ab6d0e2bf1c556aa1cf870841d44ab6e4b1 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1469329 > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Paolo Severini <paolosev@microsoft.com> > Cr-Commit-Position: refs/heads/master@{#60330} TBR=bbudge@chromium.org,ulan@chromium.org,mvstanton@chromium.org,mstarzinger@chromium.org,gdeepti@chromium.org,jgruber@chromium.org,paolosev@microsoft.com Change-Id: If8470da94c58df8c800cbe8887f9f86236e43353 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:3598 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1532321Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#60372}
-
Tom Anderson authored
This CL includes a revert of [1] with thakis@'s proposed fix at [2]. Verified a build with the below gn args works on Linux: target_os = "win" target_cpu = "x86" is_debug = false is_official_build = true is_component_build = false use_goma = true enable_nacl = false use_custom_libcxx = true [1] https://chromium.googlesource.com/v8/v8.git/+/93ee541417b6f5904072c0ecdfc6fc041811b489 [2] https://bugs.chromium.org/p/chromium/issues/detail?id=942347#c2 BUG=chromium:942347 R=machenbach CC=thakis Change-Id: I34f5744a9f600efbc075f4b5ba8d1c66bff46ae6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1529250 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Auto-Submit: Thomas Anderson <thomasanderson@chromium.org> Cr-Commit-Position: refs/heads/master@{#60349}
-
- 19 Mar, 2019 3 commits
-
-
Milad Farazmand authored
Due to ppc having a fixed 4 byte instruction length, changing ByteChunk length from 8 to 4 bytes will fix any padding issues while generating the "embed.S" file. Change-Id: Ide799908effd88d5387e97627917b095fcc3051c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1524720 Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#60337}
-
Paolo Severini authored
On 64 bit Windows, the OS stack walking does not work because the V8 x64 backend doesn't emit unwinding info and also because it doesn't emit ABI compliant stack frames. See https://docs.google.com/document/d/1-wf50jFlii0c_Pr52lm2ZU-49m220nhYMrHDi3vXnh0/edit for more details. This problem can be fixed by observing that V8 frames usually all have the same prolog and epilog: push rbp, mov rbp, rsp ... pop rbp ret N and that it is possible to define XDATA (UNWIND_CODEs) that specify how Windows should walk through V8 frames. Furthermore, since V8 Code objects are all allocated in the same code-range for an Isolate, it is possible to register a single PDATA/XDATA entry to cover stack walking for all the code generated inside that code-range. This PR contains changes required to enable stack walking on Win64: EmbeddedFileWriter now adds assembler directives to the builtins snapshot source file (embedded.cc) to emit additional entries in the .pdata and in the .xdata section of the V8 executable. This takes care of stack walking for embedded builtins. (The case of non-embedded builtins is not supported). The x64 Assembler has been modified to collect the information required to emit this unwind info for builtins. Stack walking for jitted code is handled is Isolate.cpp, by registering dynamically PDATA/XDATA for the whole code-range address space every time a new Isolate is initialized, and by unregistering them when the Isolate is destroyed. Stack walking for WASM jitted code is handled is the same way in wasm::NativeModule (wasm/wasm-code-manager.cpp). It is important to note that Crashpad and Breakpad are already registering PDATA/XDATA to manage and report unhandled exceptions (but not for embedded builtins). Since it is not possible to register multiple PDATA entries for the same address range, a new function is added to the V8 API: SetUnhandledExceptionCallback() can be used by an embedder to register its own unhandled exception handler for exceptions that arise in v8-generated code. V8 embedders should be modified accordingly (code for this is in a separate PR in the Chromium repository: https://chromium-review.googlesource.com/c/chromium/src/+/1474703). All these changes are experimental, behind: the 'v8_win64_unwinding_info' build flag, and the '--win64-unwinding-info' runtime flag. Bug: v8:3598 Change-Id: Iea455ab6d0e2bf1c556aa1cf870841d44ab6e4b1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1469329Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Paolo Severini <paolosev@microsoft.com> Cr-Commit-Position: refs/heads/master@{#60330}
-
Igor Sheludko authored
When pointer compression is enabled the [u]intptr_t and double fields are only kTaggedSize aligned so in order to avoid undefined behavior in C++ code we have to access these values in an unaligned pointer friendly way although both x64 and arm64 architectures (where pointer compression is supported) allow unaligned access. These changes will be removed once v8:8875 is fixed and all the kSystemPointerSize fields are properly aligned. Bug: v8:7703 Change-Id: I4df477cbdeab806303bb4f675d52b61c06342c8e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1528996 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#60321}
-
- 18 Mar, 2019 1 commit
-
-
Jakob Gruber authored
This was always the intended behavior: when --embedded-variant is not passed, we should assume "Default". What actually happened in this case was that we'd initialize to nullptr. This CL adds the missing nullptr check. Bug: v8:6666 Change-Id: I87247c6c6cfec20da86d2714732a2f6044bb9b77 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1526193 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Auto-Submit: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#60278}
-
- 13 Mar, 2019 2 commits
-
-
Maciej Goszczycki authored
Splits heap setup to enable a single setup method on read-only heap. This simplifies shared read-only heap initialization code. Bug: v8:7464 Change-Id: If4f61e1fbc4780e19dcda2b2d50050b2c204b0e3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1518179 Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Reviewed-by:
Dan Elphick <delphick@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60224}
-
Maciej Goszczycki authored
This enables things like simple DCHECKs in functions that do not have access to isolate or heap. Change-Id: I7962c28f0c6a4928ee880f1373501f29e45ae1f8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1517886Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Dan Elphick <delphick@chromium.org> Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Cr-Commit-Position: refs/heads/master@{#60222}
-
- 12 Mar, 2019 1 commit
-
-
Maciej Goszczycki authored
Seal read-only space before startup deserialization. This is necessary for fully isolating read-only space creation. Strings within read-only space are now eagerly rehashed. Bug: v8:7464 Change-Id: I8b91a6f6b31e03e69d80109b1ca30c675a495c36 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1511485Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Dan Elphick <delphick@chromium.org> Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Cr-Commit-Position: refs/heads/master@{#60182}
-
- 07 Mar, 2019 1 commit
-
-
Peter Marshall authored
When running mksnapshot standalone, no callback is registered to serialize embedder fields. In this case they are most probably empty as there is no embedder to set them, so provide a default serialization that keeps them as nullptr. Bug: v8:8822 Change-Id: I9219f2755488aa1473959c3ee75e9d4f47202359 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1507677 Auto-Submit: Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#60094}
-
- 06 Mar, 2019 1 commit
-
-
Igor Sheludko authored
... when pointer compression is enabled and some number of cleanups. Bug: v8:7703 Change-Id: If7344abf68a1c4d54e4a79d066dc185f25055d7d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1477737 Commit-Queue: Igor Sheludko <ishell@chromium.org> Auto-Submit: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#60056}
-
- 01 Mar, 2019 1 commit
-
-
Maciej Goszczycki authored
Bug: v8:8562 Change-Id: I05421c9fa96e6c1d424c6d529922cde02ba2dc37 Reviewed-on: https://chromium-review.googlesource.com/c/1494760Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Dan Elphick <delphick@chromium.org> Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Cr-Commit-Position: refs/heads/master@{#59981}
-
- 28 Feb, 2019 2 commits
-
-
Maciej Goszczycki authored
This provides a single point where read-only space sharing will be controlled. Eventually ReadOnlyDeserializer will take ReadOnlyHeap instead of Isolate, first steps include https://chromium-review.googlesource.com/c/v8/v8/+/1483054 Bug: v8:7464 Change-Id: I213819aeca6fca335235025c9195edf474230eda Reviewed-on: https://chromium-review.googlesource.com/c/1489087 Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Reviewed-by:
Dan Elphick <delphick@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#59954}
-
Maciej Goszczycki authored
Bug: v8:8562 Change-Id: I1ad6d2febc9327e2ef93f0409f6fddf1cebb4834 Reviewed-on: https://chromium-review.googlesource.com/c/1494012Reviewed-by:
Dan Elphick <delphick@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Cr-Commit-Position: refs/heads/master@{#59945}
-
- 27 Feb, 2019 1 commit
-
-
Dan Elphick authored
Change-Id: I73532f4cba643032c5fad6e9bca70c901bf71f85 Reviewed-on: https://chromium-review.googlesource.com/c/1491513 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#59904}
-
- 25 Feb, 2019 2 commits
-
-
Maciej Goszczycki authored
This means ReadOnlyDeserializer can be made isolate independent. Without this Isolate is needed for rehashing read-only space. Bug: v8:7464 Change-Id: Id2c9968a0ecfa2362f499ded6c7e0f7b2be00dfb Reviewed-on: https://chromium-review.googlesource.com/c/1483054 Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Reviewed-by:
Dan Elphick <delphick@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#59823}
-
Jon Kunkee authored
When stubbing out source line information emission for Windows, the ARM64 Windows branch was missed. This change copies the x86/x64 stubs as appropriate. Bug: chromium:893460,v8:8870 R=jgruber@chromium.org Bug: chromium:893460,v8:8870 Change-Id: I1416b602a4f96a68c37fdeeb816ce1ce33b12407 Reviewed-on: https://chromium-review.googlesource.com/c/1453637 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#59817}
-
- 18 Feb, 2019 1 commit
-
-
Mike Stanton authored
Reason for revert/reland: UBSan complained of unaligned reads. To improve the Torque debugging experience, we can add source positions for each line. This information is carried through the generated CSA code (in <output directory>/gen/torque-generated/*.cc) and embedded as SourcePositions in the Code object. At snapshot time, these SourcePositions are stripped from the Code object and turned into platform-appropriate line number debug information. At this time on Linux, you'll need to build with "is_clang=false" in order to use GCC, because crucial steps are missing in Clang's ability to convey the information into the binary successfully. This CL also introduces a flag to control the existing source information in CSA code. --enable-source-at-csa-bind is now set to false by default because it's a bit confusing to "hop" between source lines in .TQ files and in .CC files. I expect to continue making adjustments there, as I want to provide helpful debugging aids at the CSA level as well as the Torque level. The current configuration prioritizes Torque. TBR=tebbi@chromium.org Bug: v8:8418 Change-Id: Idb80467d3679ec2361386fe9b67597b93d7f72cf Reviewed-on: https://chromium-review.googlesource.com/c/1475763Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#59657}
-
- 15 Feb, 2019 1 commit
-
-
Jakob Kummerow authored
This takes heap-inl.h out of the "Giant Include Cluster". Naturally, that means adding a bunch of explicit includes in a bunch of places that relied on transitively including them before. As of this patch, no header file outside src/heap/ includes heap-inl.h. Bug: v8:8562,v8:8499 Change-Id: I65fa763f90e66afc30d105b9277792721f05a6d4 Reviewed-on: https://chromium-review.googlesource.com/c/1459659 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#59617}
-
- 14 Feb, 2019 2 commits
-
-
Igor Sheludko authored
Bug: v8:8477, v8:8834 Change-Id: I9213cca077a2758b87a6cb95bcb01d0186c32098 Reviewed-on: https://chromium-review.googlesource.com/c/1472633Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#59602}
-
Yang Guo authored
R=leszeks@chromium.org Change-Id: Ib66b36884be7dd1283eb0375cfaf94a5b503f162 Reviewed-on: https://chromium-review.googlesource.com/c/1470110Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#59594}
-
- 13 Feb, 2019 1 commit
-
-
Nico Weber authored
For macros expanding to function definitions, I removed the spurious ; after macro invocations. For macros expandign to function declarations, I made the ; required and consistently inserted it. No behavior change. Bug: chromium:926235 Change-Id: Ib8085d85d913d74307e3481f7fee4b7dc78c7549 Reviewed-on: https://chromium-review.googlesource.com/c/1467545Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org> Cr-Commit-Position: refs/heads/master@{#59558}
-
- 08 Feb, 2019 6 commits
-
-
Igor Sheludko authored
... in favor of [Full]MaybeObjectSlot and finally make deserializer pointer compression friendly. Bug: v8:8794 Change-Id: I23e5b119ccfe7d0c12c15a857978d89813e0522f Reviewed-on: https://chromium-review.googlesource.com/c/1460460 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#59472}
-
Igor Sheludko authored
... and update the list of unused bytecodes. This CL also drops kInternalReferenceEncoded as all necessary details are already encoded in RelocInfo. Bug: v8:8794, v8:8562 Change-Id: Ia8aec1f4bcf9802fe15322bd6bb273218d8959fa Reviewed-on: https://chromium-review.googlesource.com/c/1460459 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#59471}
-
Ulan Degenbaev authored
This patch ensures that the serializer does not read the field of the DescriptorArray that can be changed concurrently by GC. Bug: v8:8803 Change-Id: I849fd2278abd228a46351ab18efb8bfd201ceafc Reviewed-on: https://chromium-review.googlesource.com/c/1458239 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#59465}
-
Igor Sheludko authored
... as it's no longer needed. Bug: v8:8794, v8:8562 Change-Id: Ia5149bab33af219e5cdc6909af4688e53f1409fa Reviewed-on: https://chromium-review.googlesource.com/c/1460458 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#59463}
-
Igor Sheludko authored
... as it's no longer needed. Bug: v8:8794, v8:8562 Change-Id: Ifbc4f5f5d34f24ff4ba8f32309e8a032268c12c0 Reviewed-on: https://chromium-review.googlesource.com/c/1460457 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#59461}
-
Igor Sheludko authored
... as they are no longer needed. Bug: v8:8794, v8:8562 Change-Id: Ib5d87fce9834839410b0dffce95b4a8ae4f946cc Reviewed-on: https://chromium-review.googlesource.com/c/1460456Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#59457}
-
- 07 Feb, 2019 3 commits
-
-
Igor Sheludko authored
... and use RelocInfo iteration instead of skip-and-unaligned-write sequences. This is a step towards avoiding unaligned stores via UnalignedSlot. Various cleanup CLs will follow. Bug: v8:8794 Change-Id: I62faedfa1c1ababe4b185fa8d7f2c6c1baa5cf79 Reviewed-on: https://chromium-review.googlesource.com/c/1456579 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#59443}
-
Sigurd Schneider authored
Drive-by: Refactor FlushInstructionCache to its own header. This removes dependencies of objects.cc and code.cc Bug: v8:8562 Change-Id: If23f3b9d4f2068e08c61c0f4b070ecfe1b9a6cc0 Reviewed-on: https://chromium-review.googlesource.com/c/1456081Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#59435}
-
Jakob Gruber authored
We've recently run into several platform- and compiler-specific errors and warnings about alignment. This tentatively implements AlignToDataAlignment for all platforms, which is used when setting up the v8_Default_embedded_blob_ v8_Default_embedded_blob_size_ variables. Bug: v8:6666,chromium:929205 Change-Id: I0cee09eda71551f8b7d14f4076da496057023146 Reviewed-on: https://chromium-review.googlesource.com/c/1458018 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#59428}
-
- 06 Feb, 2019 4 commits
-
-
Igor Sheludko authored
This drops Read() and Slot() methods from UnalignedSlot and simplifies Deserializer::ReadDataCase() method. Bug: v8:8794, v8:8562 Change-Id: I8a1f62e7b36fb91e379e38d91bcbf5728d1c5471 Reviewed-on: https://chromium-review.googlesource.com/c/1456099 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#59413}
-
Igor Sheludko authored
Bug: v8:8794, v8:8562 Change-Id: I199b60150437c3a475a25c49c708058cd1371a1d Reviewed-on: https://chromium-review.googlesource.com/c/1456038 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#59410}
-
Igor Sheludko authored
... rather than as a suffix. This avoids reading previous values which in turn will make things simpler from the pointer compression point of view in a sense that this is a step towards replacing UnalignedSlot with MaybeObjectSlot. Bug: v8:8794, v8:8562 Change-Id: I9a9b4a01f73b8058074d337b7e9e9f75fa1c9de0 Reviewed-on: https://chromium-review.googlesource.com/c/1456037 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#59402}
-
Yang Guo authored
This reverts commit b1eb340d. Bug: v8:8761 Change-Id: Icd952e16e85a7beb07874cb8979eec4cf1991a14 Reviewed-on: https://chromium-review.googlesource.com/c/1454922Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#59391}
-