- 30 Oct, 2018 1 commit
-
-
Ivica Bogosavljevic authored
MIPS32r2 doesn't have load-linked/store-conditional instructions that work with 64-bit values and these are now implemented through runtime. TEST=mjsunit/wasm/compare-exchange64-stress Change-Id: I70d8a454dcbbdac6f30e30ec3ac0eb4d429ef62e Reviewed-on: https://chromium-review.googlesource.com/c/1296211 Commit-Queue: Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57138}
-
- 25 Oct, 2018 1 commit
-
-
Michael Starzinger authored
This adds support for having reference type values (i.e. anyref) stored in an exception. It is the natural combination of the reference type proposal and the exception handling proposal. Note that this also introduces support for having write barriers in generated WasmCode, as this is the first time we are storing references within generated code. Such write barriers will be needed for other uses of reference types (e.g. mutable global) regardless. R=clemensh@chromium.org TEST=mjsunit/wasm/exceptions-anyref BUG=v8:8341 Change-Id: I1211d4a850954622cb873eede0b4024fecc3dd8b Reviewed-on: https://chromium-review.googlesource.com/c/1296484 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#56995}
-
- 24 Oct, 2018 1 commit
-
-
Michael Starzinger authored
R=ulan@chromium.org BUG=v8:8238 Change-Id: Idf6b3d4035b392dd1b20ff3e4cbdb60cdaada054 Reviewed-on: https://chromium-review.googlesource.com/c/1297325Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56951}
-
- 10 Oct, 2018 1 commit
-
-
Ben L. Titzer authored
This CL refactors the implementation of WASM->JS import wrappers in order to make the wrapper code shareable. Instead of specializing to the import index, we use a tuple as the object ref in the both the import and indirect tables. The tuple allows the wrapper code to load both the calling instance and the target callable, rather than relying on code specialization. This requires some tricky codegen machinery, because WASM call descriptors expect an instance argument in a given register, yet the wrappers receive a tuple, the code generator must generate a prologue that loads the instance (and the callable), since it is not possible to express this at the graph level. R=mstarzinger@chromium.org CC=clemensh@chromium.org Change-Id: Id67e307f7f5089e776f5439a53b5aee4b76934b6 Reviewed-on: https://chromium-review.googlesource.com/c/1268237 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56520}
-
- 04 Oct, 2018 1 commit
-
-
Sreten Kovacevic authored
AtomicPair operations are only available with some instructions introduced in version R6. Add support for needed instructions. Change-Id: I808d6ed5b5efafd638846ec599941ebc71d90e23 Reviewed-on: https://chromium-review.googlesource.com/c/1251526Reviewed-by:
Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Reviewed-by:
Ben Titzer <titzer@chromium.org> Commit-Queue: Sreten Kovacevic <skovacevic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#56379}
-
- 20 Sep, 2018 2 commits
-
-
Sreten Kovacevic authored
Port fef047a4 Original commit message: `This CL implements the following design doc: https://docs.google.com/document/d/1h5kdfemMQMpUd15PSKW1lqikJW5hsGwrmOvoqhGFRts/edit?ts=5b978756#heading=h.urs7r34mx9p ` Change-Id: Ib34a2e18c56bc7ccf3cbfa0f1baa07dcc8ed0cd4 Reviewed-on: https://chromium-review.googlesource.com/1235974Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Sreten Kovacevic <skovacevic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#56097}
-
Igor Sheludko authored
and introduce RootsTable - a V8 heap roots storage. So, the renaming part looks like this: Heap::RootListIndex -> RootIndex Heap::kBlahBlahRootIndex -> RootIndex::kBlahBlah Bug: v8:8015, v8:8182 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I38e1f3e3f6813ef35e37b0bed35e9ae14a62134f Reviewed-on: https://chromium-review.googlesource.com/1234613Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#56067}
-
- 15 Aug, 2018 1 commit
-
-
Ivica Bogosavljevic authored
Fix 5fecd146 Word32ReverseBytes and Word64ReverseBytes are mandatory so their definition is removed from list of optional operators in InstructionSelector::SupportedMachineOperatorFlags Change-Id: I997fca1da6fcb69d1d6190a5ff68f3ff1f201b45 Reviewed-on: https://chromium-review.googlesource.com/1175129 Commit-Queue: Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Commit-Queue: Sreten Kovacevic <skovacevic@wavecomp.com> Reviewed-by:
Sreten Kovacevic <skovacevic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#55137}
-
- 09 Aug, 2018 1 commit
-
-
Ivica Bogosavljevic authored
TEST=cctest/test-run-wasm-simd/RunWasm_S8x16Concat_turbofan Change-Id: Ifcc14b57d65d15e5ae8477a05746027356bac547 Reviewed-on: https://chromium-review.googlesource.com/1166909Reviewed-by:
Bill Budge <bbudge@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#55012}
-
- 06 Aug, 2018 1 commit
-
-
Kyounga Ra authored
- DCHECK(IsMipsArchVariant(kMips32r2) || IsMipsArchVariant(kMips32r6)) is failed. - I tried not to select instruction kMipsSeb in case of kMips32r1. R=ivica.bogosavljevic@mips.com Bug: v8:8006 Change-Id: If07450b1a35b4e9cb608344e137c032381da224d Reviewed-on: https://chromium-review.googlesource.com/1160073 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by:
Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54931}
-
- 27 Jul, 2018 1 commit
-
-
Deepti Gandluri authored
Functions/variables for some atomic memory operators use type, representation interchangeably. Fix to make it consistent. Bug: v8:7754, v8:6532 Change-Id: I16ae35b72728739aee4bc67287317c2fd4a9088a Reviewed-on: https://chromium-review.googlesource.com/1152462Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#54763}
-
- 26 Jul, 2018 1 commit
-
-
Ivica Bogosavljevic authored
MIPS team has moved to new @wavecomp.com e-mail addresses. This CL is not actually changing owners, it only renames the owners to the new email addresses. No-Presubmit: true Change-Id: Ic334defa06a36d974de87e99ed6c30bdf021958f Reviewed-on: https://chromium-review.googlesource.com/1151349 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#54732}
-
- 19 Jun, 2018 1 commit
-
-
Tobias Tebbi authored
Bug: chromium:849098 Change-Id: Iec81d08cf6edb6040445650cadf802a34b65b8e1 Reviewed-on: https://chromium-review.googlesource.com/1092749 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#53843}
-
- 15 Jun, 2018 1 commit
-
-
jgruber authored
This reverts two commits: Introduce CodeAssembler::LoadRootsPointer 377803f8 [turbofan][x64] Reduce reg-to-reg moving instruction for LoadRootsRegister IR d4177d11 LoadRootsPointer was used by indirections for heap constants and external references from within CSA. Now that handling has moved to the macro-assembler, it can be removed. Bug: v8:6666 Change-Id: I868fe100e65a0a7a44ffc81674fa1ce79a56f7ed Reviewed-on: https://chromium-review.googlesource.com/1097080 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53770}
-
- 14 Jun, 2018 2 commits
-
-
Clemens Hammacher authored
This is a reland of 0909dbe3. Added missing V8_EXPORT_PRIVATE to AndroidLogStream. TBR=mstarzinger@chromium.org Original change's description: > Introduce StdoutStream which prints to Android log or stdout > > The often used construct {OFStream(stdout)} does not work on Android. > This CL introduces an {StdoutStream} which behaves exactly like > {OFStream(stdout)} on non-android platforms, and redirects to the > Android log on appropriate systems and configurations. > > R=mstarzinger@chromium.org > > Bug: v8:7820 > Change-Id: Ia682fdf6d064e37c605c19b032f5a10b96ac825b > Reviewed-on: https://chromium-review.googlesource.com/1088911 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53692} Bug: v8:7820 Change-Id: I8164bad78a401dbe4246c9ffcacd050fe511ed58 Reviewed-on: https://chromium-review.googlesource.com/1100636Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53733}
-
Michael Achenbach authored
This reverts commit 0909dbe3. Reason for revert: Blocks roll: https://chromium-review.googlesource.com/c/chromium/src/+/1099143 Original change's description: > Introduce StdoutStream which prints to Android log or stdout > > The often used construct {OFStream(stdout)} does not work on Android. > This CL introduces an {StdoutStream} which behaves exactly like > {OFStream(stdout)} on non-android platforms, and redirects to the > Android log on appropriate systems and configurations. > > R=mstarzinger@chromium.org > > Bug: v8:7820 > Change-Id: Ia682fdf6d064e37c605c19b032f5a10b96ac825b > Reviewed-on: https://chromium-review.googlesource.com/1088911 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53692} TBR=mstarzinger@chromium.org,jarin@chromium.org,jgruber@chromium.org,clemensh@chromium.org,bmeurer@chromium.org Change-Id: Iadadd9a0df10dca0fad647138a83db50148e864d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7820 Reviewed-on: https://chromium-review.googlesource.com/1100635Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#53725}
-
- 13 Jun, 2018 2 commits
-
-
Michael Starzinger authored
This uses a WebAssembly runtime stub for the out-of-line {DoubleToI} computation instead of a builtin specific to a certain Isolate. It is another step towards making {WasmCode} independent of the Isolate. R=clemensh@chromium.org BUG=v8:7424 Change-Id: Ifdaa8e2511b67468d75e0e4aaf70010ced04a11a Reviewed-on: https://chromium-review.googlesource.com/1098672 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#53702}
-
Clemens Hammacher authored
The often used construct {OFStream(stdout)} does not work on Android. This CL introduces an {StdoutStream} which behaves exactly like {OFStream(stdout)} on non-android platforms, and redirects to the Android log on appropriate systems and configurations. R=mstarzinger@chromium.org Bug: v8:7820 Change-Id: Ia682fdf6d064e37c605c19b032f5a10b96ac825b Reviewed-on: https://chromium-review.googlesource.com/1088911Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53692}
-
- 12 Jun, 2018 1 commit
-
-
jgruber authored
Indirections for external references are now handled completely in macro assemblers, which can produce more efficient code. Bug: v8:6666 Change-Id: I158f2e2517e2d97a1006cec6e3b4ac3a7ef3fab6 Reviewed-on: https://chromium-review.googlesource.com/1095307 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53666}
-
- 11 Jun, 2018 2 commits
-
-
Bill Budge authored
- Shuffle canonicalization improved to reverse operands to match more architectural shuffles. - Handles shuffles where the order of operands is reversed. - Adds tests for non-canonical shuffles, and for swizzles. - Improves TryMatchConcat method. - Substantially rewrites shuffles on ia32 to better handle swizzles and fix bugs on reversed shuffles where source registers are overwritten. - Adds Palignr macro-assembler instructions for ia32. Bug: v8:6020 Change-Id: I8e43a1e7650057c66690af1504b67509a1437d75 Reviewed-on: https://chromium-review.googlesource.com/1070934 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Martyn Capewell <martyn.capewell@arm.com> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#53648}
-
Ivica Bogosavljevic authored
Fix afd6351d After `[csa][builtins] Port CompileLazy* to CSA` landed, there is an implicit expectation that the address of the JS code is stored in the target register. Due to optimizations on MIPSR6, this address was not properly loaded. We fix this by loading target address explicitly before performing the jump. TEST=mjsunit/json2,mjsunit/packed-elements Change-Id: Ida9cb062910415bf15aa40dd20a17fc42fdba719 Reviewed-on: https://chromium-review.googlesource.com/1095155Reviewed-by:
Sreten Kovacevic <sreten.kovacevic@mips.com> Commit-Queue: Sreten Kovacevic <sreten.kovacevic@mips.com> Cr-Commit-Position: refs/heads/master@{#53642}
-
- 06 Jun, 2018 3 commits
-
-
Michael Starzinger authored
This avoids embedding {RelocInfo::CODE_TARGET} addresses into WasmCode by calling a WebAssembly runtime stub instead. The stubs themselves are not yet independent of the Isolate, but will be made so soon. Note that this also introduces a proper {compiler::TrapId} to avoid accidental parameter type confusion with {TrapIf} and {TrapUnless} operators. R=clemensh@chromium.org BUG=v8:7424 Change-Id: I32ef5a1253f336fc739d2192247826e9458456df Reviewed-on: https://chromium-review.googlesource.com/1086937Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53557}
-
Sreten Kovacevic authored
Also, fix latency for NEG_S and NEG_D on mips. Change-Id: I74626a787c67f79d430e55e715446d21b39ef937 Reviewed-on: https://chromium-review.googlesource.com/1088611Reviewed-by:
Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Commit-Queue: Sreten Kovacevic <sreten.kovacevic@mips.com> Cr-Commit-Position: refs/heads/master@{#53550}
-
Igor Sheludko authored
In order to port CompileLazy and DeserializeLazy builtins to CSA we need to support this mode to be able to tail call to compiled or deserialized JS code object. Bug: v8:5269, v8:7703 Change-Id: I6abdc989af16774f6454b2ea0a97b1ce5ece5125 Reviewed-on: https://chromium-review.googlesource.com/1087452Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#53543}
-
- 05 Jun, 2018 1 commit
-
-
Michael Starzinger authored
This removes the obsolete support to create {WASM_COMPILED} stack frames within the out-of-line trap handler code. All trapping code needs to push such a frame on entry by now, because the instance object is pushed implicitly as part of the prologue. Deferred frame building would not have access to a valid instance object. R=clemensh@chromium.org Change-Id: I96ac37fa00c527e6395a018c653c8ef85c70d04f Reviewed-on: https://chromium-review.googlesource.com/1085465Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53509}
-
- 04 Jun, 2018 2 commits
-
-
Michael Starzinger authored
This makes stack checks in WasmCode independent of the underlying Isolate by loading the limit address from the WasmInstanceObject instead of embedding it into the instruction stream. It hence removes the last use of the Isolate field from WasmGraphBuilder. Additionally this introduces the notion of a "runtime stub" which represents stub code global to the NativeModule that can be directly called from each WasmCode in the same module. These stubs can act as trampolines via which Isolate-independent WasmCode can enter other V8 builtins or runtime functions that remain Isolate-dependent. They will eventually replace the current "trampoline" in a NativeModule. R=titzer@chromium.org BUG=v8:7424 Change-Id: Ie1f5582ee656b1ab7716ea06316d6e21a0268e74 Reviewed-on: https://chromium-review.googlesource.com/1078732 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53487}
-
Sreten Kovacevic authored
Also, remove cctest/test-instruction-scheduler/DeoptInMiddleOfBasicBlock from skip-list. Change-Id: I392cab0c96b7adc5e9c94eacb60c97e09f0ec16a Reviewed-on: https://chromium-review.googlesource.com/1084591Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Cr-Commit-Position: refs/heads/master@{#53485}
-
- 18 May, 2018 1 commit
-
-
Ivica Bogosavljevic authored
Change-Id: Ie52c6793736f38d1ab1f323b856f36587c46e7f9 Reviewed-on: https://chromium-review.googlesource.com/1059773Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Cr-Commit-Position: refs/heads/master@{#53255}
-
- 09 May, 2018 1 commit
-
-
Clemens Hammacher authored
The {CommentOperator}, used for implementing the --code-comments flag, is not UBSan-safe. This CL fixes this and adds a test which uses code comments. R=bmeurer@chromium.org Bug: v8:7744 Change-Id: Ia6ec509e77d998df085ac7377cb24854354e3aa2 Reviewed-on: https://chromium-review.googlesource.com/1051235 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#53100}
-
- 08 May, 2018 1 commit
-
-
Ivo Markovic authored
at register is used a lot in macro-assembler-mips[64].cc and we should not use it as temporary register in other parts of code Change-Id: I7ef038cdf4f8c57aa76823e7ee0ffb40b62731cd Reviewed-on: https://chromium-review.googlesource.com/1027816 Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Reviewed-by:
Sreten Kovacevic <sreten.kovacevic@mips.com> Cr-Commit-Position: refs/heads/master@{#53055}
-
- 02 May, 2018 1 commit
-
-
Deepti Gandluri authored
Bug: v8:6532, v8:7570 Change-Id: Ieca502a6a13449ea65e47fb43f0e3d7cb5a09a7d Reviewed-on: https://chromium-review.googlesource.com/1031176 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#52926}
-
- 30 Apr, 2018 1 commit
-
-
Jaroslav Sevcik authored
The idea is to mark all the branches and loads participating in array bounds checks, and let them contribute-to/use the poisoning register. In the code, the marks for array indexing operations now contain "Critical" in their name. By default (--untrusted-code-mitigations), we only instrument the "critical" operations with poisoning. With that in place, we also remove the array masking approach based on arithmetic. Since we do not propagate the poison through function calls, we introduce a node for poisoning an index that is passed through function call - the typical example is the bounds-checked index that is passed to the CharCodeAt builtin. Most of the code in this CL is threads through the three levels of protection (safe, critical, unsafe) for loads, branches and flags. Bug: chromium:798964 Change-Id: Ief68e2329528277b3ba9156115b2a6dcc540d52b Reviewed-on: https://chromium-review.googlesource.com/995413 Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#52883}
-
- 26 Apr, 2018 4 commits
-
-
jgruber authored
This is a reland of f5d30851 Original change's description: > [builtins] Introduce further constant & external reference indirections > > This introduces further indirections for embedded constants and > external references for builtins generated by the macro-assembler. > The used mechanisms (LookupConstant and LookupExternalReference) are > identical to what we already use in CSA. > > Almost all builtins are now isolate-independent in both release and > debug modes. snapshot_blob.bin is roughly 670K smaller in embedded > builds vs. non-embedded builds, while libv8.so is roughly 280K larger. > > Bug: v8:6666 > Change-Id: I7a6c2193ef5a763e6cf7543dd51597d6fff6c110 > Reviewed-on: https://chromium-review.googlesource.com/1006581 > Commit-Queue: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52810} TBR=mstarzinger@chromium.org Bug: v8:6666 Change-Id: I73dfe207f2c5f79a9a06c165c75f5619e88a5a17 Reviewed-on: https://chromium-review.googlesource.com/1030550Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#52819}
-
jgruber authored
This reverts commit f5d30851. Breakages: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20noi18n%20-%20debug/builds/20370 https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20custom%20snapshot%20-%20debug/builds/21174 TBR=yangguo@chromium.org No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6666 Change-Id: Ic4d28fccf647aadcac0a60430b7fb66d22ce4577 Reviewed-on: https://chromium-review.googlesource.com/1030431Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#52813}
-
jgruber authored
This introduces further indirections for embedded constants and external references for builtins generated by the macro-assembler. The used mechanisms (LookupConstant and LookupExternalReference) are identical to what we already use in CSA. Almost all builtins are now isolate-independent in both release and debug modes. snapshot_blob.bin is roughly 670K smaller in embedded builds vs. non-embedded builds, while libv8.so is roughly 280K larger. Bug: v8:6666 Change-Id: I7a6c2193ef5a763e6cf7543dd51597d6fff6c110 Reviewed-on: https://chromium-review.googlesource.com/1006581 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#52810}
-
sreten.kovacevic authored
Implement float to i32/u32 conversion on mips. Also, fix order of arguments in some macro-assembler instructions used for these conversions. Bug: v8:6600 Change-Id: I94c91f8ac7796ac66fb3cf0129a2a27c1a6ec336 Reviewed-on: https://chromium-review.googlesource.com/1028232 Commit-Queue: Sreten Kovacevic <sreten.kovacevic@mips.com> Reviewed-by:
Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Cr-Commit-Position: refs/heads/master@{#52806}
-
- 25 Apr, 2018 1 commit
-
-
Andreas Haas authored
I missed one required change which was hidden behind an #if. The fix is in the diff between Patch 1 and Patch 3. Original message: In this CL I remove the isolate from signatures of ExternalReference accessor functions where the isolate is not used. The uses of the isolate were already removed in previous CLs. Changes: * I split the ExternalReference list in external-reference.h into those which need the isolate for initialization and those which do not. * I removed the public constructors and replaced them by ExternalReference::Create(). The reason is to separate external creation more clearly from internal creation, because externally created ExternalReferences sometimes need redirection, whereas internally created ExternalReferences are just stored as they are. In addition, by removing the isolate from the signature of the public constructors, they suddenly exactly matched the interal constructor. * Replace all uses of the public constructors with ExternalReference::Create(). * Remove the isolate from all call sites where necessary. This is a step towards making WebAssembly compilation independent of the isolate. R=mstarzinger@chromium.org Bug: v8:7570 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I750c162f5d58ed32e866722b0db920f8b9bd8057 Reviewed-on: https://chromium-review.googlesource.com/1026673Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#52777}
-
- 24 Apr, 2018 2 commits
-
-
Andreas Haas authored
This reverts commit 44ea425a. Reason for revert: https://ci.chromium.org/buildbot/client.v8.ports/V8%20Arm%20-%20debug%20builder/13575 Original change's description: > [refactoring] Remove the isolate from signatures of ExternalReferences > > In this CL I remove the isolate from signatures of ExternalReference > accessor functions where the isolate is not used. The uses of the > isolate were already removed in previous CLs. > > Changes: > * I split the ExternalReference list in external-reference.h into > those which need the isolate for initialization and those which do not. > > * I removed the public constructors and replaced them by > ExternalReference::Create(). The reason is to separate external > creation more clearly from internal creation, because externally > created ExternalReferences sometimes need redirection, whereas > internally created ExternalReferences are just stored as they are. > In addition, by removing the isolate from the signature of the > public constructors, they suddenly exactly matched the interal > constructor. > > * Replace all uses of the public constructors with > ExternalReference::Create(). > > * Remove the isolate from all call sites where necessary. > > > This is a step towards making WebAssembly compilation independent of > the isolate. > > Bug: v8:7570 > R=mstarzinger@chromium.org > > Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng > Change-Id: I14f511fc6acc50ab2d6a6641299f5ddbeabef0da > Reviewed-on: https://chromium-review.googlesource.com/1018982 > Commit-Queue: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#52768} TBR=mstarzinger@chromium.org,ahaas@chromium.org Change-Id: I7c0d8d420f815cede23d550dee8942ac4d7791cc No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7570 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Reviewed-on: https://chromium-review.googlesource.com/1026570Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#52769}
-
Andreas Haas authored
In this CL I remove the isolate from signatures of ExternalReference accessor functions where the isolate is not used. The uses of the isolate were already removed in previous CLs. Changes: * I split the ExternalReference list in external-reference.h into those which need the isolate for initialization and those which do not. * I removed the public constructors and replaced them by ExternalReference::Create(). The reason is to separate external creation more clearly from internal creation, because externally created ExternalReferences sometimes need redirection, whereas internally created ExternalReferences are just stored as they are. In addition, by removing the isolate from the signature of the public constructors, they suddenly exactly matched the interal constructor. * Replace all uses of the public constructors with ExternalReference::Create(). * Remove the isolate from all call sites where necessary. This is a step towards making WebAssembly compilation independent of the isolate. Bug: v8:7570 R=mstarzinger@chromium.org Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I14f511fc6acc50ab2d6a6641299f5ddbeabef0da Reviewed-on: https://chromium-review.googlesource.com/1018982 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#52768}
-
- 17 Apr, 2018 1 commit
-
-
sreten.kovacevic authored
Refactor AddPair and SubPair Macro-assembler instructions to prevent register overwriting, refactor all the places where these instructions are used. Also, implement MulPair instruction. Change-Id: I3f8f9d5fe6fa5bf25df3446614ac311cf886b6ac Reviewed-on: https://chromium-review.googlesource.com/1013571Reviewed-by:
Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Commit-Queue: Sreten Kovacevic <sreten.kovacevic@mips.com> Cr-Commit-Position: refs/heads/master@{#52642}
-