- 03 Jan, 2018 2 commits
-
-
Mike Stanton authored
This code is highly repetitive, and while we've held off on large refactorings (using "Builder" classes, templates or macros), it's useful to find a few common points that don't change very much. Bug: Change-Id: Ib0880558cf667f5d07c8343328461609ccb1e6b1 Reviewed-on: https://chromium-review.googlesource.com/848913Reviewed-by:
Daniel Clifford <danno@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#50338}
-
Sigurd Schneider authored
Bug: v8:7127, v8:7204, v8:7205 Change-Id: Idd3c11dc92fbd2c7ccab3aece7b2ad189619fc2c Reviewed-on: https://chromium-review.googlesource.com/833916Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#50337}
-
- 02 Jan, 2018 3 commits
-
-
Pierre Langlois authored
These classes were only used to implement checked loads. Bug: Change-Id: Icd3aa6f22ffe7a48e5bea98b0a44a58905788c80 Reviewed-on: https://chromium-review.googlesource.com/847578Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Cr-Commit-Position: refs/heads/master@{#50328}
-
Pierre Langlois authored
Extend the code-generator tests to cover AssembleMove and AssembleSwap with Simd128 registers and stack slots, for targets that support them. For this to work however, we need support for passing Simd128 stack parameters in TurboFan which this patch implements for Arm and x86. PPC and S390 both do not support the Simd128 representation and it appears MIPS and MIPS64's implementation of AssembleMove and AssembleSwap do not support it either. As per the design of the tests, the set of values to perform moves on are represented in a FixedArray of Smis (for kTagged) and HeapNumbers (for kFloat32 and kFloat64). They are converted to raw values for the moves to be performed on, to be then converted back into a FixedArray. For the kSimd128 representation, we represent values as a FixedArray of 4 Smis, each representing a lane. They are converted to a raw Simd128 vector using the `I32x4ReplaceLane` and `I32x4ExtractLane` operations. Finally, these tests need Simd128 variables mixed with the CodeStubAssembler which is not a use-case officially supported. And as a result, the `RecordWrite` stub does not guarantee to preserve Simd128 registers. To get around this, we have to be careful to skip write barriers when dealing with Simd128 parameters inside the "teardown" function, and we've had to move all allocations to the "setup" function. Thanks to this, we are able to catch bugs such as this one https://bugs.chromium.org/p/v8/issues/detail?id=6843. Bug: v8:6848 Change-Id: I8787d6339cdbfcd9356c5e8995925f0b45c562fa Reviewed-on: https://chromium-review.googlesource.com/728599 Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#50326}
-
Clemens Hammacher authored
After https://crrev.com/c/832457, CheckedLoad is not being used any more. Thus, remove it from the TurboFan backend and from all tests. CheckedStore was already removed in https://crrev.com/c/822570. R=jarin@chromium.org CC=titzer@chromium.org, mstarzinger@chromium.org Change-Id: I2eeec2f4a9d0a10067db5cc25ec41366ae85e917 Reviewed-on: https://chromium-review.googlesource.com/832459 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#50323}
-
- 29 Dec, 2017 3 commits
-
-
Mike Stanton authored
Bug: v8:1956 Change-Id: Iee1c6245832b786993ebd71b615cf4257c6bd0bb Reviewed-on: https://chromium-review.googlesource.com/758769 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#50320}
-
Sigurd Schneider authored
Update notion of compatibility used in redundancy elimination to determine whether one check subsumes another check to ignore the feedback on the operator. Bug: v8:7127 Change-Id: I77ab8a64adcd2b36ee7eafbe6cc148ddbc430b11 Reviewed-on: https://chromium-review.googlesource.com/839441 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50318}
-
Mike Stanton authored
Bug: v8:1956 Change-Id: Iae150730eb230dd7c90c66941d4d6aa8f0f0a423 Reviewed-on: https://chromium-review.googlesource.com/845685Reviewed-by:
Daniel Clifford <danno@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#50317}
-
- 27 Dec, 2017 2 commits
-
-
Caitlin Potter authored
Add an early exit if the control op is Dead to prevent failing the DCHECK. BUG=chromium:797596, v8:5940, v8:3018 R=bmeurer@chromium.org, jarin@chromium.org Change-Id: I6090380ea69c3205740b6c7a41d7c066d18d6a9f Reviewed-on: https://chromium-review.googlesource.com/844978 Commit-Queue: Caitlin Potter <caitp@igalia.com> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50312}
-
Karl Schimpf authored
This CL adds the i32.trunc_s:sat/f32 WASM opcode to the turbofan compiler and interpreter (more saturating operators will be added in later CLs). The operatation has been added under an experimental flag. Bug: v8:7226 Change-Id: Ia69e981ffddb2da682e53ba25f489fc9d0cd2db5 Reviewed-on: https://chromium-review.googlesource.com/834670 Commit-Queue: Karl Schimpf <kschimpf@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#50311}
-
- 22 Dec, 2017 7 commits
-
-
Andreas Haas authored
This is the implementation of crrev.com/c/766371 for mips64. Original description: Add the ability to return (multiple) return values on the stack: - Extend stack frames with a new buffer region for return slots. This region is located at the end of a caller's frame such that its slots can be indexed as caller frame slots in a callee (located beyond its parameters) and assigned return values. - Adjust stack frame constructon and deconstruction accordingly. - Extend linkage computation to support register plus stack returns. - Reserve return slots in caller frame when respective calls occur. - Introduce and generate architecture instructions ('peek') for reading back results from return slots in the caller. - Aggressive tests. - Some minor clean-up. R=v8-mips-ports@googlegroups.com Change-Id: Ia924f94367320b9062e33d35b58ccd38c8fc3ca3 Reviewed-on: https://chromium-review.googlesource.com/842483Reviewed-by:
Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50299}
-
Daniel Clifford authored
May be causing breakage in browser tests preventing V8 roll TBR=bmeurer@chromium.org Change-Id: Ib1689c38ff250fc9454d2ea991c4808ddc5189de Reviewed-on: https://chromium-review.googlesource.com/842868Reviewed-by:
Daniel Clifford <danno@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#50298}
-
Andreas Haas authored
Instead of these two instructions I generalize the kX64Peek instruction. R=bmeurer@chromium.org Change-Id: Ie5f8c7d428b65df3ca8b75594f6a06a75cc8e978 Reviewed-on: https://chromium-review.googlesource.com/839863 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50294}
-
Andreas Haas authored
Instead of these two instructions I generalize the kIA32Peek instruction. R=bmeurer@chromium.org Change-Id: I4bc48ac95dffd6e33de47a6aee9a13a1d64f78e0 Reviewed-on: https://chromium-review.googlesource.com/839766Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50292}
-
Andreas Haas authored
On 32-bit platforms, float64 stack returns take 2 stack slots. In the implemention of the kArmPeek instruction we assume that provided slot index points to the first stack slot. However, due to an off-by-1 issue the provided slot index pointed to the second stack slot. This CL fixes the problem and generalizes an existing test which reproduces it. R=v8-arm-ports@googlegroups.com Change-Id: Ibb2fd8275cf912da064e2f863c2d64d2526caaac Reviewed-on: https://chromium-review.googlesource.com/839761Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50291}
-
Sigurd Schneider authored
This also adds speculative checks asserting that all arguments are of the right types; each check disables speculation if it fails. Bug: v8:7127, v8:6270 Change-Id: Ifcb8bc509b86c712f0fab50ef1caee0c3a289e86 Reviewed-on: https://chromium-review.googlesource.com/832449 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50289}
-
Mathias Bynens authored
For numbers, `JSGraph::Constant(Handle<Object> value)` first checks the type of `value`, and then calls `JSGraph::Constant` for its type, which in turn performs some further checks before returning a value. This patch saves a few `if` checks by making the following changes: - JSGraph::Constant(0) → JSGraph::ZeroConstant() - JSGraph::Constant(1) → JSGraph::OneConstant() Change-Id: I6946c280437b7f1fe80d7c45c6fd9b3571907e07 Reviewed-on: https://chromium-review.googlesource.com/840982Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Mathias Bynens <mathias@chromium.org> Cr-Commit-Position: refs/heads/master@{#50288}
-
- 21 Dec, 2017 5 commits
-
-
Caitlin Potter authored
NodeProperties::InferReceiverMaps now traverses effect chain for Loop-EffectPhi nodes, which makes it possible to inline `iterator.next()` within a loop when the next property is loaded outside of a loop. A new helper, GetInstanceTypeWitness(), performs InferReceiverMaps() and checks that each resulting map has an identical instance type. BUG=chromium:795632, v8:5940, v8:3018 R=bmeurer@chromium.org, jarin@chromium.org Change-Id: Id2690c224668bea62dbcad62ebc2bdf7e37e80d3 Reviewed-on: https://chromium-review.googlesource.com/837484 Commit-Queue: Caitlin Potter <caitp@igalia.com> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50284}
-
Daniel Clifford authored
Bug: v8:1956 Change-Id: I785986ed20e60e21966abe82a1567d239b22b416 Reviewed-on: https://chromium-review.googlesource.com/840026Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#50283}
-
Andreas Haas authored
This is the implementation of crrev.com/c/766371 for mips. Original description: Add the ability to return (multiple) return values on the stack: - Extend stack frames with a new buffer region for return slots. This region is located at the end of a caller's frame such that its slots can be indexed as caller frame slots in a callee (located beyond its parameters) and assigned return values. - Adjust stack frame constructon and deconstruction accordingly. - Extend linkage computation to support register plus stack returns. - Reserve return slots in caller frame when respective calls occur. - Introduce and generate architecture instructions ('peek') for reading back results from return slots in the caller. - Aggressive tests. - Some minor clean-up. R=v8-mips-ports@googlegroups.com Change-Id: I2f30cc297771ec74b0b935b6ea28d3d61a986d5c Reviewed-on: https://chromium-review.googlesource.com/839660Reviewed-by:
Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50272}
-
Daniel Clifford authored
Bug: v8:1956,v8:4869 Change-Id: Id5822319c14142be2dd984c922b2b65717b96dee Reviewed-on: https://chromium-review.googlesource.com/803974 Commit-Queue: Daniel Clifford <danno@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50261}
-
Georgia Kouveli authored
This patch updates the instruction selector and code generator to pad arguments for arm64 and drop an even number of slots when dropping the arguments. It also updates the builtins that handle arguments. These changes need to be made at the same time. It also adds some tests for forwarding varargs, as this was affected by the builtin changes and the existing tests did not catch all issues. Bug: v8:6644 Change-Id: I81318d1d1c9ab2568f84f2bb868d2a2d4cb56053 Reviewed-on: https://chromium-review.googlesource.com/829933 Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50259}
-
- 20 Dec, 2017 4 commits
-
-
Clemens Hammacher authored
And add a helper method to convert an uint32 value to uintptr (e.g. a noop on 32 bit and Uint32ToUint64 conversion on 64 bit). R=ahaas@chromium.org Change-Id: Ibc6731bc7ddaf8ceaa27e9e8fbec916d184d9ad4 Reviewed-on: https://chromium-review.googlesource.com/836618 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50246}
-
Georgia Kouveli authored
This is a reland of bcf11729 The test was timing out in no snapshot builds, as each CodeAssemblerTester creates a new Context. Reduced the random iterations significantly. Original change's description: > [arm64] Preparation for padding of arguments > > As part of JSSP removal, we need to align the arguments passed to functions > on the stack, by adding a padding slot when the total number of arguments > is odd. > > This patch introduces the kPadArguments flag (which is currently set to > false for all architectures), which will control padding of arguments in > architecture-independent parts of the code (deoptimizer, instruction > selector). > > It also adds some executable tests for tail calls with various stack > parameter counts on the caller and callee sides. > > This will be turned on for arm64 together with arm64-specific changes to > the code generator, the MacroAsembler and the builtins, in a later patch. > > Bug: v8:6644 > Change-Id: I79a5c149123fe8130cedd1ccffec3d9b50361e08 > Reviewed-on: https://chromium-review.googlesource.com/806554 > Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#50134} TBR=jarin@chromium.org Bug: v8:6644 Change-Id: I795877ed9791e126ffac6841dbbb65189e95d207 Reviewed-on: https://chromium-review.googlesource.com/833046 Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#50238}
-
Andreas Haas authored
This is the implementation of crrev.com/c/766371 for arm. Original description: Add the ability to return (multiple) return values on the stack: - Extend stack frames with a new buffer region for return slots. This region is located at the end of a caller's frame such that its slots can be indexed as caller frame slots in a callee (located beyond its parameters) and assigned return values. - Adjust stack frame constructon and deconstruction accordingly. - Extend linkage computation to support register plus stack returns. - Reserve return slots in caller frame when respective calls occur. - Introduce and generate architecture instructions ('peek') for reading back results from return slots in the caller. - Aggressive tests. - Some minor clean-up. R=v8-arm-ports@googlegroups.com Change-Id: I7d61424a184d5778baf1d1270013f4e0c7ec68b4 Reviewed-on: https://chromium-review.googlesource.com/836608Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50237}
-
Jaroslav Sevcik authored
Bug: Change-Id: Idf3829f59cebe5c68b011ab6a0fa766ca2bad359 Reviewed-on: https://chromium-review.googlesource.com/832448 Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#50231}
-
- 19 Dec, 2017 8 commits
-
-
Clemens Hammacher authored
... or sometimes by FATAL(...) to give a better error message. The benefit of UNREACHABLE() over CHECK(false) is that the compiler knows that this macro will never return, hence we can omit the return of a dummy value afterwards. R=neis@chromium.org Change-Id: I14e6a4f1d75f1338f481bd1520d841fd383d6202 Reviewed-on: https://chromium-review.googlesource.com/832431Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#50214}
-
Clemens Hammacher authored
Similar to wasm, do also mask memory accesses from asm.js code as an additional protection against OOB accesses. R=ahaas@chromium.org CC=titzer@chromium.org, mstarzinger@chromium.org Change-Id: Iee7124c6d6078fb52cd1caa37b013c919c5505fb Reviewed-on: https://chromium-review.googlesource.com/833914Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#50205}
-
Georg Neis authored
It's still unused there but now at least it ends up in the feedback vector. Bug: v8:6791 Change-Id: I0114d317830b80be4715c74dc5a8950fff4d3485 Reviewed-on: https://chromium-review.googlesource.com/829136Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#50194}
-
Andreas Haas authored
There was an issue when the caller of a function with multiple returns did not use all values which were returned over the stack. The caller used only the used returns to calculate the offsets on the stack, whereas the callee used all returns to calculate the offsets. With this CL also the caller uses all returns to calculate the stack offsets and thereby agrees again with the callee on the location of all returns. In addition I fixed an issue on x64: A quad word is reserved on the stack frame to spill callee-saved FP registers, which is not pointer size. R=titzer@chromium.org Change-Id: Ibe56b4b57e4b6e59071a868805b1237412344f93 Reviewed-on: https://chromium-review.googlesource.com/824043Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50193}
-
Clemens Hammacher authored
This is the counterpart of https://crrev.com/c/822471. It implements asm.js bounds checks for loads using normal branch nodes and removes the need for CheckedLoad, improving maintainability at some small cost to compilation time. R=ahaas@chromium.org CC=mstarzinger@chromium.org, titzer@chromium.org Change-Id: I7a2716f364b9e4d7beb9cc460eb028c3bd1c3a99 Reviewed-on: https://chromium-review.googlesource.com/832457 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50192}
-
Clemens Hammacher authored
The memory size is always stored as 32 bit value, so the comparison should always be done in 32 bit space. R=ahaas@chromium.org Change-Id: Ic059e63bf1dc9e8bf568dbb5f8d7ccde1da4761a Reviewed-on: https://chromium-review.googlesource.com/832473Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#50187}
-
Clemens Hammacher authored
Even inside an "#ifdef DEBUG", we still want to use the DCHECK macro instead of CHECK in order to get the "correct" error message. Drive-by: Remove "#ifdef DEBUG" around DCHECKS in macro-assembler-x64.cc R=ahaas@chromium.org CC=mtrofin@chromium.org Change-Id: I5b92c87fa9b10e5751cc2704d6218bee292cfb8f Reviewed-on: https://chromium-review.googlesource.com/832687Reviewed-by:
Mircea Trofin <mtrofin@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#50184}
-
Clemens Hammacher authored
Remove comment about usage of FATAL, UNREACHABLE and UNIMPLEMENTED, which was deprecated since https://crrev.com/1410713006. Also, refactor the FATAL macro and use it for implementing UNREACHABLE and UNIMPLEMENTED, and in more code. The benefit over printf + CHECK(false) is that the compiler knows that FATAL will never return. R=bmeurer@chromium.org Change-Id: I8c2ab3b4e6edfe8eff5ec6fdf3d92b15d0ed7126 Reviewed-on: https://chromium-review.googlesource.com/832726Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#50183}
-
- 18 Dec, 2017 6 commits
-
-
Igor Sheludko authored
This CL removes LoadScriptContextFieldStub and StoreScriptContextFieldStub. Bug: v8:7206, chromium:576312 Change-Id: I217eeb726ca7d1ec85a67331da4941b9ac2a4b7a Reviewed-on: https://chromium-review.googlesource.com/831867Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#50177}
-
Sigurd Schneider authored
This CL allows deopts from CheckString to disable speculation. Bug: v8:7127, v8:6270 Change-Id: I029caeb61c509e5eb51b169ac42596d632f7c75a Reviewed-on: https://chromium-review.googlesource.com/831866 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50172}
-
Sigurd Schneider authored
This CL passes feedback from the element kind deopt points in Array.push to the deoptimizer. If the deopt points are triggered, further speculation on Array.push is disallowed. Bug: v8:7127, v8:7204 Change-Id: Ie91dee598bd8b8797110c8f468406327226893a4 Reviewed-on: https://chromium-review.googlesource.com/831523 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50171}
-
Sigurd Schneider authored
This change is quite invasive, because CheckSmi is lowered through representation change depending on UseInfo to several different checked conversion operators. This CL adds feedback to every checked conversion operator to Int32. Bug: v8:7127, v8:7204 Change-Id: Icb780e5a69d321c2ec161c3c2a32984bdcf101f1 Reviewed-on: https://chromium-review.googlesource.com/831521Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#50167}
-
Clemens Hammacher authored
This makes --print-code and --print-wasm-code also print code emitted on the native wasm heap. It also extends code printing to include the code kind and the index. R=mtrofin@chromium.org Change-Id: I39c23f4b65168c059f23477ec5d264924ca83e82 Reviewed-on: https://chromium-review.googlesource.com/831987Reviewed-by:
Mircea Trofin <mtrofin@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#50166}
-
Clemens Hammacher authored
Add additional protection against OOB accesses by masking the index to access by a mask precomputed from the memory size. R=clemensh@chromium.org, bradnelson@chromium.org Change-Id: I1d5875121e1904074b115a2c88ca773b6c1c1a66 Reviewed-on: https://chromium-review.googlesource.com/830394Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#50162}
-