- 01 Jul, 2020 1 commit
-
-
Zhao Jiazhong authored
Port ef1d6a3b https://crrev.com/c/2227257 Change-Id: Id829db611fdfd475462efec2aa0ab6f94d3ddce3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2251680 Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#68625}
-
- 30 Jun, 2020 1 commit
-
-
Zhao Jiazhong authored
On mips platform, call operations may be followed by trampolines, which leading to wrong information of the call instr's location in safepoint. This CL fix it by adding a last_call_pc_ to record the location. Besides, this CL also fix a bind operation in CheckTrampolinePool, which may try to use trampoline before it's emission. Change-Id: Ic0cbdb93afffa60a7389ee8177c381087fcaf52e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2095645 Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#68600}
-
- 05 Jun, 2020 1 commit
-
-
Yu Yin authored
All these functions need to do is just write the value to the memory, but EmitHelper will do something more than this, EmitHelper will check if it need generate trampoline code while code generating and it will insert trampoline code at current pc offset, this means there maybe have trampoline code between two consecutive dd()'s target memory(pc), this is not we want. Change-Id: I5537f133be78aabdc4d53d4de07f388fa50f4a64 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2224963 Commit-Queue: Yu Yin <xwafish@gmail.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68188}
-
- 20 May, 2020 1 commit
-
-
Bill Budge authored
This is a reland of 4482f988 It's identical to the original CL so .. TBR=jgruber@chromium.org,tebbi@chromium.org Original change's description: > [torque] Port builtins-number-gen to Torque > > - Ports everything except Add. > > Builtins generated from this CL are slightly larger, e.g. Subtract > is 424 bytes on x64, as opposed to 400 bytes for the CSA version. > See https://crbug.com/v8/10521 > > Bug: v8:9891 > > Change-Id: Id85779eb26d8e51643d8a04f0a75090bc50ef5b2 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2191644 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#67910} Bug: v8:9891 Change-Id: I910c95db7bc044b2457364f4bfbbca46f0745bb9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2209265 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#67926}
-
- 19 May, 2020 3 commits
-
-
Bill Budge authored
This reverts commit 4482f988. Reason for revert: Causes Torque to break UBSAN https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20UBSan/11235? [764/2199] ACTION //:run_torque(//build/toolchain/linux:clang_x64) FAILED: gen/torque-generated/bit-fields-tq.h gen/torque-generated/builtin-definitions-tq.h gen/torqu...(too long) python ../../tools/run.py ./torque -o gen/torque-generated -v8-root ../.. src/builtins/array-copywit...(too long) ../../src/torque/implementation-visitor.cc:778:36: runtime error: 2.14748e+09 is outside the range of representable values of type 'int' Original change's description: > [torque] Port builtins-number-gen to Torque > > - Ports everything except Add. > > Builtins generated from this CL are slightly larger, e.g. Subtract > is 424 bytes on x64, as opposed to 400 bytes for the CSA version. > See https://crbug.com/v8/10521 > > Bug: v8:9891 > > Change-Id: Id85779eb26d8e51643d8a04f0a75090bc50ef5b2 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2191644 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#67910} TBR=bbudge@chromium.org,jgruber@chromium.org,tebbi@chromium.org Change-Id: Ib124c893753973243563e32c25bc727a5df2ca53 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9891 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2209264Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#67911}
-
Bill Budge authored
- Ports everything except Add. Builtins generated from this CL are slightly larger, e.g. Subtract is 424 bytes on x64, as opposed to 400 bytes for the CSA version. See https://crbug.com/v8/10521 Bug: v8:9891 Change-Id: Id85779eb26d8e51643d8a04f0a75090bc50ef5b2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2191644 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#67910}
-
Jakob Gruber authored
Call_WithFeedback CallWithArrayLike_WithFeedback CallWithSpread_WithFeedback ConstructWithArrayLike_WithFeedback ConstructWithSpread_WithFeedback These are used in generic lowering if --turbo-nci is passed. Bug: v8:8888 Change-Id: I78b56a1f358fa7c213e375eeb2feaa65432adfdb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2199352Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#67888}
-
- 13 May, 2020 2 commits
-
-
Bill Budge authored
- Rewrites the following builtins using Torque: WasmAtomicNotify WasmI32AtomicWait64 WasmI64AtomicWait64 WasmAllocateStruct - Adds some helper builtins to reduce the size of the Atomics builtins. These do multiple conversions and CSA inlines all of this code. As these are runtime calls, the call overhead should be negligible. WasmInt32ToNumber WasmUint32ToNumber Change-Id: Ie15e15a965dc383c54ae50164d83bce211178888 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2176895Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#67785}
-
Dan Elphick authored
BasicMemoryChunk will become the base class for ReadOnlySpace pages which won't be MemoryChunks. Since ReadOnlySpace pages don't participate in GC they don't need slot_set_. Also some references to BasicMemoryChunk fields that were still prefixed with MemoryChunk:: Bug: v8:10454 Change-Id: If8ce40c7ee72d1617d2a1161ad9d4b7929f8a8e7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2198988 Auto-Submit: Dan Elphick <delphick@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#67774}
-
- 06 May, 2020 1 commit
-
-
Jakob Gruber authored
These will be used by ic-collecting builtins called from both bytecode handlers and js-generic-lowering. For now only x64 is implemented. Bug: v8:8888 Change-Id: I12a21b40061b7cb6c9b3cbad6134e7457a6cfa44 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2184237 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#67611}
-
- 05 May, 2020 1 commit
-
-
Dan Elphick authored
Also makes memory-chunk.h accessible from outside heap which allows removal of some heap-inl.h includes. Bug: v8:10473, v8:10496 Change-Id: Iec4fc5ce8ad201f6ee5fd924cc3cd935324429fc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2172088 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Auto-Submit: Dan Elphick <delphick@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#67551}
-
- 28 Apr, 2020 1 commit
-
-
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}
-
- 21 Apr, 2020 1 commit
-
-
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}
-
- 16 Apr, 2020 1 commit
-
-
Bill Budge authored
- Adds kFPReturnRegister0 for all platforms. - Reworks linkage.cc to assign return registers to the proper register type, using the new FP return register. Bug: v8:10070 Change-Id: I5c876d248de9b825a1c80847ab134881dcda6f04 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2107510Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#67183}
-
- 19 Mar, 2020 1 commit
-
-
Emanuel Ziegler authored
Ported changes from the following CLs to mips/mips64: - https://chromium-review.googlesource.com/c/v8/v8/+/2066964 - https://chromium-review.googlesource.com/c/v8/v8/+/2071866 - https://chromium-review.googlesource.com/c/v8/v8/+/2080242 This change is needed for profiling of Wasm code that calls C-function to ignore the C-stack above the Wasm stack that otherwise couldn't be parsed otherwise. Bug: chromium:1045860 Change-Id: Ifdce5be6c5373714a67b3ce8d8c4f0a18f63b6fa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2082566Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Emanuel Ziegler <ecmziegler@chromium.org> Cr-Commit-Position: refs/heads/master@{#66785}
-
- 17 Mar, 2020 1 commit
-
-
Georgia Kouveli authored
Generate a BTI instruction at each target of an indirect branch (BR/BLR). An indirect branch that doesn't jump to a BTI instruction will generate an exception on a BTI-enabled core. On cores that do not support the BTI extension, the BTI instruction is a NOP. Targets of indirect branch instructions include, among other things, function entrypoints, exception handlers and jump tables. Lazy deopt exits can potentially be reached through an indirect branch when an exception is thrown, so they also get an additional BTI instruction. Bug: v8:10026 Change-Id: I0ebf51071f1b604f60f524096e013dfd64fcd7ff Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1967315 Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66751}
-
- 06 Mar, 2020 1 commit
-
-
Zhao Jiazhong authored
Port 7ad6b04e https://crrev.com/c/2080362 Change-Id: Iac305bf76c5a602bd238310fed0828e5ea95cd0c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2084323Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#66609}
-
- 10 Feb, 2020 1 commit
-
-
Pierre Langlois authored
Each assembler has it's own way to place breakpoints: - stop() for arm, mips*, ppc* and s390. - debug() for arm64. - int3() for ia32 and x64. We can mandate a macro-assembler `DebugBreak()` method that all should implement so one can place a breakpoint in a portable way using a macro-assembler. This way also assemblers are in line with TurboFan, CSA, Torque and Liftoff which all have a DebugBreak() facility. Change-Id: Ic4332bd19ca4db53e01441d54af6632c2c1189f1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2020954Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Cr-Commit-Position: refs/heads/master@{#66198}
-
- 10 Jan, 2020 2 commits
-
-
Seth Brenith authored
This change moves the definitions of the bitfield flags used by Symbol and Map to Torque. Symbol could directly follow the pattern established by SharedFunctionInfo, but Map required some other changes: - Until now, Torque bitfield definitions have required unsigned types. I thought that this would be the least-surprising behavior, since we never sign-extend when decoding bitfield values. However, I believe that the amount of churn involved in making ElementsKind be unsigned outweighs the benefit we were getting from this restriction (and similar difficulties are likely to arise in converting other bitfield structs to Torque), so this CL updates Torque to allow signed bitfield values. - If we try to make Map extend from all of the generated classes that define its flags, we end up with class sizing problems because some compilers only apply empty base class optimization to the first in a row of empty base classes. We could work around this issue by generating macros instead of classes, but I took this as an opportunity for a minor clean-up instead: rather than having bitfield definitions for several different bitfield structs all jumbled together in Map, they can be split up. I think this makes the code a little easier to follow, but if others disagree I'm happy to implement macro generation instead. Change-Id: Ibf339b0be97f72d740bf1daa8300b471912faeba Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1988934Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#65701}
-
Zhao Jiazhong authored
Bug: v8:8974 Change-Id: Ib1e1c84b79190359d5ad519509b881e93d519604 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1989323 Commit-Queue: Clemens Backes <clemensb@chromium.org> Auto-Submit: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#65697}
-
- 22 Nov, 2019 1 commit
-
-
Zhao Jiazhong authored
The previous implementation incorrectly used instructions for 32-bit data, this CL fixes it to implement 64-bit operations. Change-Id: Ib8e5236ea35f3a2c0e37e647ea89aad6a1127425 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1928501 Auto-Submit: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#65123}
-
- 14 Nov, 2019 2 commits
-
-
Clemens Backes authored
In Liftoff, we have a good estimate about how big the generated code might get. Also, we often compile hundreds of functions which each hold an assembler buffer alive until we finally add that code to the wasm module. In order to reduce memory consumption in Liftoff, this CL reduces {AssemblerBase::kMinimalBufferSize} from 4096 to 128, and adds {AssemblerBase::kDefaultBufferSize} to be used instead. R=jkummerow@chromium.org Change-Id: I7029bf501244770f4824a86b233d7f99c4b7910b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1914559Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64958}
-
Clemens Backes authored
Register currently has several methods twice: Once for regular {Register} objects, once for constexpr registers or register codes. It was implemented this way so that the non-constexpr code can include DCHECKs. With C++14, we can add these DCHECKs also in the constexpr methods. Thus the redundant implementation can be skipped. R=tebbi@chromium.org Bug: v8:9810 Change-Id: Ifc6253d4cd04b19be9bca47495186849118ad6b8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1910958Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64953}
-
- 13 Nov, 2019 1 commit
-
-
Clemens Backes authored
The gap is chosen unneccessarily large, leading to too early growing of the assembler buffer. R=mstarzinger@chromium.org Change-Id: I9ddbe1d59929f2a76511cbc2d18c054fb8eafa74 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1914213Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64939}
-
- 08 Nov, 2019 1 commit
-
-
Michael Starzinger authored
This removes the support to emit runtime calls in Liftoff code and uses WebAssembly runtime stubs instead. Calls to such stubs are smaller and more efficient. They also use embedded builtins directly instead of the on-heap {Code} object trampolines. This also removes the last use of a runtime call that passes a dynamically loaded CEntry builtin from the macro assembler. R=clemensb@chromium.org Change-Id: I9fa9f3b7a2b66cb76a677b70ce3cee49cb340f0f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1903443 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64855}
-
- 05 Nov, 2019 2 commits
-
-
Zhao Jiazhong authored
port 352bbb12 https://crrev.com/c/1893192 Original Commit Message: Reland "Reland: [builtins] Move non-JS linkage builtins code objects into RO_SPACE" This is a reland of 855591a5 Fixes break in builds that verify ReadOnlyHeap by relaxing the requirement for Code objects to be in CODE_SPACE in PagedSpaceObjectIterator::FromCurrentPage. Original change's description: > Reland: [builtins] Move non-JS linkage builtins code objects into RO_SPACE > > Reland of https://chromium-review.googlesource.com/c/v8/v8/+/1795358. > > [builtins] Move non-JS linkage builtins code objects into RO_SPACE > > Creates an allow-list of builtins that can still go in code_space > including all TFJ builtins and a small manual list that should be pared > down in the future. > > For builtins that go in RO_SPACE a Code object is created that contains an > immediate trap instruction. Generally these Code objects are still no > smaller than CODE_SPACE Code objects because of the Code object alignment > requirements. This will hopefully be addressed in a follow-up CL either by > relaxing them or removing the instruction stream completely. > > In the snapshot, this reduces code_space from ~152k to ~40k (-112k) and > increases by the same amount. > > Change-Id: I76661c35c7ea5866c1fb16e87e87122b3e3ca0ce > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1893336 > Commit-Queue: Dan Elphick <delphick@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64700} Change-Id: I58c10e438f164a992041960f7a54d57be500ef48 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1898831 Auto-Submit: Zhao Jiazhong <kyslie3100@gmail.com> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#64776}
-
Zhao Jiazhong authored
port 46648402 https://crrev.com/c/1871605 Original Commit Message: CallDebugOnFunctionCall was always using Registers and not Immediates. Then ParameterCount is not really needed. Since updating that, we could update other functions, e.g InvokeFunction, to only use registers too. Also removed now irrelevant variables, e.g definitely_mismatches. [mips][codegen] Removed ParameterCount class port 1e696896 https://crrev.com/c/1886916 Original Commit Message: It was used only with Register inputs, so we can replace its uses with the Registers themselves. Change-Id: I0a661519f5602bf4d52c40c6c238436b93b71664 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1898826Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64753}
-
- 30 Oct, 2019 1 commit
-
-
Zhao Jiazhong authored
Port 1e4bb087 https://crrev.com/c/1826728 Change-Id: If977914ef55eb65228f92fecd1c9e9d0f625fa2b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1886716Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#64628}
-
- 22 Oct, 2019 2 commits
-
-
Mu Tao authored
Port 3cad6bf5 Original Commit Message: This is a reland of c7c47c68. This makes TSAN happy in addition to: Previously I presumed that the context read from a frame in the profiler was a valid context. Turns out that on non-intel we're not guaranteed that the frame is properly set up. In the case we looked at, the profiler took a sample right before writing the frame marker indicating a builtin frame, causing the "context" pointer from that frame to be a bytecode array. Since we'll read random garbage on the stack as a possible context pointer, I made the code reading the native context from it a little more defensive. Bug: v8:9860 Tbr: ulan@chromium.org, neis@chromium.org, ishell@chromium.org Original change's description: > [runtime] Move Context::native_context to the map > > Remove the native context slot from contexts by making context maps > native-context-specific. Now we require 2 loads to go from a context to the > native context, but we have 1 field fewer to store when creating contexts. > > Change-Id: I3c0d7c50c94060c4129db684f46a567de6f30e8d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1859629 > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Maya Lekova <mslekova@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64296} R=xwafish@gmail.com Change-Id: I6496a8c5be8cbabf48cddc2d59111410f31eb75f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1868774 Auto-Submit: Mu Tao <pamilty@gmail.com> Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#64486}
-
Jakob Gruber authored
This CL removes the V8_EMBEDDED_BUILTINS define, FLAG_embedded_builtins, and all code for supporting non-embedded-builtin builds. Bug: v8:6666,v8:8519 Change-Id: I2ad7bd6614c7cd404b83d3d2bf5ff91d7b55ff2a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1866569 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#64461}
-
- 26 Sep, 2019 1 commit
-
-
Yu Yin authored
on mips, we should use t9 when jump to a ExternalReference, because the callee function will consider t9 as the function start address. Change-Id: I56e2bf073fd24b2f3434dfd255d48264bfd0b2cd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1826417 Auto-Submit: Yu Yin <xwafish@gmail.com> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#63988}
-
- 25 Sep, 2019 1 commit
-
-
Yu Yin authored
Port 12a9ee3a Original Commit Message: 32 bit Smis are incompatible with pointer compression so we land disable them before enabling pointer compression in order to separate memory and performance regressions caused by 31 bit Smis from pointer compression change. Change-Id: I19647f18e7feafc6ca5b922c73785839ab528421 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1824306Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Yu Yin <xwafish@gmail.com> Cr-Commit-Position: refs/heads/master@{#63960}
-
- 16 Sep, 2019 1 commit
-
-
Victor Gomes authored
Uses templates to dispath the allocation flag statically. Bug: v8:9714 Change-Id: I1998ae47be2f7d872d34b3bc2390d01cbfad6afa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1801848 Auto-Submit: Victor Gomes <victorgomes@google.com> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#63783}
-
- 13 Sep, 2019 1 commit
-
-
Clemens Hammacher authored
After https://crrev.com/c/1800575 and https://crrev.com/c/1803343, which tried to fix this on occuring compile errors, this CL systematically adds the <memory> include to each header that uses {std::unique_ptr}. R=sigurds@chromium.org TBR=mlippautz@chromium.org,alph@chromium.org,rmcilroy@chromium.org,verwaest@chromium.org Bug: v8:9396 Change-Id: If7f9c3140842f9543135dddd7344c0f357999da0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1803349Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#63767}
-
- 10 Sep, 2019 2 commits
-
-
Rong Wang authored
This CL is necessary for disabling write-barriers that involoves referencing pages via address arithmetic, which is required from third-party heap implementation. Change-Id: I1d3f572d48015e5c8cf691b2dc71a32834621c2f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1781008Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#63644}
-
Mu Tao authored
Fix build errors introduced by commit af063685 Change-Id: I467ea39f020d07bed00875f69152191b94029dd1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1794327 Auto-Submit: Mu Tao <pamilty@gmail.com> Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#63633}
-
- 09 Sep, 2019 1 commit
-
-
Bill Budge authored
Bug: v8:9429 Change-Id: I13780eab38230ea62334485e10a5fa4dbb432e90 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1789395 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#63622}
-
- 02 Sep, 2019 1 commit
-
-
Mu Tao authored
Port 213504b9 Original Commit Message: The code fields in a JSRegExp object now either contain irregexp compiled code or a trampoline to the interpreter. This way the code can be executed without explicitly checking if the regexp shall be interpreted or executed natively. In case of interpreted regexp the generated bytecode is now stored in its own fields instead of the code fields for Latin1 and UC16 respectively. The signatures of the jitted irregexp match and the regexp interpreter have been equalized. Change-Id: I843b11cfdd9ecbb38f03706bcb86a5cfcbf69050 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1778083 Auto-Submit: Mu Tao <pamilty@gmail.com> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#63490}
-
- 05 Aug, 2019 1 commit
-
-
Mu Tao authored
Building cctest has linking error when gn's args has "is_component_build = true". This CL make the visibility of "MemOperand" and "UseScratchRegisterScope" from "hidden" to "default" to solve this problem. Change-Id: I3ebfaa25d598b4f2d626861b947c93d111d95456 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1731213 Auto-Submit: Mu Tao <pamilty@gmail.com> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#63062}
-
- 01 Aug, 2019 1 commit
-
-
Rong Wang authored
The mode without write barriers works only if incremental marking is disabled and the single generation mode is enabled. Bug: v8:9533 Change-Id: Iecf83b0810f757c9b50e7fb338a2905af938f1d8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1716471 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#63033}
-