- 06 May, 2022 1 commit
-
-
Clemens Backes authored
The no_condition / kNoCondition not only has the flaw that it's a special case which represents an illegal / nonexisting condition, and thus needs special handling in all methods which get a condition as input (this check is often missing), it is also weird in that every negative condition value must be considered a "no condition". It turns out that this "no condition" is rarely used, and can easily be avoided by duplicating methods, or storing a {base::Optional<Condition>} instead (not needed anywhere yet). This is a follow-up to https://crrev.com/c/3629553. R=tebbi@chromium.org, pthier@chromium.org Bug: v8:12425 Change-Id: Id2270b1660fcb0aff0a8460961b57068ed1c3c73 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3632102Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Patrick Thier <pthier@chromium.org> Cr-Commit-Position: refs/heads/main@{#80397}
-
- 05 May, 2022 2 commits
-
-
Peter Kasting authored
This prevents ambiguity errors in C++20 due to ADL when casting types in std::, which gains std::bit_cast<>(). Bug: chromium:1284275 Change-Id: I25046d1952a9304852e481ad8b84049c6769c289 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3625838 Auto-Submit: Peter Kasting <pkasting@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/main@{#80378}
-
jiepan authored
WASM only supports simd128, but modern CPUs support up to 256 bit vector register or more, we will add an experimental feature to do 256 bit re-vectorization in Turbofan pipeline, this patch add simd256 machine representation. Bug: v8:12716 Change-Id: I1e6a3f2afa0a457fca2c261216f4113d0ed5b818 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3534456Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Jie Pan <jie.pan@intel.com> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#80361}
-
- 22 Apr, 2022 1 commit
-
-
Deepti Gandluri authored
These were originally proposed as a part of the fixed-width SIMD proposal, and were then migrated to the relaxed-simd proposal which also deems these operations out of scope. Github issue: https://github.com/WebAssembly/relaxed-simd/issues/4 Bug: v8:12284 Change-Id: I65ceb6dfd25c43cf49bd7ec5b5ecd6b32cc3516a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3595970Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/main@{#80125}
-
- 20 Apr, 2022 1 commit
-
-
Liu Yu authored
Besides, enable float support on simulator. Port commit 098f31f4 Port commit a6da8161 As defined in https://loongson.github.io/LoongArch-Documentation/LoongArch-ELF-ABI-EN.html#_procedure_calling_convention Loongarch calling convention uses GP to pass floating-point arguments when no FP is available. Bug: v8:12614, chromium:1052746 Change-Id: I33d4115674604604b2b7e9178a306efb6000222b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3448195Reviewed-by:
Maya Lekova <mslekova@chromium.org> Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Yu Liu <liuyu@loongson.cn> Auto-Submit: Yu Liu <liuyu@loongson.cn> Cr-Commit-Position: refs/heads/main@{#80062}
-
- 16 Mar, 2022 1 commit
-
-
Zhao Jiazhong authored
Port commit I3cb2a4d386cb92a4dcd2edbdd3fba9ef71f354d6 Besides, clean some useless "SafepointRegister" stuff for MIPS. Change-Id: I85bc7592faa1a7939330bef8453ea5eff4ac7f71 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3527185Reviewed-by:
Yu Liu <liuyu@loongson.cn> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/main@{#79493}
-
- 14 Mar, 2022 1 commit
-
-
Leszek Swirski authored
Modernise the RegList interface to be a proper class, rather than a typedef to an integer, and add proper methods onto it rather than ad-hoc bit manipulation. In particular, this makes RegList typesafe, adding a DoubleRegList for DoubleRegisters. The Arm64 CPURegList isn't updated to use (or extend) the new RegList interface, because of its weird type-erasing semantics (it can store Registers and VRegisters). Maybe in the future we'll want to get rid of CPURegList entirely and use RegList/DoubleRegList directly. Change-Id: I3cb2a4d386cb92a4dcd2edbdd3fba9ef71f354d6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3516747 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79460}
-
- 23 Feb, 2022 1 commit
-
-
Liu Yu authored
Port commit 1b437aa8 Bug: v8:11708 Change-Id: I717ef7a7cb270580c14114d19f976f999f095185 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3482489 Auto-Submit: Yu Liu <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@{#79219}
-
- 18 Jan, 2022 1 commit
-
-
Liu Yu authored
Port commit db9f6bff Bug: v8:11112 Change-Id: I23e4f5e9fe854dce1c9cd93c28fdb656980c7094 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3397537 Auto-Submit: Yu Liu <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@{#78662}
-
- 16 Dec, 2021 1 commit
-
-
Seth Brenith authored
This reverts commit 00a757fa. Reason for revert: Caused perf regressions, https://crbug.com/1280236 Original change's description: > Shorten generated code for binary-search switches > > On some branches of the search tree for a binary-search switch, the > input value is sufficiently constrained that we could unconditionally > jump to the last possible case rather than checking for value equality. > This shortens some builtins by a few instructions and might speed things > up, though I expect the effect to be small. > > Change-Id: I2313f26976e6d3c182f03bd927b338c8175b3af3 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3335437 > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> > Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> > Cr-Commit-Position: refs/heads/main@{#78376} Bug: chromium:1280236 Change-Id: I88d9ff64641b85d48198b7012df2eeb9441913b5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3343234 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/main@{#78397}
-
- 15 Dec, 2021 1 commit
-
-
Samuel Groß authored
This CL renames a number of things related to the V8 sandbox. Mainly, what used to be under V8_HEAP_SANDBOX is now under V8_SANDBOXED_EXTERNAL_POINTERS, while the previous V8 VirtualMemoryCage is now simply the V8 Sandbox: V8_VIRTUAL_MEMORY_CAGE => V8_SANDBOX V8_HEAP_SANDBOX => V8_SANDBOXED_EXTERNAL_POINTERS V8_CAGED_POINTERS => V8_SANDBOXED_POINTERS V8VirtualMemoryCage => Sandbox CagedPointer => SandboxedPointer fake cage => partially reserved sandbox src/security => src/sandbox This naming scheme should simplify things: the sandbox is now the large region of virtual address space inside which V8 mainly operates and which should be considered untrusted. Mechanisms like sandboxed pointers are then used to attempt to prevent escapes from the sandbox (i.e. corruption of memory outside of it). Furthermore, the new naming scheme avoids the confusion with the various other "cages" in V8, in particular, the VirtualMemoryCage class, by dropping that name entirely. Future sandbox features are developed under their own V8_SANDBOX_X flag, and will, once final, be merged into V8_SANDBOX. Current future features are sandboxed external pointers (using the external pointer table), and sandboxed pointers (pointers guaranteed to point into the sandbox, e.g. because they are encoded as offsets). This CL then also introduces a new build flag, v8_enable_sandbox_future, which enables all future features. Bug: v8:10391 Change-Id: I5174ea8f5ab40fb96a04af10853da735ad775c96 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/+/3322981Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Samuel Groß <saelo@chromium.org> Cr-Commit-Position: refs/heads/main@{#78384}
-
- 14 Dec, 2021 2 commits
-
-
Seth Brenith authored
On some branches of the search tree for a binary-search switch, the input value is sufficiently constrained that we could unconditionally jump to the last possible case rather than checking for value equality. This shortens some builtins by a few instructions and might speed things up, though I expect the effect to be small. Change-Id: I2313f26976e6d3c182f03bd927b338c8175b3af3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3335437Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/main@{#78376}
-
Seth Brenith authored
We probably expect a binary-search switch to take log(n) time in all cases, but there is currently a possibility of that expectation being broken. I'm not aware of any place where this actually happens, but if the default handler immediately follows the switch dispatch block in assembly order, then unconditional jump instructions for that handler would be omitted. This omission could cause linear execution time, where every case is checked before falling through to the default handler. This change introduces a new function to emit an unconditional jump instruction regardless of whether the target is the following block, and uses that new function when generating a binary-search switch to ensure consistently log(n) behavior. Change-Id: I5cab86fd66386762519035410e3b532dc6fd764c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3335222Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/main@{#78370}
-
- 02 Nov, 2021 2 commits
-
-
Manos Koukoutos authored
Design doc: https://bit.ly/3jEVgzz Summary: We change the context for WasmJSFunction and WasmCapiFunction from a tuple containing the instance to a triple WasmAPIFunctionRef = {isolate root, context, callable}. This way we do not have to maintain the correct instance at runtime. Also, a few places in the code get simplified. Changes: - In WasmGraphBuilder, support having a WasmAPIFunctionRef at parameter 0. - Remove unpacking of (instance, callable) tuple from code generators. - Remove the part in WasmGraphBuilder and LiftoffCompiler that used to set the instance field of the function reference. - Modify code that handles the 'ref' field in wasm-objects.*, factory.* and c-api.cc. - Fix the recorded safepoint address for arm when calling a C function from wasm. - (Drive-by) Remove WasmAllocatePair. Bug: v8:11510 Change-Id: I2a4ef3abaf9da36c4a2d85b434965a40a289b9ec Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3236719 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/main@{#77639}
-
Zhao Jiazhong authored
Port commit afd15549 Since V8 heap sandbox requires pointer compression, which is not implemented on mips64 and loong64 ports, so I just fix the build issue in this CL. Change-Id: Ie8f9d070c6149d85c2c870e882199ede2ebfe317 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3255207 Auto-Submit: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Reviewed-by:
Liu yu <liuyu@loongson.cn> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/main@{#77633}
-
- 18 Oct, 2021 1 commit
-
-
Lei Zhang authored
Avoid generating switch statements with only a default case. Instead, when there are no instructions that can trap, simply have HasMemoryAccessMode() return false. This avoids a MSVC warning when doing a 32-bit build. To do this, remove empty TARGET_ARCH_OPCODE_WITH_MEMORY_ACCESS_MODE_LIST definitions from instruction-codes-$arch.h files. Change-Id: Ifed76eb9cbca169f30c188c1999e1e9be0b2c6aa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3224807Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Commit-Queue: Lei Zhang <thestig@chromium.org> Cr-Commit-Position: refs/heads/main@{#77441}
-
- 12 Oct, 2021 1 commit
-
-
Liu Yu authored
Port commit 6bd44dfe Port commit 89933af6 Port commit 255aaed9 Port commit 7511020b Port commit aa259e30 Bug: v8:11112 Change-Id: Ia005a5da2d48505926a19a5d238b606826db1135 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3215372 Auto-Submit: Liu yu <liuyu@loongson.cn> Reviewed-by:
Patrick Thier <pthier@chromium.org> Commit-Queue: Patrick Thier <pthier@chromium.org> Cr-Commit-Position: refs/heads/main@{#77338}
-
- 30 Sep, 2021 1 commit
-
-
Marja Hölttä authored
It's confusing that we have CSA_CHECK and CSA_ASSERT and it's not clear from the names that the former works in release mode and the latter only in debug mode. Renaming CSA_ASSERT to CSA_DCHECK makes it clear what it does. So now we have CSA_CHECK and CSA_DCHECK and they're not confusing. This also renames assert() in Torque to dcheck(). Bug: v8:12244 Change-Id: I6f25d431ebc6eec7ebe326b6b8ad3a0ac5e9a108 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3190104Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Shu-yu Guo <syg@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/main@{#77160}
-
- 26 Sep, 2021 1 commit
-
-
Zhao Jiazhong authored
Port commit e301d71f Change-Id: I58bb66e86629b60bcb75b3cec3e293d75acc5f5c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3184290 Auto-Submit: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Reviewed-by:
Liu yu <liuyu@loongson.cn> Commit-Queue: Liu yu <liuyu@loongson.cn> Cr-Commit-Position: refs/heads/main@{#77074}
-
- 24 Sep, 2021 1 commit
-
-
Jakob Kummerow authored
Bug: v8:12244,v8:12245 Change-Id: I3d9223f32bdc0d1cf7e5083996bc5707ab361e52 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3183162 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Auto-Submit: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/main@{#77062}
-
- 30 Aug, 2021 1 commit
-
-
Yu Yin authored
Change-Id: I49276c44d4b457d65be0e5e922c7c473bb64071e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3124216 Auto-Submit: Yu Yin <xwafish@gmail.com> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#76557}
-
- 21 Aug, 2021 1 commit
-
-
Yu Yin authored
Port commit 6a487504 Change-Id: Icfff8241e6e920970f0168ebfae535291c4d9e72 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3111275Reviewed-by:
Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/main@{#76418}
-
- 13 Aug, 2021 1 commit
-
-
Shu-yu Guo authored
To free up some ArchOpcode bits (especially for arm64), encode all atomic opcodes that are duplicated between 32bit and 64bit widths with a single opcode and encode the width in another field. Bug: v8:12093 Change-Id: Ide05e8f0b2aa877ea776851e47df60dd410deae2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3093257Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#76289}
-
- 12 Aug, 2021 1 commit
-
-
Ross McIlroy authored
These are no longer enabled, so remove the code mitigation logic from the codebase. BUG=chromium:1003890 Change-Id: I536bb1732e8463281c21da446bbba8f47ede8ebe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3045704 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#76256}
-
- 05 Aug, 2021 1 commit
-
-
Liu Yu authored
Port f7de8c80 Bug: v8:12017 Change-Id: I5099254936e2402d4dcf19a52c8ca8726d07f621 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3070384 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/master@{#76106}
-
- 28 Jun, 2021 1 commit
-
-
Liu Yu authored
Port c5d41ae6 Bug: v8:11420 Change-Id: I65ac4f2a100ada91f7009ff8990bb6079d00e7dc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2986416Reviewed-by:
Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Auto-Submit: Liu yu <liuyu@loongson.cn> Cr-Commit-Position: refs/heads/master@{#75412}
-
- 14 Jun, 2021 1 commit
-
-
Camillo Bruni authored
- Convert Builtin to enum class - Change int-based builtin_index methods to use Builtin - Change Builtins::builtin to Builtins::code Change-Id: Id9e3bb83da97e8894ca7ca78e1e852da60675619 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2949104 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Mythri Alle <mythria@chromium.org> Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#75127}
-
- 07 Jun, 2021 1 commit
-
-
Camillo Bruni authored
- Add new Builtin enum - Move Builtins::Name:kXXX to Builtin::kXXX - Update existing code Follow CLs will unify the mix of using int builtin-ids and Builtins::Name to only use the new Builtin enum and changing it to an enum class. Change-Id: Ib39aa45a25696acdf147f46392901b1e051deaa4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2905592 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Mythri Alle <mythria@chromium.org> Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#74995}
-
- 01 Jun, 2021 1 commit
-
-
Camillo Bruni authored
Various behaviour preserving changes that make it easier to switch on callee-saved registers without having to land refactoring code at the same time. - Use MaybeStoreRegisters / MaybeRestoreRegisters - Use CallRecordWriteStubSaveRegisters everywhere for now. Eventually this will be replaced by CallRecordWriteStub in places with fixed registers. - Use WriteBarrierDescriptor::ComputeSavedRegisters, which for now returns the same as allocatable_registers Full x64 implementation: https://crrev.com/c/2922604 Bug: v8:11420 Change-Id: I04e6ac2f6333edc91cb1030a0217f59ad441a1d3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2922250Reviewed-by:
Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#74876}
-
- 26 May, 2021 1 commit
-
-
Liu Yu authored
In commit 4a5adb43, mips may allocate a bit more memory than actually needed, and move the beginning of the StackSlot in order to have it aligned. After commit e639eafe, we allocated the memory that was actually needed, so we do not need extra alignment anymore. Change-Id: I4c4c01794ed1d2cc5b8c89196eae6834f0da0b6e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2917578Reviewed-by:
Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Auto-Submit: Liu yu <liuyu@loongson.cn> Cr-Commit-Position: refs/heads/master@{#74770}
-
- 25 May, 2021 1 commit
-
-
Camillo Bruni authored
Note: OutOfLineRecordWrite on arm/arm64 only takes "object" and "value" as arguments. The currently can be the same and thus we don't add any additional DHCECKs there. Change-Id: I757d1f3ba9c0d0c5994ecedf26728454e32f41a5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2916813 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#74758}
-
- 24 May, 2021 1 commit
-
-
Liu Yu authored
In WasmCapiCallWrappers, the address is passed in a register instead of as an immediate, so we reduced 3 instructions to load the address to t9; before: lui + ori + dsll + ori; after: mov; Port: 54d84cf3 Bug: v8:11774 Change-Id: I423e54216ff65f1c12128c2b26443e1838b68003 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2914771 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/master@{#74720}
-
- 19 May, 2021 1 commit
-
-
Camillo Bruni authored
Inline the RememberedSetAction and SaveFPMode flags directly into the RecordWrite stubs: - Save two register for input arguments - Avoid branches in the RecordWrite stubs We end up with 2 stubs for the EphemeronKeyBarrier and 4 stubs for RecordWrite. Due to more inlined calls we have roughly 1KiB more builtins code for RecordWrite currently. We will address this in the future by splitting out common code into a separate stub. There is no additional code size overhead for EphemeronKeyBarrier. This saves 4 to 8 bytes on x64 per RecordWrite call and 2.5% sparkplug code size reduction on d3.min.js. Bug: v8:11420 Change-Id: Ib7170265dd6dd4b3aaf8275083f096e76fae8251 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2902731Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#74661}
-
- 13 May, 2021 2 commits
-
-
Liu Yu authored
OutputRegister does not always exist, so we add a TempRegister to store the comparison result. Change-Id: I47b2500c28be85a66cab1de669ed62401f878e1a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2885475 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/master@{#74554}
-
Liu Yu authored
Port: d3d4a896 Bug: v8:11420 Change-Id: I016981f83f347a1bafae9a72882b634a69b86c64 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2894002 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/master@{#74552}
-
- 11 May, 2021 1 commit
-
-
Camillo Bruni authored
Convert StoreOrigin, TypeOfMode, SaveFPRegsMode and ArgvMode to enum classes with k-prefixed values. Change-Id: Ib6ca3a9995297e8303a7e013b1d829613c0db510 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2885042Reviewed-by:
Maya Lekova <mslekova@chromium.org> Reviewed-by:
Mythri Alle <mythria@chromium.org> Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#74497}
-
- 10 May, 2021 3 commits
-
-
Camillo Bruni authored
- Share RemeberedSetAction and SmiCheck enums between all platforms. - Convert to enum classes with k-prefixed values Bug: v8:11420 Change-Id: Ib265a229f12a850ea866fd01d8022cbae5e1a9d8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2885040Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#74489}
-
Liu Yu authored
Besides, move the comparison of sp and input in kArchStackPointerGreaterThan to AssembleArchInstruction from AssembleBranchToLabels. Change-Id: Id2715ce89c673d16c94f1d9d7736644983c64248 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2882856 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/master@{#74462}
-
Liu Yu authored
The input load from the memory has redundant bits, so it needs to be extracted with an offset; But the input of InputRegister does not need the offset. Change-Id: Iea6e9bce981ca8a2d1ee55b10a5c5ff3c205357f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2881383Reviewed-by:
Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Auto-Submit: Liu yu <liuyu@loongson.cn> Cr-Commit-Position: refs/heads/master@{#74454}
-
- 04 May, 2021 1 commit
-
-
Clemens Backes authored
cpplint rules change over time, and we change the exact rules we enable for v8. This CL removes NOLINT annotations which are not needed according to the currently enabled rules. R=mslekova@chromium.org Bug: v8:11717 Change-Id: Ib7dc2c9dbb1710f4fe47e083df7e373e8b8aef27 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2859956Reviewed-by:
Maya Lekova <mslekova@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#74353}
-