- 25 Aug, 2022 1 commit
-
-
ishell@chromium.org authored
This CL simplifies the API calls by removing some instructions from the most common path. Bug: v8:11880 Change-Id: Id8a62c35af51947ad2c152e093346d03c8e2f508 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3855039 Auto-Submit: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#82718}
-
- 24 Aug, 2022 1 commit
-
-
Leszek Swirski authored
This reverts commit 63b37c0e. Reason for revert: Seems to regress performance Original change's description: > Reland "[ptr-compr][x64][compiler] Support load map in compressed > form" > > This is a reland of commit 6ca3adb9 > > Fix build failed with V8_MAP_PACKING. > > Original change's description: > > [ptr-compr][x64][compiler] Support load map in compressed form > > > > ...to allow pointer decompression at use-site. > > > > Bug: v8:13056, v8:7703 > > Change-Id: If369286814c76340a945cc2a9fd863888a813080 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3811737 > > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > > Commit-Queue: Hao A Xu <hao.a.xu@intel.com> > > Cr-Commit-Position: refs/heads/main@{#82242} > > Bug: v8:13056, v8:7703 > Change-Id: Ic753558058f70f6ee7850019aac9235b87d0e56a > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3815779 > Commit-Queue: Hao A Xu <hao.a.xu@intel.com> > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82322} Bug: v8:13056, v8:7703 Change-Id: I8693af9189e214ec54a56149e0b29038e85838c2 Fixed: chromium:1352384 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3842931 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#82689}
-
- 23 Aug, 2022 1 commit
-
-
Jakob Linke authored
This reverts commit c060af4d. Reason for revert: Fails with `v8_enable_verify_csa = true`: ``` # Fatal error in ../../src/compiler/machine-graph-verifier.cc, line 821 # TypeError: node #1503:Word32Equal uses node #1501:Load[kRepWord64] which doesn't have a compressed, tagged, or int32 representation. # Current block: id:187 <= id:154 <= id:183 <= id:93 <= id:144 # # Specify option --csa-trap-on-node=RegExpExecInternal,1503 for debugging. ``` Original change's description: > Fix CSA_CHECK failure on BE > > The load for external reference should be a full pointer load > instead of tagged size. > > Change-Id: I3460a26abea5053ba6daa5c6ed908cb93431654a > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3842348 > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Commit-Queue: Junliang Yan <junyan@redhat.com> > Cr-Commit-Position: refs/heads/main@{#82625} Change-Id: Iaf9d0432157cba8c585377d33083a798c62e516c No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3848171 Auto-Submit: Jakob Linke <jgruber@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@{#82649}
-
- 22 Aug, 2022 4 commits
-
-
ishell@chromium.org authored
Namely: - AccessorInfo::getter and AccessorInfo::js_getter, - CallHandlerInfo::callback and CallHandlerInfo::js_callback. The redirected/non-redirected callback distinction is required only for simulated builds but we wasted memory also for all native builds. Now we store these fields in "redirected" form which allows us to call them directly from builtins or generated code. In case it's necessary to call a callback from C++ code the C function address is read from the redirection. This additional indirection makes the callback calls from C++ code in simulated builds slower but saves memory for native builds. This CL should recover a part of memory regression caused by inlining Foreign fields into AccessorInfo and CallHandlerInfo. Bug: v8:12949, chromium:1336105, chromium:1335930 Change-Id: I38470ed21ee23b281247c11a9531542c7e4acca1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3835686Reviewed-by:
Jakob Linke <jgruber@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#82631}
-
Junliang Yan authored
The load for external reference should be a full pointer load instead of tagged size. Change-Id: I3460a26abea5053ba6daa5c6ed908cb93431654a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3842348Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#82625}
-
Qifan Pan authored
Bug: v8:9407 Change-Id: I159b2ce338ab55d8171b0892a6942c9a5144d632 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3842156Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Qifan Pan <panq@google.com> Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#82622}
-
Samuel Groß authored
Currently, when the input ArrayBuffer is detached during DataView construction, the code will create an invalid DataView object whose length, offset, and data_pointer are all incorrect. While this is currently ok as the DataView is never exposed to JavaScript in that case, it does cause issues as setting the data_pointer to a value outside of the V8 sandbox leads to a CHECK failure. This CL now ensures that the constructed DataView is always in a sane state to fix this. Bug: chromium:1354429 Change-Id: I04260a5cf5547a420956d7a75e77f41408aa4f78 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3841931Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Samuel Groß <saelo@chromium.org> Cr-Commit-Position: refs/heads/main@{#82619}
-
- 19 Aug, 2022 3 commits
-
-
Shu-yu Guo authored
Currently there is nothing ensuring the internal VM state of shared objects are in a coherent state and visible to other threads when the shared object is published. This CL adds a store-store memory barrier when returning from Factory methods that allocate shared JSObjects that are exposed to user JS code. For primitives, there is an additional store-store memory barrier in the shared value barrier. Bug: v8:12547 Change-Id: I4833c7ebf02cc352da9b006d2732669d6d043172 Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng,v8_linux64_tsan_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3819041 Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#82596}
-
Leon Bettscheider authored
This CL makes concurrent MinorMC only bailout on the write barrier if the value is not in young generation. Bug: v8:13012 Change-Id: I941c6f1e676440cf69e1d4fefcf2786383c9f678 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3840296 Commit-Queue: Leon Bettscheider <bettscheider@google.com> Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#82595}
-
Leon Bettscheider authored
This CL bails out on the generated code write barrier when minor incremental marking is active. Currently is_minor_marking_flag_ is always false. It will be connected with incremental marking in subsequent CLs. Bug: v8:13012 Change-Id: I0f5bc4aa14e9d56adbdad305499f2ca8f951765b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3838784Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Leon Bettscheider <bettscheider@google.com> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#82590}
-
- 18 Aug, 2022 3 commits
-
-
Stephen Belanger authored
This is a reland of commit 872b7faa Original change's description: > Fix Context PromiseHook behaviour with debugger enabled > > This is a solution for https://github.com/nodejs/node/issues/43148. > > Due to differences in behaviour between code with and without the debugger enabled, some promise lifecycle events were being missed and some extra ones were being added. This change resolves this and verifies the event sequence is consistent between code with and without the debugger. > > Change-Id: I3dabf1dceb14233226b1752083d659f1c2f97966 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3779922 > Reviewed-by: Victor Gomes <victorgomes@chromium.org> > Commit-Queue: Camillo Bruni <cbruni@chromium.org> > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82132} Change-Id: Ifdd407261c793887fbd012d5a04ba36b3744c349 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3805979Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#82575}
-
Samuel Groß authored
This is a reland of commit 6ec7be21 The issues that caused the CL to be reverted appear to be unrelated to this change as they still occurred after the revert. Original change's description: > [sandbox] Sandboxify WasmExportedFunctionData::sig > > This CL changes the WasmExportedFunctionData class to store a direct > ExternalPointer to the wasm::FunctionSig instead of referencing it > through a Foreign. This in turn makes it possible to use a unique > pointer tag for that external pointer when the sandbox is enabled. > > Drive-by: move WasmInternalFunction::call_target external pointer to the > end of the object, in line with other external pointer fields. > > Bug: v8:10391, v8:12949 > Change-Id: Ic3ff622a075c9eaa2f8d8835803437466290c928 > 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/+/3829086 > Commit-Queue: Samuel Groß <saelo@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82523} Bug: v8:10391, v8:12949 Change-Id: I108810ce86b95289dfb6d6377535813deac79a9f 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/+/3838109Reviewed-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@{#82565}
-
Matthias Liedtke authored
This is a reland of commit ee89a269 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: Ie13cfd6464006dcadc2a53f2dbf77f76ab185504 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3829940Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Auto-Submit: Matthias Liedtke <mliedtke@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#82551}
-
- 17 Aug, 2022 2 commits
-
-
Nico Hartmann authored
This reverts commit 6ec7be21. Reason for revert: Speculative revert for https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Win64/47984/overview Original change's description: > [sandbox] Sandboxify WasmExportedFunctionData::sig > > This CL changes the WasmExportedFunctionData class to store a direct > ExternalPointer to the wasm::FunctionSig instead of referencing it > through a Foreign. This in turn makes it possible to use a unique > pointer tag for that external pointer when the sandbox is enabled. > > Drive-by: move WasmInternalFunction::call_target external pointer to the > end of the object, in line with other external pointer fields. > > Bug: v8:10391, v8:12949 > Change-Id: Ic3ff622a075c9eaa2f8d8835803437466290c928 > 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/+/3829086 > Commit-Queue: Samuel Groß <saelo@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Cr-Commit-Position: refs/heads/main@{#82523} Bug: v8:10391, v8:12949 Change-Id: I18a7c9603e30d7cd78fd599e59596015260a5818 Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng,v8_linux_arm64_sim_heap_sandbox_dbg_ng No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3834259 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Owners-Override: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#82535}
-
Samuel Groß authored
This CL changes the WasmExportedFunctionData class to store a direct ExternalPointer to the wasm::FunctionSig instead of referencing it through a Foreign. This in turn makes it possible to use a unique pointer tag for that external pointer when the sandbox is enabled. Drive-by: move WasmInternalFunction::call_target external pointer to the end of the object, in line with other external pointer fields. Bug: v8:10391, v8:12949 Change-Id: Ic3ff622a075c9eaa2f8d8835803437466290c928 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/+/3829086 Commit-Queue: Samuel Groß <saelo@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#82523}
-
- 16 Aug, 2022 5 commits
-
-
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}
-
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}
-
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}
-
Lu Yahan authored
Change-Id: I8c02e3b8b73fc46d098993c39bf901f9619c8346 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3830281Reviewed-by:
ji qiu <qiuji@iscas.ac.cn> Commit-Queue: ji qiu <qiuji@iscas.ac.cn> Auto-Submit: Yahan Lu <yahan@iscas.ac.cn> Cr-Commit-Position: refs/heads/main@{#82467}
-
- 15 Aug, 2022 2 commits
-
-
Shu-yu Guo authored
The slow paths of the Array.prototype methods in the change-Array-by-copy proposal don't need to be inlined as macros. Make them builtins where possible. This CL also driveby fixes the fast path for toSpliced to only apply when the returned copy's length is <= kMaxFastArrayLength. Bug: v8:13035 Change-Id: I4034d5d40d7db14d86b33a6f1047e1b17781321a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3830287 Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/main@{#82465}
-
Hao Xu authored
... by selecting better instructions and avoiding sign-extend unsigned smi. Change-Id: I60b47f88dd34bfcda189716ac55d1fab13f3d4a1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3819112 Commit-Queue: Hao A Xu <hao.a.xu@intel.com> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#82463}
-
- 13 Aug, 2022 1 commit
-
-
Frank Tang authored
Also change Intl.DateTimeFormat to take temporal objects for format. Design doc: https://docs.google.com/document/d/1gI_Jd9ztnkqhQnDTR4GaI3JOFdMNJW2kQK_UaBPvMug Implement the intl enabled Temporal.Instant.prototype.toLocaleString, Temporal.PlainDate.prototype.toLocaleString Temporal.PlainDateTime.prototype.toLocaleString Temporal.PlainMonthDay.prototype.toLocaleString Temporal.PlainTime.prototype.toLocaleString Temporal.PlainYearMonth.prototype.toLocaleString Temporal.ZonedDateTime.prototype.toLocaleString Implement AOs: HandleDateTimeTemporalDate, HandleDateTimeTemporalYearMonth, HandleDateTimeTemporalMonthDay, HandleDateTimeTemporalTime HandleDateTimeTemporalDateTime, HandleDateTimeTemporalInstant, HandleDateTimeTemporalZonedDateTime, HandleDateTimeOthers, HandleDateTimeValue Spec Text: https://tc39.es/proposal-temporal/#sec-temporal-handledatetimevaluetemporaldate https://tc39.es/proposal-temporal/#sec-temporal-handledatetimevaluetemporalyearmonth https://tc39.es/proposal-temporal/#sec-temporal-handledatetimevaluetemporalmonthday https://tc39.es/proposal-temporal/#sec-temporal-handledatetimevaluetemporaltime https://tc39.es/proposal-temporal/#sec-temporal-handledatetimevaluetemporaldatetime https://tc39.es/proposal-temporal/#sec-temporal-handledatetimevaluetemporalinstant https://tc39.es/proposal-temporal/#sec-temporal-handledatetimevaluetemporalzoneddatetime https://tc39.es/proposal-temporal/#sec-temporal-handledatetimeothers https://tc39.es/proposal-temporal/#sec-temporal-handledatetimevalue https://tc39.es/proposal-temporal/#sup-temporal.instant.prototype.tolocalestring https://tc39.es/proposal-temporal/#sup-temporal.plaindate.prototype.tolocalestring Temporal.PlainDateTime.prototype.toLocaleString https://tc39.es/proposal-temporal/#sup-temporal.plainmonthday.prototype.tolocalestring https://tc39.es/proposal-temporal/#sup-temporal.plaintime.prototype.tolocalestring https://tc39.es/proposal-temporal/#sup-temporal.plainyearmonth.prototype.tolocalestring https://tc39.es/proposal-temporal/#sup-temporal.zoneddatetime.prototype.tolocalestring Remove the output_range parameter and use the is_null() of MaybeHandle<T> for to check the optional return. Bug: v8:11544 Change-Id: Ia9ffe7a71c8fb68391581eb5ef7620708e2bd1f0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3791526 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/main@{#82453}
-
- 12 Aug, 2022 6 commits
-
-
Frank Tang authored
Also add AOs: DifferenceTemporalPlainDateTime, DifferenceTemporalZonedDateTime, Spec Text: https://tc39.es/proposal-temporal/#sec-temporal.plaindatetime.prototype.since https://tc39.es/proposal-temporal/#sec-temporal.plaindatetime.prototype.until https://tc39.es/proposal-temporal/#sec-temporal.zoneddatetime.prototype.since https://tc39.es/proposal-temporal/#sec-temporal.zoneddatetime.prototype.until https://tc39.es/proposal-temporal/#sec-temporal-differencetemporalplaindatetime https://tc39.es/proposal-temporal/#sec-temporal-differencetemporalzoneddatetime split from cl/3750098 Bug: v8:11544 Change-Id: I326d91a897fcd7e39de2fb2bfecfc5bfd920eb44 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3827313Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/main@{#82447}
-
ishell@chromium.org authored
Bug: v8:11880 Change-Id: I745caa10106870eb06526cccb8693797a36ba7bd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3825888Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Jakob Linke <jgruber@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#82430}
-
Marja Hölttä authored
Only hardening; no behavioral changes. Bug: v8:11111 Change-Id: I66765b661485334b1b14d9ceaa16a8df355d1898 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3826246Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/main@{#82429}
-
Liu Yu authored
Port commit ca33c73e Bug: v8:7700 Change-Id: I4da1e75be2418ddf6651614c7902a6393b19479a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3828411 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@{#82427}
-
Matthias Liedtke authored
This adds `extern.internalize(ref null extern): ref null any` to wasm which unpacks the wrapped wasm object if the js-interop flag is not set. I31 values are still wrapped in object wrappers and don't use SMIs. Bug: v8:7748 Change-Id: Ie4a4507961d0ad41caf430054a3d341f474b8e66 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3819645Reviewed-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@{#82426}
-
Lu Yahan authored
Port commit ca33c73e Port commit 8b4272c2 Also [compiler] Remove delayed string constants Port commit de04959f Bug: v8:7700 Change-Id: I28e876231e580710354876a6841e15ca2b35e372 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3826517Reviewed-by:
ji qiu <qiuji@iscas.ac.cn> Commit-Queue: ji qiu <qiuji@iscas.ac.cn> Cr-Commit-Position: refs/heads/main@{#82415}
-
- 11 Aug, 2022 4 commits
-
-
ishell@chromium.org authored
... in compiler and other components. Bug: v8:11880 Change-Id: I3a51c33499e7c7169f171c4be0600d7822dafc27 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3825883 Auto-Submit: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Jakob Linke <jgruber@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Commit-Queue: Jakob Linke <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#82391}
-
Jakob Linke authored
There's no need to decode the tiering state in generated code - merge these runtime functions and decode in the new generic CompileOptimized runtime function instead. CompileMaglev_Synchronized CompileMaglev_Concurrent CompileTurbofan_Synchronized CompileTurbofan_Concurrent -> CompileOptimized Bug: v8:7700 Change-Id: I36f3964bb5bb72b35f65f454c3ad3db0656c14bd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3825877 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Auto-Submit: Jakob Linke <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#82383}
-
Dominik Inführ authored
This CL adds the shared barrier to the RecordWrite builtin which is used in generated code for builtins, interpreted and optimized code. The out-of-line part of the barrier now checks whether either the POINTERS_TO_HERE_ARE_INTERESTING or the IN_SHARED_HEAP bit is set in the value object's page flags. Outside of marking the RecordWrite builtin now needs to check whether to insert into the generational or shared remembered set. Inserting into the shared remembered set will always call into C++ code. During marking the RecordWrite builtin now also needs to check whether this store created an old-to-shared pointer. Bug: v8:11708 Change-Id: Iaca4c3c0650aece4326936d7d63754a23cd0a028 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3779679Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Jakob Linke <jgruber@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#82375}
-
Shu-yu Guo authored
This is a reland of commit b1020a43 Changes since revert: - Fixed global safepoint interrupts in https://chromium-review.googlesource.com/c/v8/v8/+/3820913 Original change's description: > Reland "[shared-struct] Add Atomics.Condition" > > This is a reland of commit e2066ff6 > > Changes since revert: > - Rebased against c9918524, which > uses the external pointer table for the WaiterQueueNode stored > in the state field when compressing pointers. This relaxes > the alignment requirement of the state field to be 4-bytes when > compressing pointers. > - Moved the state field into the JSSynchronizationPrimitive base > class, since alignment and padding can now be made simpler. > > Original change's description: > > [shared-struct] Add Atomics.Condition > > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3630350 > > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> > > Reviewed-by: Adam Klein <adamk@chromium.org> > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3763787 > Reviewed-by: Adam Klein <adamk@chromium.org> > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Bug: v8:12547 Change-Id: Ibc6de74c7853e4ea766ff2c70f92339ba69f2675 Cq-Include-Trybots: luci.v8.try:v8_linux_arm64_rel_ng,v8_linux64_tsan_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3820901Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#82368}
-
- 10 Aug, 2022 7 commits
-
-
Milad Fa authored
Port ca33c73e Original Commit Message: .. since these functions will also be used by Maglev codegen. R=jgruber@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: Icccc06b76cd61902900b0deecbfe1fbe46202235 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3822670 Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Reviewed-by:
Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#82362}
-
ishell@chromium.org authored
... which will be necessary once builtins become Code-less. Bug: v8:11880 Change-Id: If48739c3a058e6baf3c2e062d8eaace062c27592 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3822686Reviewed-by:
Jakob Linke <jgruber@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#82352}
-
Camillo authored
- Add explicit --turbo-profiling-output and --turbo-profiling-input - Rename --turbo-profiling-log-file to --turbo-profiling-input - No longer log PGO data to v8.log - Add runtime %GetAndResetTurboProfilingData helper function for more controlled logging within chrome - Rewrite generate.py script to use more python3 Bug: v8:10470 Change-Id: Ib817b5c3793a0a7ae77103075ea2d6f6d0282150 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3820381Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#82350}
-
Clemens Backes authored
Tail call the StringAdd_CheckNone builtin. This also avoids the need to create a frame. X64 code before: 0 55 push rbp 1 4889e5 REX.W movq rbp,rsp 4 6a20 push 0x20 6 488b5500 REX.W movq rdx,[rbp+0x0] a 488b52f0 REX.W movq rdx,[rdx-0x10] e 8bb2c7000000 movl rsi,[rdx+0xc7] 14 4903f6 REX.W addq rsi,r14 17 e8a402f3ff call 0x7f2effeb5a80 (StringAdd_CheckNone) 1c 488be5 REX.W movq rsp,rbp 1f 5d pop rbp 20 c3 retl X64 code after: 0 488bd5 REX.W movq rdx,rbp 3 488b52f0 REX.W movq rdx,[rdx-0x10] 7 8bb2c7000000 movl rsi,[rdx+0xc7] d 4903f6 REX.W addq rsi,r14 10 e9ab02f3ff jmp 0x7fed7feb5a80 (StringAdd_CheckNone) R=jkummerow@chromium.org Bug: v8:12868 Change-Id: Ie722fb57abcd649d2586aad2c4aca55ff218fe43 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3823127Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#82340}
-
Teodor Dutu authored
In order to support a larger heap cage (8GB, 16GB), the cage offset will take up more than 32 bits. As a consequence, for 8GB cages, the least significant bit of the cage offset will overlap with the most significant bit of the tagged offset. To avoid this, allocations need to be aligned to 8 bytes to free up one bit from the offset. All changes are deactivated behind the build flag `v8_enable_pointer_compression_8gb`. Allocation folding is not yet supported. Bug: v8:13070 Change-Id: I602c71232e98eac4e2701b0922704a7adc31a662 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3817741 Commit-Queue: Teo Dutu <teodutu@google.com> Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#82331}
-
ishell@chromium.org authored
... which affect how builtin calls are generated. This CL replaces the following boolean options - builtin_calls_as_table_load, - inline_offheap_trampolines, - short_builtin_calls, - use_pc_relative_calls_and_jumps, with an enum BuiltinCallJumpMode and a boolean option use_pc_relative_calls_and_jumps_for_mksnapshot. Bug: v8:11880, v8:11527 Change-Id: Ia842b1d126c99dbe83e5b4f6118dcd44082ed168 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3820063Reviewed-by:
Jakob Linke <jgruber@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#82330}
-
Hao Xu authored
form" This is a reland of commit 6ca3adb9 Fix build failed with V8_MAP_PACKING. Original change's description: > [ptr-compr][x64][compiler] Support load map in compressed form > > ...to allow pointer decompression at use-site. > > Bug: v8:13056, v8:7703 > Change-Id: If369286814c76340a945cc2a9fd863888a813080 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3811737 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Hao A Xu <hao.a.xu@intel.com> > Cr-Commit-Position: refs/heads/main@{#82242} Bug: v8:13056, v8:7703 Change-Id: Ic753558058f70f6ee7850019aac9235b87d0e56a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3815779 Commit-Queue: Hao A Xu <hao.a.xu@intel.com> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#82322}
-