| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Reland^2 "Embedding feedback in BytecodeArray for StrictEqual" This is a reland of commit e295f1f18da01c386eda73f535fb67a56c004d88 Original change's description: > Reland "Embedding feedback in BytecodeArray for StrictEqual" > > This is a reland of commit f0fed41e48b1966e3e565ae278d018da538ef123 > > Original change's description: > > Embedding feedback in BytecodeArray for StrictEqual > > > > This CL removes the feedback vector slot for StrictEqual and stores its feedback values directly in the BytecodeArray. Optimized compilers will now access the type feedback from the BytecodeArray. > > > > Before: > > 75 04 00 TestEqualStrict a1, [0] > > > > After: > > 75 04 00 00 TestEqualStrict a1, #0 > > > > This change saves moemory by reducing FeedbackVector size, and is part of the Sparkplug+ optimization effort. > > > > Bug: chromium:429351411 > > Change-Id: I24390811c12755b0a19beaefe2b0319d75ceaf6c > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6986847 > > Reviewed-by: Xu, Hao A <hao.a.xu@intel.com> > > Commit-Queue: Wei, Yuheng <yuheng.wei@intel.com> > > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> > > Cr-Commit-Position: refs/heads/main@{#103656} > > Bug: chromium:429351411 > Change-Id: I77286b0e9c65f8a9e257a2125adab7f68fe09aec > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7148333 > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> > Commit-Queue: Wei, Yuheng <yuheng.wei@intel.com> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/main@{#103800} Bug: chromium:429351411 Change-Id: I5020c9dffbed90ff207520728b13cf0dbcfb5903 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7197099 Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Wei, Yuheng <yuheng.wei@intel.com> Cr-Commit-Position: refs/heads/main@{#103962} | 7 个月前 | |
【CVE-2026-4450】【487746373】【490642836】【CVE-2026-4457】【488803413】[CVE-2026-4461][490558172][489159859][481749436][491191100][492077213][496629079][472181383][480442279][481295170][485784597][474402856][483220222] Signed-off-by: Marja Hölttä <marja@chromium.org> | 25 天前 | |
[handles] Migration to direct handles, part 10 This CL migrates a large number of handles to direct handles. The changes are only relevant for builds with v8_enable_direct_handle=true. Affected source directories: api, ast, builtins, codegen, compiler, d8, debug, deoptimizer, execution, extensions, heap, ic, init, json, logging, objects, parsing, profiler, regexp, runtime, snapshot, wasm. Bug: 42203211 Change-Id: I160d5a74aecc6533db51323f0b96ef057cb22426 Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6091534 Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#97865} | 1 年前 | |
enable jitfort for memory w^x protection Signed-off-by: zzhengxiang <zhengxiang27@h-partners.com> | 25 天前 | |
translate Signed-off-by: huanghan18 <huanghan18@huawei.com> | 25 天前 | |
Reland "[tracing] Roll perfetto @ 28b633cd" This is a reland of 096d9c5663305d9e2334bc513e1228eba4f21ed7 Fixed DEPS files which were not caught by presubmit trybot Original change's description: > [tracing] Roll perfetto @ 28b633cd > > This catches up with [1] that make the proto include path > relative to the project root rather than ./protos/ > > [1] https://android-review.googlesource.com/c/platform/external/perfetto/+/1108421 > > Cq-Include-Trybots: luci.v8.try:v8_linux64_perfetto_dbg_ng > Bug: v8:8339 > Change-Id: I1f2dec93120142ea61cee864e4bf76a6947d958d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1776088 > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Tamer Tas <tmrts@chromium.org> > Commit-Queue: Primiano Tucci <primiano@chromium.org> > Auto-Submit: Primiano Tucci <primiano@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63584} Bug: v8:8339 Change-Id: I70e8b2d4520c620d02d5251d14bd61b90fb1d73f Cq-Include-Trybots: luci.v8.try:v8_linux64_perfetto_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1789143 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Tamer Tas <tmrts@chromium.org> Cr-Commit-Position: refs/heads/master@{#63598} | 6 年前 | |
Replacing Seth.Brenith@Microsoft.com (who has left the company) with PaoloSev@Microsoft.com Change-Id: I4117fd59352c8965d93d45ba17037ecbfa037884 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6506911 Reviewed-by: Daniel Lehmann <dlehmann@chromium.org> Reviewed-by: Jakob Linke <jgruber@chromium.org> Commit-Queue: Leo Lee <leolee@microsoft.com> Cr-Commit-Position: refs/heads/main@{#100473} | 1 年前 | |
[tagged-ptr] Make Object methods static Turn obj->Foo() into Object::Foo(obj) for Object methods. This allows operations on Smis without dereferencing. Bug: v8:12710 Change-Id: I6b0cf8b914647c0058bb5b15e47b917714ef4b7f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4732912 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#89283} | 2 年前 | |
Reland "Allocate builtin Code objects in RO space" This is a reland of commit 10fae211fd84c927cefea869c7814dcd3f74abc8 Changed since the original CL: - Pulled in ishell's fix from crrev.com/c/4339930. - Null out Code::kCodeEntryPoint during serialization for deterministic snapshot layout. Original change's description: > Allocate builtin Code objects in RO space > > Builtin code objects are read-only and there is no longer any > reason for them not to be in RO space. This saves 52KiB of overall > 85KiB (= 61%) in the the isolate snapshot. > > - Allocate builtin Code objects in RO space. > - Remove now-invalid code.GetIsolate() calls which cannot be > used on objects in RO space. > - Implement relocation after RO-space deserialization (and slightly > reorganize this in static-roots builds). > > Bug: v8:13789 > Change-Id: I165e521edda2e92669e44760aab01dc1359ee825 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4303425 > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Commit-Queue: Jakob Linke <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/main@{#86430} Bug: v8:13789 Change-Id: I7692181709062642f2c94df998c99f40a4c211c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4342398 Commit-Queue: Jakob Linke <jgruber@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#86583} | 3 年前 | |
s390x: remove support for s390 32-bit, part 2 s390 has been out of support for a long time now. This CL removes the following from v8 codebase: - V8_TARGET_ARCH_S390 (32-bit) code from codebase - CleanseP and CleanUInt32 - defined(__s390__) || defined(_ARCH_S390) Change-Id: Iedbc2b0e988795e747b9e5862d46248f32bc3c82 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5866312 Reviewed-by: Milad Farazmand <mfarazma@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Reviewed-by: Junliang Yan <junyan@redhat.com> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#96133} | 1 年前 | |
[sandbox] Don't allow to use disabled builtins, pt.2 ... i.e. the ones that belong to features that are not currently enabled. This CL: - adds kDisabledBuiltinEntrypointTag, - adds Code::is_disabled_builtin() flag which is set during RO heap deserialization for disabled JS builtins, - disables builtins by using kDisabledBuiltinEntrypointTag for them instead of kJSEntrypointTag, - initializes preallocated dispatch table entries for disabled builtins with Illegal builtin's Code. Drive-by: - add TEST_WITH_FLAG macro for cctests which need to change flag values before initializing the Isolate, - fixed respective cctests. Bug: 435630464 Change-Id: Ibfd8f66ede06210e79184fde027331775c80634b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7003083 Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#102936} | 8 个月前 | |
[tests] Refactor QueryInterceptor tests and extend them ... for excessive testing of the following "dimensions": - interceptor is receiver/prototype, - interceptor is masking/non-masking. Drive-by: refactor the way raw pointers are passed to interceptor callbacks (avoid using globals, pass pointers via Data field). Bug: 40677381 Change-Id: Idd84c2b1ac12caa11ed294bb1033a14dfc2b5367 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7111900 Reviewed-by: Patrick Thier <pthier@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#103469} | 8 个月前 | |
enable jitfort for memory w^x protection Signed-off-by: zzhengxiang <zhengxiang27@h-partners.com> | 25 天前 | |
[base] Move utils/vector.h to base/vector.h The adding of base:: was mostly prepared using git grep and sed: git grep -l <pattern> | grep -v base/vector.h | \ xargs sed -i 's/\b<pattern>\b/base::<pattern>/ with lots of manual clean-ups due to the resulting v8::internal::base::Vectors. #includes were fixed using: git grep -l "src/utils/vector.h" | \ axargs sed -i 's!src/utils/vector.h!src/base/vector.h!' Bug: v8:11879 Change-Id: I3e6d622987fee4478089c40539724c19735bd625 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2968412 Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#75243} | 4 年前 | |
[cleanup] Fix remaining (D)CHECK macro usages This CL fixes all occurences that don't require special OWNER reviews, or can be reviewed by Michi. After this one, we should be able to reenable the readability/check cpplint check. R=mstarzinger@chromium.org Bug: v8:6837, v8:6921 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng;master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: Ic81d68d5534eaa795b7197fed5c41ed158361d62 Reviewed-on: https://chromium-review.googlesource.com/721120 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#48670} | 8 年前 | |
[heap] Allow disabling page pool completely Pooling memory is an optional feature that we should be able to disable. Bug: 425248660 Change-Id: Iabdd6937b1d77b5048b56ccf403a638a67a8fe9c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6689109 Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#101195} | 1 年前 | |
[profiler] add Serialize to v8::CpuProfile Support JSON serialization in v8::CpuProfile Bug: v8:13291 Change-Id: I638cf2c1f7acba9c5b8a2932d84c9882d968c90d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3905128 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#83901} | 3 年前 | |
[api] Deprecate [Shared]ArrayBuffer::Externalize/GetContents and constructors The new API with v8::BackingStore should be used instead as explained in https://docs.google.com/document/d/1sTc_jRL87Fu175Holm5SV0kajkseGl2r8ifGY76G35k This also relaxes the pre-condition for [Shared]ArrayBuffer::Detach to not require externalization first. Bug: v8:9380, v8:9908 Change-Id: Idd119fcd28be84a2fae74ae86f7381fd997766f5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1859628 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#64625} | 6 年前 | |
[api] Rename args => info in function and property callbacks This matches the actual type better: - FunctionCallbackInfo<T> - PropertyCallbackInfo<T> Change-Id: I43d33f5a4e487a2b0f2194da253535494d51cb91 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4370018 Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#86705} | 3 年前 | |
[api] Rename args => info in function and property callbacks This matches the actual type better: - FunctionCallbackInfo<T> - PropertyCallbackInfo<T> Change-Id: I43d33f5a4e487a2b0f2194da253535494d51cb91 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4370018 Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#86705} | 3 年前 | |
[api] Add ValidateCallbackInfo method ValidateCallbackInfo checks if PropertyCallbackInfo and FunctionCallbackInfo hold up simple invariants that will make it easier to catch errors when experimenting with different stack layouts for the CallbackInfo objects. Bug: v8:13825 Change-Id: I0dc34b0444b0b3607ddb4eee64d2a2ac8a70c68d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4353177 Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#86711} | 3 年前 | |
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 年前 | |
[builtins] Verify CanAllocate effects for builtins in Turboshaft/Maglev Bug: 42204439 Change-Id: If13d9f78ddcfb77ccc14749a534ac1711dac3754 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6372502 Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Darius Mercadier <dmercadier@chromium.org> Cr-Commit-Position: refs/heads/main@{#100113} | 1 年前 | |
[static-roots] Refactor setup_isolate_delegate Make the setup_isolate_delegate stateless. It does not make sense to pass a setup delegate to Isolate::Init that would contradict the configuration of the isolate, hence it does not make sense to let the delegate decide if heap objects should be created. Instead let the isolate decide on how to invoke the delegate. Cleanup in preparation for later changes to mksnapshot. Bug: v8:13466 Change-Id: I5ca36a1db3e94baf068ba0dc91729a78086a023c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4020172 Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Olivier Flückiger <olivf@chromium.org> Cr-Commit-Position: refs/heads/main@{#84550} | 3 年前 | |
[ic][test] Fix StubCache test and add DCHECK for correct cage The handlers stored in the StubCache data structure must be either Smi or heap-allocated objects living in the regular cage (when pointer compression is enabled), because they are stored in the cache as compressed pointers and StubCache::Get() implicitly uses the regular cage base. This CL adds a DCHECK to StubCache::Set() enforcing this. It also fixes the cctest TryProbeStubCache, which until now stored handlers that lived in the code cage, and adds one more basic test. Change-Id: If2c6e7c0b361b2c9acadf86bb383d8cd4ca13705 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6387118 Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Cr-Commit-Position: refs/heads/main@{#99411} | 1 年前 | |
[api] Prepare for deprecation of v8::PropertyCallbackInfo<T>::This() This is a step towards making native data property accessor callback calls and interceptor callback calls faster. Native data property being semantically a data property should not access anything else than a holder object. The same applies to interceptors which provided access to the receiver although it's not actually used by Blink. Given that interceptors were introduced mostly for Blink we can avoid the overhead of passing unused receiver value to all interceptor callbacks. This CL deprecates usages of This() and replaces some usages in tests with HolderV2(). There are Api tests which validate that the callbacks get proper receiver value, they are updated to suppress warnings about usage of deprecated Api. Once we remove usages of This() on embedder side, these tests will be updated or removed. Bug: 455600234 Change-Id: Ic5d8ba8896e30d8781d1af18960c1cde6ba163f7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7093356 Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#103561} | 7 个月前 | |
d8: Fix remaining issues with PartitionAlloc as malloc - fix reinitialization of PA in LazyInitialize(), - pimplify PABackedSandboxedABAllocator to avoid conflicts from MacTypes.h - some tests expecting nullptr on malloc are disabled for PA. Bug: 392817524 Change-Id: I1cd766fb2756410547466cfca5b9d77064e4783c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6781140 Auto-Submit: Anton Bikineev <bikineev@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#101678} | 11 个月前 | |
[heap] Use task with kUserVisible priority instead of idle task This CL switches from idle tasks to kUserVisible tasks for "context disposal" GCs. @etiennep thankfully notices that this can improve JS score quite a bit. As we have no guarantee when this task will be run after being scheduled, we use gc_count() to only trigger a GC if no GC has been performed in-between. For idle tasks we limit this based on time, the task had to run within two frames (=16ms*2). Unlike idle tasks the regular tasks don't get a deadline, instead we use a hard coded limit of 5ms. In addition to the previous condition, we only perform the GC if the estimated time for it is less than 5ms. This CL improves JS2 by about +0.7%, JS3 by about +0.2%. Bug: 460477160 Change-Id: I9d084d59dca53a57d5cb6e81f26c122f037f15f7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6734023 Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#104016} | 7 个月前 | |
[ept] Delete tag kExternalObjectValueTag The tag was a generic tag used for v8::External. After a recent refactoring, the generic tag should not be used anymore. Instead, type-specific tags should be used. Additionally the number of tags reserved for v8::External gets reduced from 100 to 40, as this is enough in currently for Chrome, where 34 tags are used so far. The reduction is needed to make sure that the ExternalPointerTags stay within 7 bit range. Another change is that the tags that were used so far for tests are out of range now. Therefore, the tags get shifted to a new value range. Bug: 436799229 Change-Id: I0bbef6391bd4340d8d113ba01a565d9f1a24a0a4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7003791 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/main@{#102975} | 8 个月前 | |
[ic] Cache InterceptorInfo in store IC data handler ... and handle non-masking interceptors better. This is a step towards introducing CallNamedInterceptorSetter builtin. Drive-by: add respective RCS counters for various interceptor handlers. Bug: 455479513 Change-Id: I24907c78ed5a1beafc04e6246642d4062dd01c44 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7079796 Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#103807} | 7 个月前 | |
Introduce v8::StackTrace::CurrentScriptId This CL introduces a dedicated API to retrieve the current (w.r.t the JS stack) script id. This is equivalent to CurrentScriptNameOrSourceURL but returns the id instead of the script name. Bug: 432760817 Change-Id: I258c8ffee65474bb00164843ac4dd6b894671507 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6774545 Commit-Queue: Josh Karlin <jkarlin@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Olivier Flückiger <olivf@chromium.org> Cr-Commit-Position: refs/heads/main@{#101621} | 11 个月前 | |
[api] Add tag parameter to Context::GetAlignedPointerFromEmbedderData Bug: 433909571 Change-Id: I51bc8d628fcecf21ff4fc6867bfdbc03fbe837cb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6964617 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/main@{#102690} | 9 个月前 | |
[api] Remove unused context parameter from FixedArray::Get Remove an unused parameter and mark the old method for deprecation. R=mlippautz@chromium.org Bug: 454827127 Change-Id: I1f3a3feac2d926e57c6feb16ce8c1fafdd9a243e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7141498 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#103675} | 7 个月前 | |
[runtime] Add IDLE_EXTERNAL VM state Otherwise we can't properly filter samples where V8 isn't on the stack at all. This also updates the tick processors to include ATOMICS_WAIT support that has been missing for years. Change-Id: I511f1d706d9d5bbee317f7f12608c7618266fe7f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6714365 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Auto-Submit: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#101305} | 11 个月前 | |
Reland "[handles] Migration to direct handles, part 12" This is a reland of commit 5fa54d85a10049a55ba2fa02bc05145ddee7d19a Original change's description: > [handles] Migration to direct handles, part 12 > > This CL migrates a large number of handles to direct handles. The > changes are only relevant for builds with v8_enable_direct_handle=true. > > Affected source directories: api, asmjs, ast, builtins, codegen, > compiler, d8, debug, deoptimizer, diagnostics, execution, extensions, > heap, ic, init, interpreter, json, maglev, objects, parsing, profiler, > regexp, runtime, snapshot, strings, wasm, and tests. > > Bug: 42203211 > Change-Id: I2334b3295e5780e8f52d0b13d1545dce29fcf81e > Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6181904 > Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> > Reviewed-by: Omer Katz <omerkatz@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/main@{#98240} Bug: 42203211 Change-Id: Ie21acd681c12e7212185d61a19bd858365650204 Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6187462 Reviewed-by: Omer Katz <omerkatz@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Nikolaos Papaspyrou <nikolaos@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#98249} | 1 年前 | |
[arm64] Bottleneck MacroAsm::Calls to avoid redundant BlockPoolsScopes Change-Id: I32db7d16cff0d5730b36fefc7c860aa6e413b0cf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7106185 Auto-Submit: Darius Mercadier <dmercadier@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#103455} | 8 个月前 | |
[tagged-ptr] Make Object methods static Turn obj->Foo() into Object::Foo(obj) for Object methods. This allows operations on Smis without dereferencing. Bug: v8:12710 Change-Id: I6b0cf8b914647c0058bb5b15e47b917714ef4b7f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4732912 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#89283} | 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 年前 | |
[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 年前 | |
[casting] Remove Foo::cast Replace Foo::cast with Cast<Foo>. This is, blessedly, the same number of characters, and allows us to remove the need to declare cast functions in every type (instead using instance-type based type checks for most things, and a few template specializations of CastTraits for the remainder). Bug: 345640551 Change-Id: Ic215e2d4519f3128457db8a828a73c18204714bd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5614630 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#94425} | 2 年前 | |
[riscv] Drop BlockTrampolinePoolScope and BlockGrowBufferScope BlockGrowBufferScope was entirely unused - and we're replacing the trampoline-specific blocking with the more general BlockPoolsScope in a few steps. Change-Id: Ibe8a40eea368364ed81185d32d8588d021095248 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6988408 Commit-Queue: Kasper Lund <kasperl@rivosinc.com> Reviewed-by: Florian Loitsch <floitsch@rivosinc.com> Cr-Commit-Position: refs/heads/main@{#102792} | 9 个月前 | |
[riscv] Fix native build failed Change-Id: I268df00968134598a89cfb19d92942acbd47e5c1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7090433 Reviewed-by: Yahan Lu (LuYahan) <yahan@iscas.ac.cn> Reviewed-by: Ji Qiu <qiuji@iscas.ac.cn> Commit-Queue: Yahan Lu (LuYahan) <yahan@iscas.ac.cn> Auto-Submit: Yahan Lu (LuYahan) <yahan@iscas.ac.cn> Cr-Commit-Position: refs/heads/main@{#103477} | 8 个月前 | |
PPC/s390: [tagged-ptr] Make Object methods static Port f20f342a3e275ae6442a53e34869f1c90f0db4a0 Original Commit Message: Turn obj->Foo() into Object::Foo(obj) for Object methods. This allows operations on Smis without dereferencing. R=leszeks@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: Iff1cb26ae2fe89088bff4b1a3950b47c91eee657 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4738076 Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#89291} | 2 年前 | |
[heap] Simplify ResourceConstraints::ConfigureDefaults This CL avoids the extra hoop of computing old/yound size from heap size and queries these directly in ResourceConstraints::ConfigureDefaults. Bug: chromium:454097973 Change-Id: I704616f340f9515b0eecfde3d1775addd1e4e796 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7080050 Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> Cr-Commit-Position: refs/heads/main@{#103338} | 8 个月前 | |
PPC: remove support for ppc 32-bit, part 1 ppc32 has been out of support for a long time now. This CL removes the following from v8 codebase: - V8_TARGET_ARCH_PPC_LE and V8_TARGET_ARCH_PPC_BE - V8_TARGET_ARCH_PPC - V8_HOST_ARCH_PPC - v8_current_cpu == "ppc" - arch == ppc Change-Id: I452b9fc04b8fa7b7909c5a7cb4b12587ef5ccb7d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5796844 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#95773} | 1 年前 | |
[turboshaft] Fuzz (and rename) load-store taggedness verification Bug: 458429784 Change-Id: Id494b5337590eaeb735cfd6ad63cdfa7bb28b56d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7172507 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Darius Mercadier <dmercadier@chromium.org> Cr-Commit-Position: refs/heads/main@{#103847} | 7 个月前 | |
Avoid internal use of v8::Object::GetIsolate() ... such that we can deprecate it in a follow-up. The method is guaranteed to always return the "current isolate", so we should use that directly instead. Test sometimes use CcTest::isolate() or LocalContext::isolate() where it makes sense. R=leszeks@chromium.org Bug: 396607238 Change-Id: Iac924a78ac59be4029a75b1ff6b917160d1f7e06 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6564467 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#100391} | 1 年前 | |
[api] Change EmbedderData to v8::Data Context::Get/SetEmbedderData allows any V8 object, not just JS-visible types. This means it should get/set a v8::Data, not a v8::Value. Introduce Get/SetEmbedderDataV2 with the updated type, and deprecate the old ones. Change-Id: I2ed50339832d0a631d6b760d75ecb5d91ad380e3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7096240 Commit-Queue: Igor Sheludko <ishell@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#103524} | 7 个月前 | |
[sandbox] Remove kDefaultCodeEntrypointTag, pt.1 This is a step towards making code entrypoint tag verification strict. This CL - introduces kCodeEntrypointTagForTesting, - introduces CodeKind::FOR_TESTING_JS in addition to existing CodeKind::FOR_TESTING in order to assign them different code entrypoint tags (kJSEntrypointTag for the former and kCodeEntrypointTagForTesting for the latter), - add SBXCHECK for Code object's entrypoint tags when generating calls and tail calls to compile-time known Code objects, - introduce Linkage::GetCPPBuiltinCallDescriptor() - a CEntry call descriptor customized for CPP builtins, - replaces some of the kDefaultCodeEntrypointTag usages with correct tags, - fixes usages of entrypoint tags in various code generation unit tests. Drive-by: - assign proper descriptor for GenericJSToWasmInterpreterWrapper builtin, - make Builtins::CallInterfaceDescriptorFor() work for bytecode handlers, - make switches over CodeKind values case-complete. Bug: 435630464 Change-Id: I2e34666df5314b0cd4e604a4deaf74e2f0de6f1a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6976541 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Darius Mercadier <dmercadier@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#102733} | 9 个月前 | |
[handles] Migration to direct handles, part 4 This CL migrates a large number of handles to direct handles. The changes are only relevant for builds with v8_enable_direct_handle=true. Affected directories: test. Bug: 42203211 Change-Id: Ie9fb3d5b3c66ea9ffa0092d928256aa3891c9a9a Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5622011 Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#94378} | 2 年前 | |
add missing includes for the build with use_libcxx_modules This is to fix build error when we set use_libcxx_modules=true in chromium build. This CL also deletes glue.h as it needs to change but renamed in https://crrev.com/c/2270757 Bug: 40440396 Change-Id: I61e98c1c2f6e910f7c2b94d1b23a6cfcdc38490b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6088271 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Takuto Ikuta <tikuta@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Takuto Ikuta <tikuta@chromium.org> Cr-Commit-Position: refs/heads/main@{#97786} | 1 年前 | |
[hole] Add strict hole subtypes ... and make Hole a trivial HeapObjectLayout type. This required renaming Uninitialized and Exception to UninitializedHole and ExceptionHole (respectively), to avoid name conflicts. Bug: 434179415, 42202654 Change-Id: I78e4f85bc31a7ff9b1cbfca820307c649df49552 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6842396 Reviewed-by: Igor Sheludko <ishell@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#101882} | 10 个月前 | |
Reland "[handles] Migration to direct handles, part 5" This is a reland of commit aba439cfe3964922735607a5e44c6cd158c75268 Original change's description: > [handles] Migration to direct handles, part 5 > > This CL migrates a large number of handles to direct handles. The > changes are only relevant for builds with v8_enable_direct_handle=true. > > Bug: 42203211 > Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg > Change-Id: I57d35b99ec3bd83bc2ba5590ad18021bc4e34592 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5771452 > Reviewed-by: Omer Katz <omerkatz@chromium.org> > Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/main@{#95576} Bug: 42203211 Change-Id: I201b85456fd359d261c08a533c42a522626daf39 Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5785213 Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Cr-Commit-Position: refs/heads/main@{#95598} | 1 年前 | |
Move architecture dependent files Bug: v8:9247 Change-Id: I2f999ed3a8cc0931e5092f2ac6e709b8ff3f9e42 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1630678 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61896} | 6 年前 | |
[ArkWeb][安全][自动提交] 修复 Chromium issue 515086856: Drop weak edges from JSWeakSet/JSWeakMap Signed-off-by: ringking <renkang2@huawei.com> | 2 小时前 | |
[riscv] Rename kRvvVLEN constant The constant is only used by the simulator, and its new name 'kSimulatorRvvVLEN' reflects that now. Change-Id: Ib7866c33e913dab98384b14e2ff019f081ba9e60 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6973908 Reviewed-by: Kasper Lund <kasperl@rivosinc.com> Commit-Queue: Florian Loitsch <floitsch@rivosinc.com> Cr-Commit-Position: refs/heads/main@{#102736} | 9 个月前 | |
[riscv] Rename kRvvVLEN constant The constant is only used by the simulator, and its new name 'kSimulatorRvvVLEN' reflects that now. Change-Id: Ib7866c33e913dab98384b14e2ff019f081ba9e60 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6973908 Reviewed-by: Kasper Lund <kasperl@rivosinc.com> Commit-Queue: Florian Loitsch <floitsch@rivosinc.com> Cr-Commit-Position: refs/heads/main@{#102736} | 9 个月前 | |
[riscv] Rename kRvvVLEN constant The constant is only used by the simulator, and its new name 'kSimulatorRvvVLEN' reflects that now. Change-Id: Ib7866c33e913dab98384b14e2ff019f081ba9e60 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6973908 Reviewed-by: Kasper Lund <kasperl@rivosinc.com> Commit-Queue: Florian Loitsch <floitsch@rivosinc.com> Cr-Commit-Position: refs/heads/main@{#102736} | 9 个月前 | |
[riscv] Rename kRvvVLEN constant The constant is only used by the simulator, and its new name 'kSimulatorRvvVLEN' reflects that now. Change-Id: Ib7866c33e913dab98384b14e2ff019f081ba9e60 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6973908 Reviewed-by: Kasper Lund <kasperl@rivosinc.com> Commit-Queue: Florian Loitsch <floitsch@rivosinc.com> Cr-Commit-Position: refs/heads/main@{#102736} | 9 个月前 | |
[mips] Remove remaining usages of obsolete V8_TARGET_ARCH_MIPS This define isn't set by any build configuration any more and 32 bit MIPS doesn't seem to be supported by V8. Change-Id: Ic5ca4d247bdfc88f9eb21f09d0bfddb2896d0aa5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6508867 Reviewed-by: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Auto-Submit: Matthias Liedtke <mliedtke@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#100239} | 1 年前 | |
[turboshaft][tsa] Implement BytecodeHandlerAssembler in Turboshaft And port BitwiseNot_WithFeedback builtin and BitwiseNot bytecode handler to TSA. A number of drive by changes: - Implement a FeedbackCollectorReducer to handle feedback collection - Separate Turboshaft's builtin compilation into separate files (turboshaft/builtin-compiler.*). - Rename and slightly extend Variables (Var, ScopedVar). - Add a number of include exceptions to temporarily allow includes into compiler directories until we have a properly defined new structure for stuff that is shared between builtins and TurboFan. Bug: chromium:348031042 Change-Id: Ia1e23f5aa8e660002cd98e2b72d719171c6dfcdd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5691733 Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#96025} | 1 年前 | |
[flag] Remove --always-turbofan Bug: 431974094 Change-Id: Ia86d64cf626db0977299f8ec105f86ee4f385e7c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6781181 Reviewed-by: Marja Hölttä <marja@chromium.org> Auto-Submit: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#101612} | 11 个月前 | |
Avoid internal use of v8::Object::GetIsolate() ... such that we can deprecate it in a follow-up. The method is guaranteed to always return the "current isolate", so we should use that directly instead. Test sometimes use CcTest::isolate() or LocalContext::isolate() where it makes sense. R=leszeks@chromium.org Bug: 396607238 Change-Id: Iac924a78ac59be4029a75b1ff6b917160d1f7e06 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6564467 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#100391} | 1 年前 | |
[cctest] Introduce LocalContext::isolate() This avoids a large chunk of v8::Context::GetIsolate() calls, which is a method that will be deprecated soon. R=jkummerow@chromium.org Bug: 396607238 Change-Id: Ia0e4b74d7bf95d033b55d8d985e4f02fefd2dbb4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6520237 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#100177} | 1 年前 | |
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 年前 | |
[heap] Adjust TestJSWeakRefMinorGC cctest The test fails with --scavenger-chaos-mode. This is unexpected failure. The test assumes objects remain young, but they may become old when --scavenger-chaos-mode is used. This CL bails out of the test if --scavenger-chaos-mode is used. Bug: 340777103 Change-Id: I45cebdb9bf8e3ebabdd472a0d0458689274cc3a4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7079808 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Auto-Submit: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#103335} | 8 个月前 | |
Avoid internal use of v8::Object::GetIsolate() ... such that we can deprecate it in a follow-up. The method is guaranteed to always return the "current isolate", so we should use that directly instead. Test sometimes use CcTest::isolate() or LocalContext::isolate() where it makes sense. R=leszeks@chromium.org Bug: 396607238 Change-Id: Iac924a78ac59be4029a75b1ff6b917160d1f7e06 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6564467 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#100391} | 1 年前 | |
[flag] Remove --always-turbofan Bug: 431974094 Change-Id: Ia86d64cf626db0977299f8ec105f86ee4f385e7c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6781181 Reviewed-by: Marja Hölttä <marja@chromium.org> Auto-Submit: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#101612} | 11 个月前 | |
Avoid internal use of v8::Object::GetIsolate() ... such that we can deprecate it in a follow-up. The method is guaranteed to always return the "current isolate", so we should use that directly instead. Test sometimes use CcTest::isolate() or LocalContext::isolate() where it makes sense. R=leszeks@chromium.org Bug: 396607238 Change-Id: Iac924a78ac59be4029a75b1ff6b917160d1f7e06 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6564467 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#100391} | 1 年前 | |
[tagged-ptr] Make Object methods static Turn obj->Foo() into Object::Foo(obj) for Object methods. This allows operations on Smis without dereferencing. Bug: v8:12710 Change-Id: I6b0cf8b914647c0058bb5b15e47b917714ef4b7f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4732912 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#89283} | 2 年前 | |
[loong64][test] Fix cctest case for ByteSwap The ByteSwap function was modified, but the usage of it in cctest is left out. See commit 3cee85f350fb569fc6cc9e6800bbf92d46f6aecd Change-Id: If2308f0f2aa661f73b803ca20ac810b372bff7a4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5740462 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Auto-Submit: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/main@{#95378} | 1 年前 | |
[mips64] Fix an undefined behavior Negation of 'INT64_MIN' cannot be represented in type 'int64_t'. Change-Id: Ic1574a4c590841661e6606db44e6750eb3531b18 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5490889 Reviewed-by: Igor Sheludko <ishell@chromium.org> Auto-Submit: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#93628} | 2 年前 | |
[riscv] Simplify label handling in assembler Change-Id: If9b59455569b2813fb9ab1ac8c391ba45b8cf0ae Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7006383 Commit-Queue: Kasper Lund <kasperl@rivosinc.com> Reviewed-by: Florian Loitsch <floitsch@rivosinc.com> Cr-Commit-Position: refs/heads/main@{#102904} | 9 个月前 | |
[riscv] Simplify label handling in assembler Change-Id: If9b59455569b2813fb9ab1ac8c391ba45b8cf0ae Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7006383 Commit-Queue: Kasper Lund <kasperl@rivosinc.com> Reviewed-by: Florian Loitsch <floitsch@rivosinc.com> Cr-Commit-Position: refs/heads/main@{#102904} | 9 个月前 | |
[ptr-compr] Remove OnHeapAddress from Decompress Since we're using a global cage, we never need an OnHeapAddress for decompressing pointers. Remove this unused parameter. Change-Id: Ie14a7284c1e793c0b9e146a4e57f981a2985de27 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6481261 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#99866} | 1 年前 | |
Avoid internal use of v8::Object::GetIsolate() ... such that we can deprecate it in a follow-up. The method is guaranteed to always return the "current isolate", so we should use that directly instead. Test sometimes use CcTest::isolate() or LocalContext::isolate() where it makes sense. R=leszeks@chromium.org Bug: 396607238 Change-Id: Iac924a78ac59be4029a75b1ff6b917160d1f7e06 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6564467 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#100391} | 1 年前 | |
[flag] Remove --always-turbofan Bug: 431974094 Change-Id: Ia86d64cf626db0977299f8ec105f86ee4f385e7c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6781181 Reviewed-by: Marja Hölttä <marja@chromium.org> Auto-Submit: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#101612} | 11 个月前 | |
[heap] Fix many failing unit tests with --shared-heap enabled This CL fixes most test failures in unit tests with --shared-heap enabled, with only a few deadlocks left. Most crashes here were actually because we did not perform a global safepoint on the shared space isolate but an isolate-local safepoint instead. Bug: 450197213 Change-Id: I7a0c9eb5e01a03a074d4299728621bc8f0a20e1b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6994961 Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#103006} | 8 个月前 | |
[cctest] Use v8_flags for accessing flag values Avoid the deprecated FLAG_* syntax, access flag values via the {v8_flags} struct instead. R=mliedtke@chromium.org Bug: v8:12887 Change-Id: I417eee6311fadef9b60043cfc9a42926859c7ab9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3899304 Reviewed-by: Matthias Liedtke <mliedtke@chromium.org> Commit-Queue: Matthias Liedtke <mliedtke@chromium.org> Cr-Commit-Position: refs/heads/main@{#83247} | 3 年前 | |
[sandbox] Disallow implicit unchecked downcasts to trusted objects To soundify C++ types of trusted objects we want to prevent accidentally casting to a trusted object without checking. To that end we enforce the explicit choice of one of three possible casts. * The (existing) TryCast should be used when we already have a type check. This construct ensures that the cast is correct by construction, since the target variable is not assigned if it fails. * The (new) (Checked|Sbx)Cast combines a (SBX)CHECK with a Cast. Replaces SBXCHECK(Is<Foo>(x)); Tagged<Foo> f = Cast<Foo>(x). * The (new) TrustedCast corresponds to Cast on non-trusted objects. The "Trusted" prefix signifies that the correctness obligations are solely on the caller. It should not be used at all if possible. Typically reasonable usecases are: * Reading a field of a trusted object. We trust them to be untampered. * Reading a trusted pointer with a type-tagged handle. The handle ensures correctness. * A visitor where the down-cast is generated by a macro. There is little possiblity for future error and TryCast would be cumbersome and potentially slower. * Low-risk code like debugging, or highly-performance sensitive code where the check is enforced indirectly. DriveBy: Add CastExposedTrustedObjectByTag which ties together the type of a ExposedTrustedObject with its IndirectPointerTag. This prevents the two from getting out of sync. Bug: 435645639 Change-Id: Id283b109ab3e0c3a4503467771bc35f1857fa236 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6859421 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Olivier Flückiger <olivf@chromium.org> Auto-Submit: Olivier Flückiger <olivf@chromium.org> Cr-Commit-Position: refs/heads/main@{#101943} | 10 个月前 | |
[api] Add ValidateCallbackInfo method ValidateCallbackInfo checks if PropertyCallbackInfo and FunctionCallbackInfo hold up simple invariants that will make it easier to catch errors when experimenting with different stack layouts for the CallbackInfo objects. Bug: v8:13825 Change-Id: I0dc34b0444b0b3607ddb4eee64d2a2ac8a70c68d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4353177 Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#86711} | 3 年前 | |
[api] Remove unused context parameter from FixedArray::Get Remove an unused parameter and mark the old method for deprecation. R=mlippautz@chromium.org Bug: 454827127 Change-Id: I1f3a3feac2d926e57c6feb16ce8c1fafdd9a243e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7141498 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#103675} | 7 个月前 | |
[heap] Annotate reason for finishing sweeping This CL adds a new enum CompleteSweepingReason with all reasons for invoking EnsureSweepingCompleted(). It is also added as an additional argument to that method. The CL does not change any GC behavior yet. This will be done in a follow-up CL. Bug: 456384548 Change-Id: Ia0436984e4d1c51934eeb6855621ea2c7d18cf11 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7105759 Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#103499} | 7 个月前 | |
[riscv][sandbox] Reference Code objects (and their entrypoint) through the CPT Also port: [riscv][tagged-ptr] Make Object methods static Port commit fbb9df7218ae348b56104ff8fdd82b578e42d189 Port commit f20f342a3e275ae6442a53e34869f1c90f0db4a0 Bug: chromium:1395058 Bug: v8:12710 Change-Id: Ie4b7feb6157ed3846a743d4ef1e2adcfdc522f30 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4750761 Auto-Submit: Yahan Lu <yahan@iscas.ac.cn> Reviewed-by: Ji Qiu <qiuji@iscas.ac.cn> Commit-Queue: Yahan Lu <yahan@iscas.ac.cn> Cr-Commit-Position: refs/heads/main@{#89388} | 2 年前 | |
[riscv][sandbox] Reference Code objects (and their entrypoint) through the CPT Also port: [riscv][tagged-ptr] Make Object methods static Port commit fbb9df7218ae348b56104ff8fdd82b578e42d189 Port commit f20f342a3e275ae6442a53e34869f1c90f0db4a0 Bug: chromium:1395058 Bug: v8:12710 Change-Id: Ie4b7feb6157ed3846a743d4ef1e2adcfdc522f30 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4750761 Auto-Submit: Yahan Lu <yahan@iscas.ac.cn> Reviewed-by: Ji Qiu <qiuji@iscas.ac.cn> Commit-Queue: Yahan Lu <yahan@iscas.ac.cn> Cr-Commit-Position: refs/heads/main@{#89388} | 2 年前 | |
[tagged-ptr] Remove Smi & Object constructors Remove the last remaining way of creating raw Smi and Object, instead of using Tagged<Smi>/Tagged<Object>. This reverts the default constructor of Tagged<Object> to initialise with kNullAddress instead of kZapValue, since there were too many places relying on this initialisation for subsequent checks. Bug: v8:12710 Change-Id: I6a591d0bf95bc4659552dbcbcfd561664afb14f7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4839257 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#89804} | 2 年前 | |
[ept] Delete tag kExternalObjectValueTag The tag was a generic tag used for v8::External. After a recent refactoring, the generic tag should not be used anymore. Instead, type-specific tags should be used. Additionally the number of tags reserved for v8::External gets reduced from 100 to 40, as this is enough in currently for Chrome, where 34 tags are used so far. The reduction is needed to make sure that the ExternalPointerTags stay within 7 bit range. Another change is that the tags that were used so far for tests are out of range now. Therefore, the tags get shifted to a new value range. Bug: 436799229 Change-Id: I0bbef6391bd4340d8d113ba01a565d9f1a24a0a4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7003791 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/main@{#102975} | 8 个月前 | |
[ept] Delete tag kExternalObjectValueTag The tag was a generic tag used for v8::External. After a recent refactoring, the generic tag should not be used anymore. Instead, type-specific tags should be used. Additionally the number of tags reserved for v8::External gets reduced from 100 to 40, as this is enough in currently for Chrome, where 34 tags are used so far. The reduction is needed to make sure that the ExternalPointerTags stay within 7 bit range. Another change is that the tags that were used so far for tests are out of range now. Therefore, the tags get shifted to a new value range. Bug: 436799229 Change-Id: I0bbef6391bd4340d8d113ba01a565d9f1a24a0a4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7003791 Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/main@{#102975} | 8 个月前 | |
Reland "[handles] Migration to direct handles, part 12" This is a reland of commit 5fa54d85a10049a55ba2fa02bc05145ddee7d19a Original change's description: > [handles] Migration to direct handles, part 12 > > This CL migrates a large number of handles to direct handles. The > changes are only relevant for builds with v8_enable_direct_handle=true. > > Affected source directories: api, asmjs, ast, builtins, codegen, > compiler, d8, debug, deoptimizer, diagnostics, execution, extensions, > heap, ic, init, interpreter, json, maglev, objects, parsing, profiler, > regexp, runtime, snapshot, strings, wasm, and tests. > > Bug: 42203211 > Change-Id: I2334b3295e5780e8f52d0b13d1545dce29fcf81e > Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6181904 > Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> > Reviewed-by: Omer Katz <omerkatz@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/main@{#98240} Bug: 42203211 Change-Id: Ie21acd681c12e7212185d61a19bd858365650204 Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6187462 Reviewed-by: Omer Katz <omerkatz@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Nikolaos Papaspyrou <nikolaos@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#98249} | 1 年前 | |
[handles] Migration to direct handles, part 13 This CL migrates a large number of handles to direct handles. The changes are only relevant for builds with v8_enable_direct_handle=true. Affected source directories: api, ast, builtins, codegen, compiler, debug, deoptimizer, execution, heap, ic, init, interpreter, json, maglev, objects, parsing, regexp, runtime, snapshot, strings, temporal, wasm, and in tests. Bug: 42203211 Change-Id: Icb4238ee9082865dae47dce025e529a1c3fdfc48 Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6189992 Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#98283} | 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 年前 | |
[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 年前 | |
Reland "[handles] Migration to direct handles, part 12" This is a reland of commit 5fa54d85a10049a55ba2fa02bc05145ddee7d19a Original change's description: > [handles] Migration to direct handles, part 12 > > This CL migrates a large number of handles to direct handles. The > changes are only relevant for builds with v8_enable_direct_handle=true. > > Affected source directories: api, asmjs, ast, builtins, codegen, > compiler, d8, debug, deoptimizer, diagnostics, execution, extensions, > heap, ic, init, interpreter, json, maglev, objects, parsing, profiler, > regexp, runtime, snapshot, strings, wasm, and tests. > > Bug: 42203211 > Change-Id: I2334b3295e5780e8f52d0b13d1545dce29fcf81e > Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6181904 > Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> > Reviewed-by: Omer Katz <omerkatz@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/main@{#98240} Bug: 42203211 Change-Id: Ie21acd681c12e7212185d61a19bd858365650204 Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6187462 Reviewed-by: Omer Katz <omerkatz@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Nikolaos Papaspyrou <nikolaos@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#98249} | 1 年前 | |
[test] Remove some unused includes Mostly test/cctest/. Bug: v8:13006 Change-Id: I8853d38feb79bed6234a4354ab25a13255a1871b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3755149 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#81777} | 3 年前 | |
Various Code/IStream cleanups - Consistent lower_case names for InstructionStart/End/Size - Rename entry/code_entry/code_entry_point to instruction_start - Move IStream::kMaxArguments to Code - Add IStream::body_size s.t. IStream objects know their own layout - Add more notes why we alloc Code before IStream objects - Remove dead code - Remove obsolete ToCode and FromCode conversion helpers - Tag both Code and IStream in heap-snapshot-generator No-Try: true Bug: v8:13789 Change-Id: Ifb7b8a10f5568c2099e3250d0fdf6867bee75804 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4381444 Commit-Queue: Jakob Linke <jgruber@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#86788} | 3 年前 | |
Revert "[tracing] Use base::TimeTicks for trace macro timestamps" This reverts commit 33774bd08e6438f6d7e6a97b912777177e3bae7f. Reason for revert: Failing the chromium roll: https://ci.chromium.org/ui/p/chromium/builders/try/linux_chromium_compile_dbg_ng/1965774/overview Original change's description: > [tracing] Use base::TimeTicks for trace macro timestamps > > This fixes an issue where performance.measure slices had incorrect > timestamps when running with perfetto (the legacy tracing used > microseconds, while perfetto uses nanoseconds, and we were passing in an > int64_t without units). > > Change-Id: I42bec62fb350bd2090ed12b3b0db111625ff03f5 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5435116 > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Auto-Submit: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Camillo Bruni <cbruni@chromium.org> > Cr-Commit-Position: refs/heads/main@{#93259} Change-Id: I424b7bc0b917bb95ece808e6dd155cfee39544d5 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5439413 Commit-Queue: Matthias Liedtke <mliedtke@chromium.org> Owners-Override: Matthias Liedtke <mliedtke@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#93262} | 2 年前 | |
[handles] Migration to direct handles, part 8 This CL migrates a large number of handles to direct handles. The changes are only relevant for builds with v8_enable_direct_handle=true. Affected source directories: api, asmjs, builtins, codegen, compiler, date, debug, diagnostics, execution, heap, ic, init, interpreter, json, logging, objects, parsing, regexp, runtime, snapshot, strings, wasm. Bug: 42203211 Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg Change-Id: Ib35bb03997bb4a646c56674f834b952dffdeaf02 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6074945 Reviewed-by: Omer Katz <omerkatz@chromium.org> Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#97624} | 1 年前 | |
[handles] Migration to direct handles, part 4 This CL migrates a large number of handles to direct handles. The changes are only relevant for builds with v8_enable_direct_handle=true. Affected directories: test. Bug: 42203211 Change-Id: Ie9fb3d5b3c66ea9ffa0092d928256aa3891c9a9a Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5622011 Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#94378} | 2 年前 | |
Avoid internal use of v8::Object::GetIsolate() ... such that we can deprecate it in a follow-up. The method is guaranteed to always return the "current isolate", so we should use that directly instead. Test sometimes use CcTest::isolate() or LocalContext::isolate() where it makes sense. R=leszeks@chromium.org Bug: 396607238 Change-Id: Iac924a78ac59be4029a75b1ff6b917160d1f7e06 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6564467 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#100391} | 1 年前 | |
Avoid internal use of v8::Object::GetIsolate() ... such that we can deprecate it in a follow-up. The method is guaranteed to always return the "current isolate", so we should use that directly instead. Test sometimes use CcTest::isolate() or LocalContext::isolate() where it makes sense. R=leszeks@chromium.org Bug: 396607238 Change-Id: Iac924a78ac59be4029a75b1ff6b917160d1f7e06 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6564467 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#100391} | 1 年前 | |
[cctest] Introduce LocalContext::isolate() This avoids a large chunk of v8::Context::GetIsolate() calls, which is a method that will be deprecated soon. R=jkummerow@chromium.org Bug: 396607238 Change-Id: Ia0e4b74d7bf95d033b55d8d985e4f02fefd2dbb4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6520237 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#100177} | 1 年前 | |
[test] Remove some unused includes Mostly test/cctest/. Bug: v8:13006 Change-Id: I8853d38feb79bed6234a4354ab25a13255a1871b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3755149 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#81777} | 3 年前 | |
Reland "[handles] Migration to direct handles, part 12" This is a reland of commit 5fa54d85a10049a55ba2fa02bc05145ddee7d19a Original change's description: > [handles] Migration to direct handles, part 12 > > This CL migrates a large number of handles to direct handles. The > changes are only relevant for builds with v8_enable_direct_handle=true. > > Affected source directories: api, asmjs, ast, builtins, codegen, > compiler, d8, debug, deoptimizer, diagnostics, execution, extensions, > heap, ic, init, interpreter, json, maglev, objects, parsing, profiler, > regexp, runtime, snapshot, strings, wasm, and tests. > > Bug: 42203211 > Change-Id: I2334b3295e5780e8f52d0b13d1545dce29fcf81e > Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6181904 > Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> > Reviewed-by: Omer Katz <omerkatz@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/main@{#98240} Bug: 42203211 Change-Id: Ie21acd681c12e7212185d61a19bd858365650204 Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6187462 Reviewed-by: Omer Katz <omerkatz@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Nikolaos Papaspyrou <nikolaos@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#98249} | 1 年前 | |
[test] Remove some unused includes Mostly test/cctest/. Bug: v8:13006 Change-Id: I8853d38feb79bed6234a4354ab25a13255a1871b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3755149 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#81777} | 3 年前 | |
[test] Use uint8_t instead of byte Byte is an alias for the standard uint8_t type (defined in src/common/globals.h). For readability, avoid the alias and use the uint8_t directly. R=ahaas@chromium.org Change-Id: Ieb3669fe72a8ce1ffaac544215bb28dc684f8d72 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4508919 Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#87522} | 3 年前 | |
[tools] Add v8windbg, a WinDbg extension for V8 Please take a look at tools/v8windbg/README.md for an overview of what v8windbg can do and how it's structured. This platform-specific debugging plugin makes use of the data provided by the V8 postmortem debugging API in tools/debug_helper. Note: This code began as https://github.com/billti/v8dbg and then moved into the Edge repository, where I added features gradually and got code reviews for individual changes. Now, taken in its entirety, it's an obnoxiously large CL. I'm open to breaking it up into a few chunks if that would be preferable. Bug: v8:9376 Change-Id: I3e503de00bb1aea870ae83e9bd99e4e2eab9ef98 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2031700 Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Tamer Tas <tmrts@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#66319} | 6 年前 | |
[handles] Migration to direct handles, part 4 This CL migrates a large number of handles to direct handles. The changes are only relevant for builds with v8_enable_direct_handle=true. Affected directories: test. Bug: 42203211 Change-Id: Ie9fb3d5b3c66ea9ffa0092d928256aa3891c9a9a Cq-Include-Trybots: luci.v8.try:v8_linux64_css_dbg Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5622011 Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#94378} | 2 年前 | |
[test] Use pathlib in test framework This turns all paths in the test frameworks and all its suite implementations from strings into pathlib paths. This makes the framework more future-proof, simplifies a lot of code and enhances readability. It comes with the risk of introducing new bugs. This is lowered using an experimental test comparison script: https://crrev.com/c/4648372. Some detailed changes: - The "path" of a test case is now a pathlib path (also in cases where the path doesn't correspond to a location on the file system). This path is always relative to the test root. - The "name" of a test case is the posix string of that path used in status files and at the command line. - All other paths are absolute. - We use some more wrapping with Path() than absolutely necessary. Reducing such a wrapping where it's not needed is a micro-optimization and the potential by introducing a bug by forgetting one is worse. - Some modules are not happy with pathlib objects, hence a few explicit str() conversions are added. Thoughts on risk: - The highest risk is that due to the newly introduced logic, some test cases are silently filtered and not run now. We'll manually compare runs before and after this change. - Each test attempted to run will either pass or fail, failures won't be silent. E.g. a wrong path passed to the cctest executable is flagged as a failure. - Wrongly constructed paths to JS test cases lead to failures (tested several manually). Other failure types: - Some string path not turned into pathlib: Will typically fail when calling any pathlib function. - Some pathlib object treated as a string: Will typically raise an exception, e.g. using in-operator. - Logic bugs in pathlib functions behaving differently than anticipated, e.g. with_suffix(): Will typically result in wrong paths, resulting in errors reading a test case. Though worst case could be silent ignoring. Cq-Include-Trybots: luci.v8.try:v8_numfuzz_dbg Cq-Include-Trybots: luci.v8.try:v8_numfuzz_rel Cq-Include-Trybots: luci.v8.try:v8_numfuzz_tsan_rel Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel Cq-Include-Trybots: luci.v8.try:v8_android_arm64_n5x_rel Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel Cq-Include-Trybots: luci.v8.try:v8_linux64_ubsan_rel Cq-Include-Trybots: luci.v8.try:v8_android_arm64_n5x_rel Bug: chromium:1132088 Change-Id: Ifc94feb292174935db969dcf5d174d2eedcf3dfd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4538761 Reviewed-by: Liviu Rau <liviurau@google.com> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/main@{#88502} | 2 年前 | |
[handles] Fix issues with direct locals This CL fixes a number of issues related to the interpretation of local handles as indirect pointers. With v8_enable_direct_local=true (which requires conservative stack scanning), local handles are simply direct pointers. Bug: v8:13270 Change-Id: I1834bfeaaf67ca9e6be46f4482b256750b49b9bc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/5237470 Reviewed-by: Omer Katz <omerkatz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Cr-Commit-Position: refs/heads/main@{#92031} | 2 年前 | |
[api] Rename args => info in function and property callbacks This matches the actual type better: - FunctionCallbackInfo<T> - PropertyCallbackInfo<T> Change-Id: I43d33f5a4e487a2b0f2194da253535494d51cb91 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4370018 Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#86705} | 3 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 7 个月前 | ||
| 25 天前 | ||
| 1 年前 | ||
| 25 天前 | ||
| 25 天前 | ||
| 6 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 8 个月前 | ||
| 25 天前 | ||
| 4 年前 | ||
| 8 年前 | ||
| 1 年前 | ||
| 3 年前 | ||
| 6 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 7 个月前 | ||
| 11 个月前 | ||
| 7 个月前 | ||
| 8 个月前 | ||
| 7 个月前 | ||
| 11 个月前 | ||
| 9 个月前 | ||
| 7 个月前 | ||
| 11 个月前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 9 个月前 | ||
| 8 个月前 | ||
| 2 年前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 7 个月前 | ||
| 1 年前 | ||
| 7 个月前 | ||
| 9 个月前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 10 个月前 | ||
| 1 年前 | ||
| 6 年前 | ||
| 2 小时前 | ||
| 9 个月前 | ||
| 9 个月前 | ||
| 9 个月前 | ||
| 9 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 11 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 11 个月前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 9 个月前 | ||
| 9 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 11 个月前 | ||
| 8 个月前 | ||
| 3 年前 | ||
| 10 个月前 | ||
| 3 年前 | ||
| 7 个月前 | ||
| 7 个月前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 8 个月前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 6 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 3 年前 |