- 18 Aug, 2020 1 commit
-
-
Andreas Haas authored
On arm, the root register points into the middle of the roots array to allow to use the full int12_t offset range. Therefore some offsets into the root array are negative. This CL changes the liftoff assembler for arm to allow loads from negative offsets. On arm64, offsets can also be negative when pointer compression is disabled. Additionally this CL changes the signature of LiftoffAssembler::LoadTaggedPointer from uint32_t to int32_t to allow the LiftoffCompiler to provide negative indices. This CL does not come with a separate test yet. However, this changes is needed for https://crrev.com/c/2352784. Where there will also be a test. R=thibaudm@chromium.org Bug: v8:7581 Change-Id: I0a97a62ff8e934d45a4494adfbc74a3e1149c8c1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2359429Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#69453}
-
- 04 Aug, 2020 1 commit
-
-
Ng Zhi An authored
Swizzles are shuffles that only use values from 1 operand, e.g. v8x16.shuffle 0 1 2 3 0 0 0 0 4 5 6 7 0 0 0 0 (all the values are < 16). Match such patterns and emit an optimized codegen that uses less registers and instructions. Only implemented for x64 for now, the other backends will come in follow-up patches. Bug: v8:10696 Change-Id: Iffa694b04c97313eab7d138e4bdad7c0c85cda89 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2335419Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#69231}
-
- 28 Jul, 2020 1 commit
-
-
Zhao Jiazhong authored
Port b64cede5 https://crrev.com/c/2289970 Port 5de28709 https://crrev.com/c/2316304 Change-Id: Ia4e24558b10adef196ab167137a9a5b6db98754b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2321950Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#69089}
-
- 23 Jul, 2020 1 commit
-
-
Clemens Backes authored
cmov is often much faster than branches (in particular if the branches cannot be predicted). It also has a much more predictable performance, and is shorter. This CL uses cmov on x64 for now. Other platforms (maybe using other instructions than cmov) can be added later. R=thibaudm@chromium.org Bug: v8:10740 Change-Id: Ifab3d570b8eea784376e1f768d6ba3828efcc01a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2315978Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#69027}
-
- 15 Jul, 2020 1 commit
-
-
Zhao Jiazhong authored
Port d0e6ff15 https://crrev.com/c/2285149 Port 34871edd https://crrev.com/c/2284212 Port dc82799d https://crrev.com/c/2290623 Change-Id: I8cceface23368dafc6a029edaa7c6a125a0760ed Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2291306 Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Reviewed-by: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68856}
-
- 14 Jul, 2020 1 commit
-
-
Zhao Jiazhong authored
The Sw/Sd in FillStackSlotsWithZero should't use kSystemPointerSize as address offset, because the start address should be inclusive, and the end address should be exclusive. The skip-stack-guard-page test case failed due to this bug, and besides, it also needs larger stack size on mips simulator. Change-Id: Ieff55fe2c5a13e6dad1c5d073e1c0d22fe789d41 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2282663 Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#68834}
-
- 29 Jun, 2020 1 commit
-
-
Zhao Jiazhong authored
Port 2332ebd8 https://crrev.com/c/2264099 Original Commit Message: - Add a separate function to load return slots, instead of encoding this in the offset, - Add fast path for single return. Change-Id: I065c35b95dbc6546387ea54d298bb5765bc342cd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2269456Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#68569}
-
- 08 Jun, 2020 1 commit
-
-
Zhao Jiazhong authored
Port df2ab0f0 https://crrev.com/c/2219688 Change-Id: I5183d883a8bc34723efadde4782301f205273bb6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2233436Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#68224}
-
- 03 Jun, 2020 1 commit
-
-
Zhao Jiazhong authored
Port aa5bcc09 https://crrev.com/c/2225090 Change-Id: Ib3b159ebcee0d4da5ce003b08d02cd36b7218016 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2228097Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#68138}
-
- 01 Jun, 2020 1 commit
-
-
Zhao Jiazhong authored
Port b3799538 https://crrev.com/c/2220446 Change-Id: I5de86c0aaf0f9262fd9cd63078c75c0013f5c962 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2223886Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#68088}
-
- 29 May, 2020 1 commit
-
-
Zhao Jiazhong authored
port 0f624aae https://crrev.com/c/2208686 port 839e9695 https://crrev.com/c/2208610 port 51847be8 https://crrev.com/c/2216930 Change-Id: I11046631b575a521d11c17ea5c418bfc7d900e8a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2219749Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#68068}
-
- 28 May, 2020 1 commit
-
-
Zhao Jiazhong authored
Port 6b228044 https://crrev.com/c/2209268 Port e505ce95 https://crrev.com/c/2207664 Change-Id: I29fb541a998f7b75eeecc91d48143f023e83214f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2217536Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#68035}
-
- 18 May, 2020 4 commits
-
-
Richard Stotz authored
Bug: v8:10520 Change-Id: Iad8d35e58b766a9e4d3013f90fd4d7fb68708fa7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2201577 Commit-Queue: Richard Stotz <rstz@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67866}
-
Richard Stotz authored
Bug: v8:10520 Change-Id: Id06c35f8004519cd778af12ad67aaee2d506609a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2207135 Commit-Queue: Richard Stotz <rstz@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67863}
-
Richard Stotz authored
Bug: v8:10520 Change-Id: I0b4867d9b705058536b0f4640a9a87059db3aca7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2201576 Commit-Queue: Richard Stotz <rstz@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67858}
-
Zhao Jiazhong authored
Port 0ba8b716 https://crrev.com/c/2202356 Port 67a337b5 https://crrev.com/c/2202718 Port 99e4ef48 https://crrev.com/c/2202722 Change-Id: I435c9859b9ef341682814bb989fe91ba8cae3d86 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2203896Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67849}
-
- 15 May, 2020 3 commits
-
-
Richard Stotz authored
Bug: v8:10520 Change-Id: Ief1c2565168529f618fe55feacccc66d8d05376a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2196351 Commit-Queue: Richard Stotz <rstz@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67824}
-
Andreas Haas authored
This CL removes the default parameter of GetUnusedRegister to avoid bugs where the default parameter is used accidentially. With "{}" the default value of the parameter is easy to write, and also not much more difficult to read. R=clemensb@chromium.org Bug: v8:10506 Change-Id: I3debe5eb91578c82abdac81dc6c252435fdf30d6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202991Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67822}
-
Zhao Jiazhong authored
Port 99a361ee https://crrev.com/c/2198456 Change-Id: I5a1b4085de9e41ce122eef12aaaeb3c3c038d27c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2203369Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67819}
-
- 13 May, 2020 2 commits
-
-
Zhao Jiazhong authored
Port 91cbf3e3 https://crrev.com/c/2171475 Change-Id: I09e24f7da0449fa891633794bc3a8ef639352eeb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2198862Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67782}
-
Zhao Jiazhong authored
Port b931af5d https://crrev.com/c/2190423 Change-Id: I9d5eeae078604e1bd5241afea14f169f45711ce3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2198056Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67781}
-
- 11 May, 2020 1 commit
-
-
Clemens Backes authored
Also, rename the WASM_COMPILED frame type to just WASM. R=jkummerow@chromium.org Bug: v8:10389 Change-Id: I71f16f41a69f8b0295ba34bd7d7fad71729546f2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2187613 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#67698}
-
- 08 May, 2020 1 commit
-
-
Zhao Jiazhong authored
Port ac33b533 https://crrev.com/c/2179384 Change-Id: Icfbeab2cd7556b98f84bc7c9e65d82dc18700c85 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2190072Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67668}
-
- 29 Apr, 2020 3 commits
-
-
Ng Zhi An authored
Tweak the register allocation logic in liftoff-compiler.cc. If we reuse src1 or src2 for dst, it complicates the logic in the codegen significantly. We will need to check which operand dst is equals to, back it up, then make sure the mask ends up in dst (since thats how vbsl and bsl works, the first operand holds the mask and is overwritten). By tweaking the allocation logic, no code gen is required for the other backends. Bug: v8:9909 Change-Id: I17843322508b18247c91e5959cf1b996b7f6a61d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2171468 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#67481}
-
Zhao Jiazhong authored
Port 22242cb1 https://crrev.com/c/2169026 Change-Id: I76f8639d4d939924db13e69eb366ac064eef447c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2172364Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67469}
-
Zhao Jiazhong authored
We don't have mips32 CPU or 32-bits OS, so we are not going to implement these functions on mips32. Change-Id: Ie37e5cea360526a82bbbc52ec3933d74c32fea6d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2167741Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67465}
-
- 28 Apr, 2020 2 commits
-
-
Zhao Jiazhong authored
Port 97a4b795 https://crrev.com/c/2162366 Port f8be9948 https://crrev.com/c/2166959 Change-Id: Id0cebfe0761ff75fb95c9ceacf95e53fee12eb73 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2168978Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67434}
-
Zhao Jiazhong authored
Due to lack of testing environment before, there are some bugs in the implementations of wasm-simd on mips64 platform, this CL fix them according to the test on Loongson 3A4000. Change-Id: I59ab6315987fc94a06cf0bf23754f5c593879532 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2162416 Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Reviewed-by: Zhi An Ng <zhin@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#67413}
-
- 24 Apr, 2020 1 commit
-
-
Zhao Jiazhong authored
Port c47d1631 https://crrev.com/c/2158925 Change-Id: Ib1c494c93acfb5d19890427e6ea73202915675df Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2162415Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67359}
-
- 22 Apr, 2020 1 commit
-
-
Zhao Jiazhong authored
Port 9f41a584 https://crrev.com/c/2151999 Change-Id: I58b02bebe3802a4c4a66df331913a742a083de9f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2160688Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67325}
-
- 21 Apr, 2020 2 commits
-
-
Zhao Jiazhong authored
Port 6f7b4c7f https://crrev.com/c/2154330 Change-Id: I1788a3f6ca30bb684efa182f5e4e40bb3052c052 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2156711Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67272}
-
Yu Yin authored
Port several CLs recorded in bug 9909. We test this on 3A4000, and find many issues in MSA implement, but they are not related with this patch, will fix in another CL. Looks like there is no 32-bit os for 3a4000, so we do not implements s128 for mips32. Bug: v8:9909 Change-Id: Iad7569ebb92904bae66d420c8306cde24afb034a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2147575 Commit-Queue: Yu Yin <xwafish@gmail.com> Reviewed-by: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#67259}
-
- 20 Apr, 2020 1 commit
-
-
Zhao Jiazhong authored
Port 1d8f1376 https://crrev.com/c/2154048 Change-Id: I7237e784d86cd78e936741a47887c2efe731cbbb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2156165Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67221}
-
- 17 Apr, 2020 2 commits
-
-
Zhao Jiazhong authored
Port 8ef2f799 https://crrev.com/c/2150157 Change-Id: I70ffb8e0c669398339eb6e794bef2b7920b58cd3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2153194Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67199}
-
Zhao Jiazhong authored
Port fc29c453 https://crrev.com/c/2148640 Change-Id: I75092072ac6961c26559bd69d6a8413d2e9d2689 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2153189Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67192}
-
- 16 Apr, 2020 2 commits
-
-
Andreas Haas authored
The existing interface assumed that for atomic binop instructions, the value register and the result register are the same. However, for x64, this assumption is not always useful, and for platforms like arm, this assumption is even negative. The existing interface was originally introduced because ia32 lacks registers, and we wanted to avoid platform-specific code in liftoff-compiler.cc. However, by now the lack of registers on ia32 required us to use platform-specific code also in other places, so we can also use it for atomic binops and thereby enable a better code generation. R=clemensb@chromium.org Bug: v8:10108 Change-Id: If39cc5f49934422b632bb2a5793c7f5d5d2b65c0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2150585Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67173}
-
Zhao Jiazhong authored
Port ad55fa63 https://crrev.com/c/2147148 Change-Id: I5375ae4bddb2221c6f7860e55111c95beeed757d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2152069Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67165}
-
- 15 Apr, 2020 2 commits
-
-
Zhao Jiazhong authored
Port 325e3290 https://crrev.com/c/2147594 Change-Id: If453f75dbf632d84817eca254d0b31e095d5bebb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2147590Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67142}
-
Zhao Jiazhong authored
Port 4558c1df https://crrev.com/c/2141654 Original Commit Message: As a drive-by, the order of rounding_average_u is adjusted according to src/wasm/wasm-opcodes.h. Change-Id: Ia2d39753f618f10e0795f83daa7e5a63f49f554a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2147578Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67136}
-
- 14 Apr, 2020 1 commit
-
-
Zhao Jiazhong authored
Port c054847d https://crrev.com/c/2131323 Change-Id: I21e534399eed573affd3bf65004b3e570c549ff4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2147573Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67105}
-