- 17 Aug, 2022 15 commits
-
-
ishell@chromium.org authored
The Code-less builtins mode is still disabled. Bug: v8:11880 Change-Id: I725ae4187bb394f79c69d5d0d971961e3ea406e8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3827879 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Jakob Linke <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#82520}
-
Jakob Linke authored
We should only tier to Sparkplug from Ignition. Previously, the '!ActiveTierIsSparkplug' condition was correct since only Ignition (and Sparkplug itself) entered the TieringManager. But now that Maglev is also present, the condition must be clarified to 'ActiveTierIsIgnition'. Bug: v8:7700 Change-Id: Ic7ea898facf9ce65407d09cead35e0181e49db31 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3835562 Commit-Queue: Jakob Linke <jgruber@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#82519}
-
Jakob Linke authored
.. just because it's convenient to see the object type and code kind for short prints. Before: - code: 0x014c00257515 <Other heap object (CODE_DATA_CONTAINER_TYPE)> After: - code: 0x39b7002573b1 <CodeDataContainer MAGLEV> Bug: v8:11880 Change-Id: I02576ffdef509ed021fc5632ea19448387188130 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3826255Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Jakob Linke <jgruber@chromium.org> Auto-Submit: Jakob Linke <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#82518}
-
Anton Bikineev authored
M1 is known to have regression in MotionMark. Fuchsia fails due to binary size increase. Bug: chromium:1325007 Change-Id: I599c53bf1318dfcc7b40764e89df81b972374ed3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3835682Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Anton Bikineev <bikineev@chromium.org> Auto-Submit: Anton Bikineev <bikineev@chromium.org> Cr-Commit-Position: refs/heads/main@{#82517}
-
Jakob Linke authored
This reverts commit 437b311a. Reason for revert: Causes issues for other CLs: https://ci.chromium.org/ui/p/v8/builders/try/v8_linux_chromium_gn_rel/76508/overview Original change's description: > [test] Migrate cctest/test-inspector to unittests/ > > test-inspector.cc -> inspector-unittest.cc > > Bug: v8:12781 > Change-Id: I37d2bc2d023ffd91b94d5a09cdbfe4a6e22fecf1 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3813062 > Reviewed-by: Jakob Linke <jgruber@chromium.org> > Commit-Queue: Jakob Linke <jgruber@chromium.org> > Reviewed-by: Hannes Payer <hpayer@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82512} Bug: v8:12781 Change-Id: I3355e5828814fdd489f7d31ecb694419b95f9c5b No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3829939Reviewed-by: Liviu Rau <liviurau@google.com> Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#82516}
-
Michael Lippautz authored
- Move InnerPointerToCodeCache to using internal callbacks. - Refactor internal and external callbacks to use a unified interface. Bug: v8:13184 Change-Id: If0006d324b0433f5d6bbf00b6d0fc1a2589227bc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3834583Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#82515}
-
Qifan Pan authored
Benchmark BitwiseAnd, Divide, and Exponentiate. Add explicitly truncated cases to Multiply. Bug: v8:9407 Change-Id: I89b2a624c0a60034fbe875958461a5f2ab826ade Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3829467 Commit-Queue: Qifan Pan <panq@google.com> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#82514}
-
Patrick Thier authored
Distinguish internalized forwarding indices from external forwarding indices stored in a strings hash. Bug: v8:12957 Change-Id: Ic01386a3291ac8d618cf4282aa7112e74e1b9169 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3829471Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Patrick Thier <pthier@chromium.org> Cr-Commit-Position: refs/heads/main@{#82513}
-
Feng Yu authored
test-inspector.cc -> inspector-unittest.cc Bug: v8:12781 Change-Id: I37d2bc2d023ffd91b94d5a09cdbfe4a6e22fecf1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3813062Reviewed-by: Jakob Linke <jgruber@chromium.org> Commit-Queue: Jakob Linke <jgruber@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/main@{#82512}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/39f80da..339f8c6 Rolling v8/buildtools: https://chromium.googlesource.com/chromium/src/buildtools/+log/98014eb..3d64821 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/22963c3..a56fd8b R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I2570fdd32bbf2a04bd6ba8d05783aef01b39df44 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3835075 Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Bot-Commit: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#82511}
-
Liu Yu authored
Port commit c5d48121 Bug: v8:11708 Change-Id: Ia50968a169d6b13370f65d5e5fb84a8794cfe216 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3835322 Auto-Submit: Liu Yu <liuyu@loongson.cn> Reviewed-by: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/main@{#82510}
-
Liu Yu authored
Port commit c3ca8158 Change-Id: I76fd54522ec901534a13af6eadb917f6e8608d14 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3835264 Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Auto-Submit: Liu Yu <liuyu@loongson.cn> Reviewed-by: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/main@{#82509}
-
JianxiaoLuIntel authored
For Example: ------------------------ 691: Int32Constant[8] 1857: Word32And(1838,691) 1858: Word32Equal(1857,691) 1859: Branch(1858,2141) ======> 691: Int32Constant[8] 1857: Word32And(1838,691) 1859: Branch(1857,2141) ------------------------ Assembly code: ------------------------ andl r9,0x8 cmpb r9l,0x8 jz 0x7f242017bf3c ======> testb r9,0x8 jnz 0x7f56c017be2e ------------------------ Change-Id: I62a2a3d4bda5a82011b1c6aa745c1c8dc8cf4525 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3809052Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Jianxiao Lu <jianxiao.lu@intel.com> Cr-Commit-Position: refs/heads/main@{#82508}
-
Frank Tang authored
Bug: v8:11544 Change-Id: Iaf285f431e742e607e09d37c47a94d3f86806b13 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3833434Reviewed-by: Shu-yu Guo <syg@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/main@{#82507}
-
Shu-yu Guo authored
This reverts commit 6561d415. Reason for revert: Adds ~300kb of code size, breaking https://ci.chromium.org/ui/p/chromium/builders/try/fuchsia-binary-size/53196/overview Original change's description: > cppgc: Enable pointer compression on all platforms but M1 > > M1 still seems to have some performance regressions on > MotionMark/multiply. > > Bug: chromium:1325007 > Change-Id: I12ce44b8cef646f09a3c74ba533dfee8dffdd2ce > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3829540 > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Anton Bikineev <bikineev@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82485} Bug: chromium:1325007 Change-Id: Ib7aff1e1859ebd17cefd05c5f627a713f045fd26 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3831333 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#82506}
-
- 16 Aug, 2022 25 commits
-
-
Frank Tang authored
Refactoring the code dealing with TimeZone Canonicalization. Change CanonicalizeTimeZoneName from return MaybeHandle<String> to Handle<String> Move TimeZoneId from JSDateTimeFormat to Intl and return Handle<String> instead of Handle<Object> Bug: v8:13112 Change-Id: I678b0e0d407e5e4e9dd8b7120c0e99e7e2d9c5ea Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3833435Reviewed-by: Shu-yu Guo <syg@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/main@{#82505}
-
Samuel Groß authored
This CL changes the WasmTypeInfo class to have a direct ExternalPointer to the native type structure instead of using a Foreign. This in turn makes it possible to use a unique pointer tag for that external pointer when the sandbox is enabled. Bug: v8:10391, v8:12949 Change-Id: Ifee4d2103cabfa6a7299d0d09e06d387034e5f8f Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng,v8_linux_arm64_sim_heap_sandbox_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3829085Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Samuel Groß <saelo@chromium.org> Cr-Commit-Position: refs/heads/main@{#82504}
-
Clemens Backes authored
The previous CL (https://crrev.com/c/3810187) caused a 86.9kB binary size regression on arm64 Android. The 64kB alignment is actually only needed on Linux, as Android always uses 4kB. This reduces the binary size by 98.3kB in a local test, resulting in a 11.4kB reduction overall (over both patches). R=cbruni@chromium.org Bug: v8:12887 Change-Id: If0c44d1b447e6982876a6ced8680b904613e39d5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3829473Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#82503}
-
Frank Tang authored
Sync to https://github.com/tc39/proposal-temporal/pull/2278 Use Smi::zero instead of BigInt::FromInt64(isolate, 0) Rework the BigInt comparions code Bug: v8:11544 Change-Id: I8b85156927601aad272b10c35ae15fd1c65e01c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3832538Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/main@{#82502}
-
Nico Hartmann authored
Bug: v8:13195 Change-Id: I4a7904e568933df2f6a8cffdb13f9b575fc17eee Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3832392 Commit-Queue: Clemens Backes <clemensb@chromium.org> Owners-Override: Nico Hartmann <nicohartmann@chromium.org> Auto-Submit: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#82501}
-
Danylo Boiko authored
Bug: v8:7327 Change-Id: I0de7ee31762db6b95a631eedffd0f82fa2f0ce3b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3812034Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Danylo Boiko <danielboyko02@gmail.com> Cr-Commit-Position: refs/heads/main@{#82500}
-
George Wort authored
Int32MulWithOverflow on arm64 uses a cmp to set flags rather than the multiply instruction itself, thus we can use a left shift when the multiplication is by a power of two. This provides 0.15% for Speedometer2 on a Neoverse-N1 machine, with React being improved by 0.45%. Change-Id: Ic8db42ecc7cb14cf1ac7bbbeab0e9d8359104351 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3829472 Commit-Queue: George Wort <george.wort@arm.com> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#82499}
-
Danylo Boiko authored
Bug: v8:7327 Change-Id: Ic805dc9bb1f653930d0bb34163d21aa34efc6a51 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3820069Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Danylo Boiko <danielboyko02@gmail.com> Cr-Commit-Position: refs/heads/main@{#82498}
-
Peter Kasting authored
This fixes a compile error in C++20 with comparison operator reordering. Also does a little misc. cleanup to the adjacent code. Bug: chromium:1284275 Change-Id: I1999c4ef2e8a201d2f1270347fe12c33c961c011 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3830987 Auto-Submit: Peter Kasting <pkasting@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#82497}
-
Danylo Boiko authored
Bug: v8:7327 Change-Id: Ia0b768fe6a08c6e628fb91ac489556ddedf120ad Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3805662Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Shu-yu Guo <syg@chromium.org> Commit-Queue: Danylo Boiko <danielboyko02@gmail.com> Cr-Commit-Position: refs/heads/main@{#82496}
-
Nico Hartmann authored
This reverts commit ee89a269. Reason for revert: Speculative revert https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Mac64%20GC%20Stress/24078/overview Original change's description: > [wasm-gc] Add extern.externalize > > This adds `extern.externalize(ref null any): ref null extern` to wasm > which packs wasm objects into JS objects if the js-interop flag is not set. > This is the counterpart to extern.internalize introduced in > 50ec8a11. > > Bug: v8:7748 > Change-Id: I67b8fe6d70b9f526ff6c43b0a4d7861c7ff5dad0 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3825879 > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Commit-Queue: Matthias Liedtke <mliedtke@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82492} Bug: v8:7748 Change-Id: I22c84d69a1dc957208f60ae3125e80278ae739a5 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3832389 Owners-Override: Nico Hartmann <nicohartmann@chromium.org> Auto-Submit: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#82495}
-
Clemens Backes authored
The {vmar.protect} API used for {SetPermissions} fails when called on data memory with error -10 (ZX_ERR_INVALID_ARGS). Skip fuchsia until we figure out the right API to use there. R=cbruni@chromium.org Bug: v8:13194 Change-Id: I20754f7212a892b8440f29658bf3db40f7745fe9 No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3833820 Auto-Submit: Clemens Backes <clemensb@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#82494}
-
Michael Lippautz authored
This is a reland of commit a19316d9 - Revert malloc_usable_size() changes temporarily to land them in isolation. - Add cosmetics from https://crrev.com/c/3827876 Original change's description: > [heap] Rework Worklist base type > > Worklist uses a singly-linked list of segments to hold entries. > Segment size was based on a compile-time constant but already stored > in the segment itself. > > Rework the segments to query `malloc_usable_size()` on allocation and > adjust the capacity properly. For PartitionAlloc, it turns out that > there's ~20% more capacity available for the 64-element segments. > > This slows down actual allocation of the segments with the upside of > improving utilization and requiring 20% less segments. > > Change-Id: Ib8595c3fb9fb75b02e4022f6c525bb59a2df7ab7 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3826047 > Commit-Queue: Anton Bikineev <bikineev@chromium.org> > Commit-Queue: Michael Lippautz <mlippautz@chromium.org> > Reviewed-by: Anton Bikineev <bikineev@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82432} Change-Id: Ic8c5257cfe3c347b11eea5c513ca7f62e09f637f Bug: v8:13193 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3829475Reviewed-by: Anton Bikineev <bikineev@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#82493}
-
Matthias Liedtke authored
This adds `extern.externalize(ref null any): ref null extern` to wasm which packs wasm objects into JS objects if the js-interop flag is not set. This is the counterpart to extern.internalize introduced in 50ec8a11. Bug: v8:7748 Change-Id: I67b8fe6d70b9f526ff6c43b0a4d7861c7ff5dad0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3825879Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Matthias Liedtke <mliedtke@chromium.org> Cr-Commit-Position: refs/heads/main@{#82492}
-
Shu-yu Guo authored
Bug: v8:13035 Change-Id: I028f77f7dea73d56bf9df56ee06908fd01ce8a43 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3830034Reviewed-by: Simon Zünd <szuend@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/main@{#82491}
-
ishell@chromium.org authored
Bug: v8:11880 Change-Id: I4515f98ade8237ac049e782b1b886a2139295b3b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3827863Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Jakob Linke <jgruber@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#82490}
-
Simon Zünd authored
This CL fixes a CHECK that checks the wrong thing. Specifically when we `Advance` the debug::PropertyIterator it can throw an exception. We have a CHECK that verifies that a corresponding v8::TryCatch catches the exception when the return value indicates this. Unfortunately, the CHECK was looking at the wrong v8::TryCatch scope. R=jarin@chromium.org Bug: chromium:1353051 Change-Id: Ic52e4efd44b89f8e4d1f6acace234c6065e081cb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3829543 Commit-Queue: Simon Zünd <szuend@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/main@{#82489}
-
v8-ci-autoroll-builder authored
Rolling v8/third_party/google_benchmark/src: https://chromium.googlesource.com/external/github.com/google/benchmark/+log/ef7f75f..77d1e74 add debug option for enabling more output for failed cxxfeaturechecks (#1467) (Dominic Hamon) https://chromium.googlesource.com/external/github.com/google/benchmark/+/77d1e74 FIx typo in benchmark.h (#1465) (Björn Daase) https://chromium.googlesource.com/external/github.com/google/benchmark/+/4366d66 run ClearRegisteredBenchmarks at exit (#1463) (Dominic Hamon) https://chromium.googlesource.com/external/github.com/google/benchmark/+/af32e3f Avoid deprecation warning in NVHPC (#1459) (Cezary Skrzyński) https://chromium.googlesource.com/external/github.com/google/benchmark/+/a476d0f Ensure we don't need benchmark installed to pass c++ feature checks (#1456) (Dominic Hamon) https://chromium.googlesource.com/external/github.com/google/benchmark/+/974cd5a Explicitly cast int literals to int8_t in tests to silence implicit-conversion warnings (#1455) (Vy Nguyen) https://chromium.googlesource.com/external/github.com/google/benchmark/+/5eb16ee Fixed build issues on window (#1449) (Vy Nguyen) https://chromium.googlesource.com/external/github.com/google/benchmark/+/1cca1d0 remove unnecessary generated include directory (#1451) (Dominic Hamon) https://chromium.googlesource.com/external/github.com/google/benchmark/+/7d48eff ... R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com,mlippautz@chromium.org Change-Id: I193cf1c771fd55990ab54cfd902248809b798006 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3831637 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#82488}
-
Liu Yu authored
Port commit dc2d69d8 Bug: v8:11708 Change-Id: Ia21753e58b93abed3da13e6b05801f26d350f013 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3833439Reviewed-by: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Auto-Submit: Liu Yu <liuyu@loongson.cn> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/main@{#82487}
-
Dominik Inführ authored
Introduce common bottleneck for all incremental marking step invocations from a task context. This will later be used to move code out of IncrementalMarking::Step. This is a reland of https://crrev.com/c/3822682. This CL now always schedules normal tasks instead of delayed ones in order to keep current behavior. Bug: v8:11708 Change-Id: I0dc378879177458a6429ea0b3acd3ee45b499240 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3833814Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#82486}
-
Anton Bikineev authored
M1 still seems to have some performance regressions on MotionMark/multiply. Bug: chromium:1325007 Change-Id: I12ce44b8cef646f09a3c74ba533dfee8dffdd2ce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3829540Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Anton Bikineev <bikineev@chromium.org> Cr-Commit-Position: refs/heads/main@{#82485}
-
Samuel Groß authored
The external pointer table is already to some degree self-compacting: as the freelist is sorted in ascending order, free entries at the start of the table should quickly fill up. However, any live entry at the end of the table makes it impossible to shrink the table, thereby causing higher memory consumption. To solve this, this CL implements a simple table compaction algorithm, used when the freelist has become sufficiently large (currently >= 10% of the table capacity): - The goal of the algorithm is to shrink the table by freelist_size/2 entries at the end of compaction (during sweeping). - At the start of the marking phase, the compaction area is computed as roughly [capacity - freelist_size/2, capacity). - When an entry is marked as alive that lies inside the compaction area, a new "relocation entry" is allocated for it from the freelist and the address of the handle for that entry is stored in that entry. If there are no more free entries before the compaction area, compaction is aborted. This is expected to happen rarely and is logged into a histogram. - During sweeping, all relocation entries are "resolved": the content of the old entry is copied into the new entry and the handle is updated to point to the new entry. - Finally, the table is shrunk and the last initial_freelist_size/2 entries are decommitted. See also the comments in the ExternalPointerTable class for more details. Bug: v8:10391 Change-Id: I28d475c3596590e860421f0a054e2ad4dbebd487 Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng,v8_linux_arm64_sim_heap_sandbox_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3794645Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Samuel Groß <saelo@chromium.org> Cr-Commit-Position: refs/heads/main@{#82484}
-
Simon Zünd authored
Consider the function: function foo() { debugger; let y = 1; } V8 will elide the hole initialization for 'y'. When we pause at the debugger statement, then 'y' evaluates to 'undefined'. This CL fixes this in the ScopeIterator. When we encounter local variables with an `undefined` value we check the static scope information if we are stopped *before* the variable's initializer. If yes, then we are in the variable's TDZ and report "value unavailable". Drive-by: Mark `GetSourcePosition()` as `const` to make it available in the visitor method. R=bmeurer@chromium.org Bug: chromium:1328681 Change-Id: I8b966eaa2af64a35a58095a744440851760921a0 Fixed: chromium:1303493 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3829539 Commit-Queue: Simon Zünd <szuend@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/main@{#82483}
-
Samuel Groß authored
This CL replaces the AllocateExternalPointerEntries methods with per-field init_##fieldname methods for every external pointer field. These now initialize the field by allocating the external pointer table entry for it and also set the initial value. This saves one memory write in the typical case (what used to be AllocateExternalPointerEntries followed by a set_##fieldname) and removes some code that can be factored out into the (DECL_)EXTERNAL_POINTER_ACCESSORS macro. Bug: v8:10391 Change-Id: Iac937316322910de0a8bb99b33592eca8c57a4a6 Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng,v8_linux_arm64_sim_heap_sandbox_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3810344Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Jakob Linke <jgruber@chromium.org> Commit-Queue: Samuel Groß <saelo@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#82482}
-
Al Muthanna Athamina authored
Bug: v8:13153 No-Try: true Change-Id: I0436f71b5fa00f00a0ae7a30bb0a5a167994739d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3833774 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Alexander Schulze <alexschulze@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Almothana Athamneh <almuthanna@chromium.org> Cr-Commit-Position: refs/heads/main@{#82481}
-