| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Remove stray c_str() calls from v8. None of these would seem to require a truncation at an embedded NUL, so we can create strings/string_views directly. Bug: 412730353 Change-Id: I24aab7b376855000afbfe0d8bcc20865dc617890 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6484712 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Auto-Submit: Tom Sepez <tsepez@chromium.org> Cr-Commit-Position: refs/heads/main@{#100129} | 1 年前 | |
Remove inactive accounts from OWNERS Remove jarin, mslekova, and tebbi from OWNERS files. Bug: 338340739 Change-Id: I9ec3708793a07ddf4d11ea4b186b711406e5668f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5540776 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Auto-Submit: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/main@{#93981} | 2 年前 | |
[cleanup] Modernize std::*::value and ::type Mechanically replacing std::foo<X>::value with std::foo_v<X>, and the same for ::type -> _t. Change-Id: I543dda07ba4c95534cdcd51f1f438f2626be8273 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6491388 Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#99940} | 1 年前 | |
[Torque] Ensure that field synchronization annotations match ... for read and write operations. This CL fixes the mismatch in FeedbackVector.raw_feedback_slots[] and WeakArrayList.objects[] definitions (internally we were implicitly generating relaxed setters for these fields and this change makes it explicit). This simplification allows propagating the synchronization mode through LoadReferenceInstruction which is necessary for generating correct ReadField<..>() calls depending on the field's synchronization mode. This change is necessary for a follow-up CL where Torque must generate Relaxed_ReadField<..>() calls for computing optional field's condition based on relaxed 'flags' field. Drive-by: support @cppRelaxedLoad/@cppRelaxedStore for untagged fields. Bug: 377410079, 42201104 Change-Id: I4c70addae9a8436884246fdb2fb0832d5242f485 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5999319 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#97058} | 1 年前 | |
[torque] Replace uses of v8::base::Optional with std::optional 1. v8::base::Optional has been aliasing to std::optional for some time now. We should replace the uses and use std::optional directly. 2. Adjust the location of some header files and some namespace usage according to the coding standards. 3. Suppress some cpplint warnings and remove some redundant header files that were forgotten to be removed before. 4. To avoid spam, my non-@chromium.org email address has been removed from the AUTHORS file. Bug: chromium:355003178 Change-Id: I3a2050c07683f702ce40f1b88a2f9757c5ccacdd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5741080 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95315} | 1 年前 | |
[torque] Replace uses of v8::base::Optional with std::optional 1. v8::base::Optional has been aliasing to std::optional for some time now. We should replace the uses and use std::optional directly. 2. Adjust the location of some header files and some namespace usage according to the coding standards. 3. Suppress some cpplint warnings and remove some redundant header files that were forgotten to be removed before. 4. To avoid spam, my non-@chromium.org email address has been removed from the AUTHORS file. Bug: chromium:355003178 Change-Id: I3a2050c07683f702ce40f1b88a2f9757c5ccacdd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5741080 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95315} | 1 年前 | |
[torque] Replace uses of base::nullopt with std::nullopt And there are some nested namespaces. Bug: chromium:355676041 Change-Id: I6a959c0e32a888b8654e4b5f23b9a977badac495 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5743141 Reviewed-by: Shu-yu Guo <syg@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95367} | 1 年前 | |
[runtime][torque] Undefined Doubles Introduce a special nan value to represent undefined values in doubles to allow JSArrays to stay in (holey) double elements instead of transitioning into tagged representation. This is only the first part of a larger change as proper handling in the compiler is still missing. Bug: 385155404 Change-Id: I1c1c9418447d0f060dca5b28a63b858b4e1a6dd5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6063479 Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#98120} | 1 年前 | |
[hole] Move all holes together for range-checked IsAnyHole Bug: 434179415, 42202654 Change-Id: Iae52a520ecfa69542b3451eaa2ab41e21e44a56f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6845797 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#102017} | 10 个月前 | |
[toque] Change source position format Use a url-like source position format for emited defnition locations. Hopefully this will make links clickable on codesearch. Change-Id: I343c6bc3cc4f159d5e3974d7ec5af4a578aaf03a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3207887 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#77261} | 4 年前 | |
[torque] Format generated files better This is mostly just whitespace tweaks, plus removing a redundant public access specifier. Bug: v8:7793 Change-Id: Ic8b3efe4f707108d29dc2dfd55c46d9a47c48058 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3199603 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/main@{#77195} | 4 年前 | |
[torque] Emit TNode<Union<...>> for Union types ... and propagate this throughought the CSA code, predominantly transitively propagating JSAny. To make this easier, there is additional support for: * Compatibility between torque definitions of types via Unions and C++ definitions of some types (e.g. handling MaybeObject which is a single type in C++ and a Union in torque). We will want to align these more closely in the future. * A new Union::Without helper to remove types from a Union (e.g. after a Smi check). Bug: 42202654 Change-Id: I85f4b007d071d912966e4f00571058e79a3fd70f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6269398 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#98722} | 1 年前 | |
[torque] Replace uses of base::nullopt with std::nullopt And there are some nested namespaces. Bug: chromium:355676041 Change-Id: I6a959c0e32a888b8654e4b5f23b9a977badac495 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5743141 Reviewed-by: Shu-yu Guo <syg@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95367} | 1 年前 | |
Avoid copies of std::vector<> where possible in torque. These were found while trying to make PDFium build without implicit vector copies. These are resolved by either moving values or by passing by const-ref. Change-Id: I0205e0307901217083375e2349d31c2e703d7a5b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5916854 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Tom Sepez <tsepez@chromium.org> Cr-Commit-Position: refs/heads/main@{#96491} | 1 年前 | |
[base] Rename functional.h to hashing.h That header defines our custom hashing infrastructure, so we should name it appropriately. There's no reason to follow the stdlib naming, which defines std::hash in the <functional> header. R=leszeks@chromium.org Bug: 380896845 Change-Id: I5e45ba5e55f677daacbb342b4e6591e1b3e186ea Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6054260 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#97450} | 1 年前 | |
[torque] Add @incrementUseCounter for builtins With the new guidance to add WebDX counters for every web API, including JS ones, make it easier to increment a use counter when writing Torque builtins. Fixed: 379076357 Change-Id: I1d3151516b8c9c63a565d260de79ab23d5eb9902 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6020827 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#97206} | 1 年前 | |
[torque] Add @incrementUseCounter for builtins With the new guidance to add WebDX counters for every web API, including JS ones, make it easier to increment a use counter when writing Torque builtins. Fixed: 379076357 Change-Id: I1d3151516b8c9c63a565d260de79ab23d5eb9902 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6020827 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#97206} | 1 年前 | |
[torque] Add @incrementUseCounter for builtins With the new guidance to add WebDX counters for every web API, including JS ones, make it easier to increment a use counter when writing Torque builtins. Fixed: 379076357 Change-Id: I1d3151516b8c9c63a565d260de79ab23d5eb9902 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6020827 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#97206} | 1 年前 | |
[torque] Add @incrementUseCounter for builtins With the new guidance to add WebDX counters for every web API, including JS ones, make it easier to increment a use counter when writing Torque builtins. Fixed: 379076357 Change-Id: I1d3151516b8c9c63a565d260de79ab23d5eb9902 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6020827 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#97206} | 1 年前 | |
[torque] Replace uses of v8::base::Optional with std::optional 1. v8::base::Optional has been aliasing to std::optional for some time now. We should replace the uses and use std::optional directly. 2. Adjust the location of some header files and some namespace usage according to the coding standards. 3. Suppress some cpplint warnings and remove some redundant header files that were forgotten to be removed before. 4. To avoid spam, my non-@chromium.org email address has been removed from the AUTHORS file. Bug: chromium:355003178 Change-Id: I3a2050c07683f702ce40f1b88a2f9757c5ccacdd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5741080 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95315} | 1 年前 | |
[torque] Replace uses of base::nullopt with std::nullopt And there are some nested namespaces. Bug: chromium:355676041 Change-Id: I6a959c0e32a888b8654e4b5f23b9a977badac495 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5743141 Reviewed-by: Shu-yu Guo <syg@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95367} | 1 年前 | |
[sandbox] Introduce TrustedPointer type in torque Previously, we needed constructs such as: @if(V8_ENABLE_SANDBOX) foo: IndirectPointer<Foo>; @ifnot(V8_ENABLE_SANDBOX) foo: Foo; Outside of torque, we simply call these "trusted pointers" (pointers to trusted objects that are indirect pointers if the sandbox is enabled, and otherwise regular tagged pointer). With this CL, we now have a TrustedPointer in torque (instead of the under-the-hood IndirectPointer type), so the above now simply becomes: foo: TrustedPointer<Foo>; Bug: 40069826 Change-Id: I727285c52ef0377f78641bf9f6f7b6b81443dfb9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5743494 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Samuel Groß <saelo@chromium.org> Cr-Commit-Position: refs/heads/main@{#95313} | 1 年前 | |
[sandbox] Introduce TrustedPointer type in torque Previously, we needed constructs such as: @if(V8_ENABLE_SANDBOX) foo: IndirectPointer<Foo>; @ifnot(V8_ENABLE_SANDBOX) foo: Foo; Outside of torque, we simply call these "trusted pointers" (pointers to trusted objects that are indirect pointers if the sandbox is enabled, and otherwise regular tagged pointer). With this CL, we now have a TrustedPointer in torque (instead of the under-the-hood IndirectPointer type), so the above now simply becomes: foo: TrustedPointer<Foo>; Bug: 40069826 Change-Id: I727285c52ef0377f78641bf9f6f7b6b81443dfb9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5743494 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Samuel Groß <saelo@chromium.org> Cr-Commit-Position: refs/heads/main@{#95313} | 1 年前 | |
[hole] Remove unneeded hole value checks Undo a bunch of work which added by-value hole checks. Originally we wanted to make holes fully unmapped, including their map pointer, so that potential hole values would have to be checked by pointer value rather than map checks. This turned out to be tricky, partially because the optimizing compiler could hoist map reads above hole checks, and partially because the extra hole value checks ended up with performance regressions. In https://crrev.com/c/7156717 we switched to keeping the holes' maps mapped with an unmapped payload after the map (very similar approach to the WasmNull). This means that all those hole checks we added are now unnecessary, since they were already covered by the existing map-based checks. We can also remove the --assert-hole-checked-by-value flag and fuzzing, since this is no longer an invariant we want to preserve. Bug: 434179415 Change-Id: I9399498d89592127e4291b8acffee83a3ba70052 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7206087 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#103982} | 7 个月前 | |
[Torque] Ensure that field synchronization annotations match ... for read and write operations. This CL fixes the mismatch in FeedbackVector.raw_feedback_slots[] and WeakArrayList.objects[] definitions (internally we were implicitly generating relaxed setters for these fields and this change makes it explicit). This simplification allows propagating the synchronization mode through LoadReferenceInstruction which is necessary for generating correct ReadField<..>() calls depending on the field's synchronization mode. This change is necessary for a follow-up CL where Torque must generate Relaxed_ReadField<..>() calls for computing optional field's condition based on relaxed 'flags' field. Drive-by: support @cppRelaxedLoad/@cppRelaxedStore for untagged fields. Bug: 377410079, 42201104 Change-Id: I4c70addae9a8436884246fdb2fb0832d5242f485 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5999319 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#97058} | 1 年前 | |
[hole] Move all holes together for range-checked IsAnyHole Bug: 434179415, 42202654 Change-Id: Iae52a520ecfa69542b3451eaa2ab41e21e44a56f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6845797 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#102017} | 10 个月前 | |
[torque] Replace uses of base::nullopt with std::nullopt And there are some nested namespaces. Bug: chromium:355676041 Change-Id: I6a959c0e32a888b8654e4b5f23b9a977badac495 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5743141 Reviewed-by: Shu-yu Guo <syg@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95367} | 1 年前 | |
[Torque] Ensure that field synchronization annotations match ... for read and write operations. This CL fixes the mismatch in FeedbackVector.raw_feedback_slots[] and WeakArrayList.objects[] definitions (internally we were implicitly generating relaxed setters for these fields and this change makes it explicit). This simplification allows propagating the synchronization mode through LoadReferenceInstruction which is necessary for generating correct ReadField<..>() calls depending on the field's synchronization mode. This change is necessary for a follow-up CL where Torque must generate Relaxed_ReadField<..>() calls for computing optional field's condition based on relaxed 'flags' field. Drive-by: support @cppRelaxedLoad/@cppRelaxedStore for untagged fields. Bug: 377410079, 42201104 Change-Id: I4c70addae9a8436884246fdb2fb0832d5242f485 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5999319 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#97058} | 1 年前 | |
Reland "[base] Move contextual variables to base" This is a reland of https://chromium-review.googlesource.com/c/v8/v8/+/4315774 Fixed bug: Avoid exporting the thread_local variable itself on Linux too and use explicit template specialization to make the exporting work. Change-Id: Iaa19e17b781167013b852b251f0f94e1af7c9aa2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4323384 Reviewed-by: Clemens Backes <clemensb@chromium.org> Auto-Submit: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#86328} | 3 年前 | |
Reland "[base] Move contextual variables to base" This is a reland of https://chromium-review.googlesource.com/c/v8/v8/+/4315774 Fixed bug: Avoid exporting the thread_local variable itself on Linux too and use explicit template specialization to make the exporting work. Change-Id: Iaa19e17b781167013b852b251f0f94e1af7c9aa2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4323384 Reviewed-by: Clemens Backes <clemensb@chromium.org> Auto-Submit: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#86328} | 3 年前 | |
[torque] Replace uses of base::nullopt with std::nullopt And there are some nested namespaces. Bug: chromium:355676041 Change-Id: I6a959c0e32a888b8654e4b5f23b9a977badac495 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5743141 Reviewed-by: Shu-yu Guo <syg@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95367} | 1 年前 | |
Include guards should be at the top of files. For the include guard optimization to kick in the include guards should be the first thing in the file, not counting comments. In some cases the guard has been moved above a comment for consistency even though this does not matter. A couple of include guards have been renamed for uniqueness. git cl upload complained about some lint nits which have been fixed. Change-Id: Iaa208ea6557c36c84bc7bb77c787ba9feb7cf037 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6275067 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Erik Corry <erikcorry@chromium.org> Cr-Commit-Position: refs/heads/main@{#98907} | 1 年前 | |
[cleanup] Modernize std::*::value and ::type Mechanically replacing std::foo<X>::value with std::foo_v<X>, and the same for ::type -> _t. Change-Id: I543dda07ba4c95534cdcd51f1f438f2626be8273 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6491388 Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#99940} | 1 年前 | |
[torque] Replace uses of base::nullopt with std::nullopt And there are some nested namespaces. Bug: chromium:355676041 Change-Id: I6a959c0e32a888b8654e4b5f23b9a977badac495 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5743141 Reviewed-by: Shu-yu Guo <syg@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95367} | 1 年前 | |
[torque] Replace uses of v8::base::Optional with std::optional 1. v8::base::Optional has been aliasing to std::optional for some time now. We should replace the uses and use std::optional directly. 2. Adjust the location of some header files and some namespace usage according to the coding standards. 3. Suppress some cpplint warnings and remove some redundant header files that were forgotten to be removed before. 4. To avoid spam, my non-@chromium.org email address has been removed from the AUTHORS file. Bug: chromium:355003178 Change-Id: I3a2050c07683f702ce40f1b88a2f9757c5ccacdd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5741080 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95315} | 1 年前 | |
Reland "[base] Move contextual variables to base" This is a reland of https://chromium-review.googlesource.com/c/v8/v8/+/4315774 Fixed bug: Avoid exporting the thread_local variable itself on Linux too and use explicit template specialization to make the exporting work. Change-Id: Iaa19e17b781167013b852b251f0f94e1af7c9aa2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4323384 Reviewed-by: Clemens Backes <clemensb@chromium.org> Auto-Submit: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#86328} | 3 年前 | |
Reland "[base] Move contextual variables to base" This is a reland of https://chromium-review.googlesource.com/c/v8/v8/+/4315774 Fixed bug: Avoid exporting the thread_local variable itself on Linux too and use explicit template specialization to make the exporting work. Change-Id: Iaa19e17b781167013b852b251f0f94e1af7c9aa2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4323384 Reviewed-by: Clemens Backes <clemensb@chromium.org> Auto-Submit: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#86328} | 3 年前 | |
[torque] Add option for printing Torque IR While working on the Torque compiler, I've sometimes found it difficult to understand Torque's intermediate representation and how it corresponds to the output. In this change, I propose adding a build flag that instructs Torque to emit comments describing its IR, interspersed in the generated code. This is particularly useful for seeing the stack management instructions (Peek, Poke, and DeleteRange) which don't emit any corresponding C++ code. Bug: v8:7793 Change-Id: I24bdec47da76c9bd751b928d3cd92aa513dc6593 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2748040 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#73352} | 5 年前 | |
[torque] Add option for printing Torque IR While working on the Torque compiler, I've sometimes found it difficult to understand Torque's intermediate representation and how it corresponds to the output. In this change, I propose adding a build flag that instructs Torque to emit comments describing its IR, interspersed in the generated code. This is particularly useful for seeing the stack management instructions (Peek, Poke, and DeleteRange) which don't emit any corresponding C++ code. Bug: v8:7793 Change-Id: I24bdec47da76c9bd751b928d3cd92aa513dc6593 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2748040 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#73352} | 5 年前 | |
Avoid copies of std::vector<> where possible in torque. These were found while trying to make PDFium build without implicit vector copies. These are resolved by either moving values or by passing by const-ref. Change-Id: I0205e0307901217083375e2349d31c2e703d7a5b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5916854 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Tom Sepez <tsepez@chromium.org> Cr-Commit-Position: refs/heads/main@{#96491} | 1 年前 | |
Avoid copies of std::vector<> where possible in torque. These were found while trying to make PDFium build without implicit vector copies. These are resolved by either moving values or by passing by const-ref. Change-Id: I0205e0307901217083375e2349d31c2e703d7a5b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5916854 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Tom Sepez <tsepez@chromium.org> Cr-Commit-Position: refs/heads/main@{#96491} | 1 年前 | |
2026.03.30 arkweb_144代码蓝黄同步 Signed-off-by: jiujiaoxiaogula <sujiahao10@huawei.com> Change-Id: I00194d339064f999dedfc211cd5af5501cbed0fb | 3 个月前 | |
[torque]: Class declarations Class declarations support structured heap data that is a subtype of HeapObject. Only fields of Object subtypes (both strong and weak) are currently supported (no scalar fields yet). With this CL, both the field list macro used with the C++ DEFINE_FIELD_OFFSET_CONSTANTS macro (to make field offset constants) as well as the Torque "operator '.field'" macros are generated for the classes declared in Torque. This is a first step to removing the substantial amount of duplication and boilerplate code needed to declare heap object classes. As a proof of concept, and handful of class field definitions, including those for non trivial classes like JSFunction, have been moved to Torque. Bug: v8:7793 Change-Id: I2fa0b53db65fa6f5fe078fb94e1db3418f908753 Reviewed-on: https://chromium-review.googlesource.com/c/1373971 Commit-Queue: Daniel Clifford <danno@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#58704} | 7 年前 | |
[toque] Change source position format Use a url-like source position format for emited defnition locations. Hopefully this will make links clickable on codesearch. Change-Id: I343c6bc3cc4f159d5e3974d7ec5af4a578aaf03a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3207887 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#77261} | 4 年前 | |
[torque] Replace uses of v8::base::Optional with std::optional 1. v8::base::Optional has been aliasing to std::optional for some time now. We should replace the uses and use std::optional directly. 2. Adjust the location of some header files and some namespace usage according to the coding standards. 3. Suppress some cpplint warnings and remove some redundant header files that were forgotten to be removed before. 4. To avoid spam, my non-@chromium.org email address has been removed from the AUTHORS file. Bug: chromium:355003178 Change-Id: I3a2050c07683f702ce40f1b88a2f9757c5ccacdd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5741080 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95315} | 1 年前 | |
[torque] Replace uses of v8::base::Optional with std::optional 1. v8::base::Optional has been aliasing to std::optional for some time now. We should replace the uses and use std::optional directly. 2. Adjust the location of some header files and some namespace usage according to the coding standards. 3. Suppress some cpplint warnings and remove some redundant header files that were forgotten to be removed before. 4. To avoid spam, my non-@chromium.org email address has been removed from the AUTHORS file. Bug: chromium:355003178 Change-Id: I3a2050c07683f702ce40f1b88a2f9757c5ccacdd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5741080 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95315} | 1 年前 | |
[torque] Replace uses of base::nullopt with std::nullopt And there are some nested namespaces. Bug: chromium:355676041 Change-Id: I6a959c0e32a888b8654e4b5f23b9a977badac495 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5743141 Reviewed-by: Shu-yu Guo <syg@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95367} | 1 年前 | |
[hole] Remove unneeded hole value checks Undo a bunch of work which added by-value hole checks. Originally we wanted to make holes fully unmapped, including their map pointer, so that potential hole values would have to be checked by pointer value rather than map checks. This turned out to be tricky, partially because the optimizing compiler could hoist map reads above hole checks, and partially because the extra hole value checks ended up with performance regressions. In https://crrev.com/c/7156717 we switched to keeping the holes' maps mapped with an unmapped payload after the map (very similar approach to the WasmNull). This means that all those hole checks we added are now unnecessary, since they were already covered by the existing map-based checks. We can also remove the --assert-hole-checked-by-value flag and fuzzing, since this is no longer an invariant we want to preserve. Bug: 434179415 Change-Id: I9399498d89592127e4291b8acffee83a3ba70052 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7206087 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#103982} | 7 个月前 | |
[Torque] Ensure that field synchronization annotations match ... for read and write operations. This CL fixes the mismatch in FeedbackVector.raw_feedback_slots[] and WeakArrayList.objects[] definitions (internally we were implicitly generating relaxed setters for these fields and this change makes it explicit). This simplification allows propagating the synchronization mode through LoadReferenceInstruction which is necessary for generating correct ReadField<..>() calls depending on the field's synchronization mode. This change is necessary for a follow-up CL where Torque must generate Relaxed_ReadField<..>() calls for computing optional field's condition based on relaxed 'flags' field. Drive-by: support @cppRelaxedLoad/@cppRelaxedStore for untagged fields. Bug: 377410079, 42201104 Change-Id: I4c70addae9a8436884246fdb2fb0832d5242f485 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5999319 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#97058} | 1 年前 | |
[torque] Replace uses of base::nullopt with std::nullopt And there are some nested namespaces. Bug: chromium:355676041 Change-Id: I6a959c0e32a888b8654e4b5f23b9a977badac495 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5743141 Reviewed-by: Shu-yu Guo <syg@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Ho Cheung <hocheung@chromium.org> Cr-Commit-Position: refs/heads/main@{#95367} | 1 年前 | |
[torque] Emit TNode<Union<...>> for Union types ... and propagate this throughought the CSA code, predominantly transitively propagating JSAny. To make this easier, there is additional support for: * Compatibility between torque definitions of types via Unions and C++ definitions of some types (e.g. handling MaybeObject which is a single type in C++ and a Union in torque). We will want to align these more closely in the future. * A new Union::Without helper to remove types from a Union (e.g. after a Smi check). Bug: 42202654 Change-Id: I85f4b007d071d912966e4f00571058e79a3fd70f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6269398 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#98722} | 1 年前 | |
[hole] Move all holes together for range-checked IsAnyHole Bug: 434179415, 42202654 Change-Id: Iae52a520ecfa69542b3451eaa2ab41e21e44a56f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6845797 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#102017} | 10 个月前 | |
[runtime][torque] Undefined Doubles Introduce a special nan value to represent undefined values in doubles to allow JSArrays to stay in (holey) double elements instead of transitioning into tagged representation. This is only the first part of a larger change as proper handling in the compiler is still missing. Bug: 385155404 Change-Id: I1c1c9418447d0f060dca5b28a63b858b4e1a6dd5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6063479 Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#98120} | 1 年前 | |
[base] Rename functional.h to hashing.h That header defines our custom hashing infrastructure, so we should name it appropriately. There's no reason to follow the stdlib naming, which defines std::hash in the <functional> header. R=leszeks@chromium.org Bug: 380896845 Change-Id: I5e45ba5e55f677daacbb342b4e6591e1b3e186ea Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6054260 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#97450} | 1 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 10 个月前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 7 个月前 | ||
| 1 年前 | ||
| 10 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 3 个月前 | ||
| 7 年前 | ||
| 4 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 7 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 10 个月前 | ||
| 1 年前 | ||
| 1 年前 |