- 21 Nov, 2016 6 commits
-
-
yangguo authored
Stepping in a generator now behaves similar to stepping inside an async function. Stepping in or next at a yield expression will result in a break inside the same generator when we return to the generator. Behavior of step-out does not change. R=jgruber@chromium.org, neis@chromium.org BUG=chromium:496865 Review-Url: https://codereview.chromium.org/2519853002 Cr-Commit-Position: refs/heads/master@{#41132}
-
zhengxing.li authored
The reason: The CL #40862 (https://codereview.chromium.org/2433093002 ) caused 2 test cases failed for X87. Because Both 2 test cases (MoveOptimizerTest.RemovesRedundantExplicit and RegisterAllocatorTest.CanAllocateFPRegisters) needs 2 allocatable Float/Double registers. But there's only 1 allocatable Float/Double register in x87 turbofan compiler, i.e.: register index 0. This CL disables MoveOptimizerTest.RemovesRedundantExplicit and RegisterAllocatorTest.CanAllocateFPRegisters test cases for x87. BUG= Review-Url: https://codereview.chromium.org/2520623005 Cr-Commit-Position: refs/heads/master@{#41131}
-
ishell authored
BUG=chromium:576312, v8:5561 Review-Url: https://codereview.chromium.org/2515233002 Cr-Commit-Position: refs/heads/master@{#41130}
-
jgruber authored
Adapted various tests to restrictions of inspector protocol: * osr-typing-debug-change: Don't set function variable value. * debug-evaluate-locals: Add variable introduced by eval, run typeof inside evaluate(). * regress-419663: Don't set duplicate breakpoints. * regress-crbug-465298: Compare against function name instead of value. * regress-crbug-621361: Make evaluate return string results. * debug-script: Various counts were off due to new way tests are called. Added new inspector script type. Breakpoints now contain the actual break position, and remote object reconstruction has been extended a bit. BUG=v8:5530 Review-Url: https://codereview.chromium.org/2505363002 Cr-Commit-Position: refs/heads/master@{#41129}
-
bmeurer authored
Since loop peeling was shipped, there's no need to have the implication from --turbo to --turbo-loop-peeling. BUG=v8:5267 TBR=jarin@chromium.org Review-Url: https://codereview.chromium.org/2517073002 Cr-Commit-Position: refs/heads/master@{#41128}
-
bmeurer authored
Add a LoadFunctionPrototype simplified operator, similar to what Crankshaft has, that loads the prototype property of a constructor function. R=jarin@chromium.org BUG=v8:5267 Review-Url: https://codereview.chromium.org/2517913002 Cr-Commit-Position: refs/heads/master@{#41127}
-
- 20 Nov, 2016 4 commits
-
-
franzih authored
Add array pattern destructuring micro-benchmarks. These benchmarks compare a naive ES5 immplementation to an ES6-style implementation that uses destructuring. Adapted from http://kpdecker.github.io/six-speed BUG=v8:5267 Review-Url: https://codereview.chromium.org/2513273002 Cr-Commit-Position: refs/heads/master@{#41126}
-
Andrii Shyshkalov authored
TBR=machenbach@chromium.org BUG= Review URL: https://codereview.chromium.org/2516983002 . Cr-Original-Funny-Footer: should become original. Cr-Commit-Position: refs/heads/master@{#41125}
-
tandrii authored
TBR=machenbach@chromium.org NOTRY=True NOPRESUBMIT=True Review-Url: https://codereview.chromium.org/2518883002 Cr-Commit-Position: refs/heads/master@{#41124}
-
caitp authored
Utility used by Promise builtins implemented in TFJ/TFS BUG=v8:5046 R=bmeurer@chromium.org, gsathya@chromium.org, yangguo@chromium.org, adamk@chromium.org Review-Url: https://codereview.chromium.org/2517823002 Cr-Commit-Position: refs/heads/master@{#41123}
-
- 19 Nov, 2016 2 commits
-
-
machenbach authored
Revert of [wasm] WebAssembly.Memory object can be referenced by multiple Instance objects. (patchset #10 id:180001 of https://codereview.chromium.org/2471883003/ ) Reason for revert: Breaks gc stress: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gc%20stress/builds/7114 Original issue's description: > [wasm] WebAssembly.Memory object can be referenced by multiple Instance objects. > > Add support for WebAssembly.Memory objects to be simultaneously referenced by multiple Instance objects. GrowingMemory should maintain a consistent view of memory across instances. > - Store a link to instances that share WebAssembly.Memory in the WasmMemoryObject, updated on instantiate. > - Implement WasmInstanceWrapper as a wrapper around the instance object to keep track of previous/next instances, instance object is stored as a WeakCell that can be garbage collected. > - MemoryInstanceFinalizer maintains a valid list of instances when an instance is garbage collected. > - Refactor GrowInstanceMemory to GrowMemoryBuffer that allocates a new buffer, and UncheckedUpdateInstanceMemory that updates memory references for an instance. > > R=titzer@chromium.org, mtrofin@chromium.org, bradnelson@chromium.org > > Committed: https://crrev.com/30ef8e33f3a199a27ca8512bcee314c9522d03f6 > Cr-Commit-Position: refs/heads/master@{#41121} TBR=bradnelson@chromium.org,mtrofin@chromium.org,titzer@chromium.org,gdeepti@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2512323004 Cr-Commit-Position: refs/heads/master@{#41122}
-
gdeepti authored
Add support for WebAssembly.Memory objects to be simultaneously referenced by multiple Instance objects. GrowingMemory should maintain a consistent view of memory across instances. - Store a link to instances that share WebAssembly.Memory in the WasmMemoryObject, updated on instantiate. - Implement WasmInstanceWrapper as a wrapper around the instance object to keep track of previous/next instances, instance object is stored as a WeakCell that can be garbage collected. - MemoryInstanceFinalizer maintains a valid list of instances when an instance is garbage collected. - Refactor GrowInstanceMemory to GrowMemoryBuffer that allocates a new buffer, and UncheckedUpdateInstanceMemory that updates memory references for an instance. R=titzer@chromium.org, mtrofin@chromium.org, bradnelson@chromium.org Review-Url: https://codereview.chromium.org/2471883003 Cr-Commit-Position: refs/heads/master@{#41121}
-
- 18 Nov, 2016 28 commits
-
-
littledan authored
The code which pushes and pops to the function name inference stack generally checks if the stack is active with the IsOpen method. One piece of code pertaining to async functions was missing that check. This patch adds it. BUG=chromium:658267 R=gsathya,caitp Review-Url: https://codereview.chromium.org/2514893002 Cr-Commit-Position: refs/heads/master@{#41120}
-
franzih authored
BUG=v8:5624 Review-Url: https://codereview.chromium.org/2518513002 Cr-Commit-Position: refs/heads/master@{#41119}
-
caitp authored
BUG=666622, v8:5388 R=bmeurer@chromium.org, mstarzinger@chromium.org Review-Url: https://codereview.chromium.org/2515683002 Cr-Commit-Position: refs/heads/master@{#41118}
-
mtrofin authored
A simple Print API for debugging assessments in the regalloc verifier. BUG= Review-Url: https://codereview.chromium.org/2512943003 Cr-Commit-Position: refs/heads/master@{#41117}
-
gsathya authored
This patch also cleans up NewPromiseCapability. This patch results in a 20% improvement over 4 runs with the following micro benchmark - var x = Promise.resolve(); async function bar() { return x; } async function foo() { await bar(); } var start = performance.now(); var count = 0; var max = 10000; for(var i = 0; i <= max; i++) { foo().then(() => { count++; if(count === max) print( performance.now() - start ); }) } BUG=v8:5639 Review-Url: https://codereview.chromium.org/2512103002 Cr-Commit-Position: refs/heads/master@{#41116}
-
clemensh authored
... at least for the function which will remain after restructuring of the debug interface. For some methods that will be removed anyway, we just return zero / null for now. I also refactored the ScriptLocationFromLine method to make it more readable and reuse parts in other files (like ScriptLinePosition). BUG=5655 R=titzer@chromium.org, jgruber@chromium.org Review-Url: https://codereview.chromium.org/2512833003 Cr-Commit-Position: refs/heads/master@{#41115}
-
vogelheim authored
Some minifiers use the pattern !function ... () for JS code that should be immediately executed. This change recognizes that pattern and treats it equally to parenthesized functions. A bit more background info is in the referenced bug. R=verwaest@chromium.org BUG=v8:5643 Review-Url: https://codereview.chromium.org/2509143003 Cr-Commit-Position: refs/heads/master@{#41114}
-
predrag.rudic authored
Port a1103a11 Original commit message: - Simplify the variable-length pop sequence on entry. (It now uses smaller code with no branches.) - Use conditional compare to merge branches where appropriate. - Make use of Ldrsw + UntagSmiFieldMemOperand to load smis more efficiently. - Only load 'undefined' and 'null' once per builtin. - A few other small improvements. Review-Url: https://codereview.chromium.org/2507683003 Cr-Commit-Position: refs/heads/master@{#41113}
-
ulan authored
are created using new Array(N) and setLength(N). Currently the limit is based on max old generation size, which will break with the upcoming change that allows large heaps. BUG=chromium:652721 Review-Url: https://codereview.chromium.org/2513923002 Cr-Commit-Position: refs/heads/master@{#41112}
-
ishell authored
This is a next step towards removing names table from type feedback metadata. BUG=chromium:576312, v8:5561 Review-Url: https://codereview.chromium.org/2514453002 Cr-Commit-Position: refs/heads/master@{#41111}
-
marja authored
It originates from the era where we used to run a separate preparse step before parsing and store the function data. Now the usage of preparser is something completely different, so this flag doesn't make sense any more. In addition, this way we get more test coverage for preparser (for small scripts). BUG= Review-Url: https://codereview.chromium.org/2513563002 Cr-Commit-Position: refs/heads/master@{#41110}
-
ulan authored
This reverts commit 3c96c5e2. The CL was reverted to see its impact on UMA memory counters. There was no impact, so we can safely reland the CL. BUG= Review-Url: https://codereview.chromium.org/2507293004 Cr-Commit-Position: refs/heads/master@{#41109}
-
bmeurer authored
Add fast paths for holey smi and object arrays to Function.prototype.apply, Reflect.apply and Reflect.construct. R=yangguo@chromium.org Review-Url: https://codereview.chromium.org/2510043004 Cr-Commit-Position: refs/heads/master@{#41108}
-
mlippautz authored
This way we can just process new space strings when needed. BUG=chromium:651354 Review-Url: https://codereview.chromium.org/2515643002 Cr-Commit-Position: refs/heads/master@{#41107}
-
ishell authored
This is a next step towards removing names table from type feedback metadata. BUG=chromium:576312, v8:5561 Review-Url: https://codereview.chromium.org/2507143003 Cr-Commit-Position: refs/heads/master@{#41106}
-
verwaest authored
[crankshaft] Don't inline the fast path for instanceof if the function has a non-instance .prototype BUG=chromium:666308 Review-Url: https://codereview.chromium.org/2516603002 Cr-Commit-Position: refs/heads/master@{#41105}
-
mlippautz authored
Adds the marking logic to mark the young generation. BUG=chromium:651354 Review-Url: https://codereview.chromium.org/2498583002 Cr-Commit-Position: refs/heads/master@{#41104}
-
ulan authored
The test is too fragile. NOTREECHECKS=true Review-Url: https://codereview.chromium.org/2510403002 Cr-Commit-Position: refs/heads/master@{#41103}
-
clemensh authored
This makes wasm frames show up nicely in stack traces generated e.g. by Isolate::PrintStack() and Isolate::PrintCurrentStackTrace(). With this CL, we print the script name, function index, function name, pc and source position. R=titzer@chromium.org, ahaas@chromium.org Review-Url: https://codereview.chromium.org/2509323002 Cr-Commit-Position: refs/heads/master@{#41102}
-
franzih authored
Add bytecode for defining data properties, which initially just calls the runtime function. BUG=v8:5624 Review-Url: https://codereview.chromium.org/2510743002 Cr-Commit-Position: refs/heads/master@{#41101}
-
machenbach authored
Revert of [interpreter] Properly collect rhs feedback for comparisons with oddballs. (patchset #1 id:1 of https://codereview.chromium.org/2513903002/ ) Reason for revert: Seems to break layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/11452 Original issue's description: > [interpreter] Properly collect rhs feedback for comparisons with oddballs. > > Ignition skipped collecting NumberOrOddball feedback if the right hand > side of a relational comparison is undefined, thus leading to a > deoptimization loop, because it reported Number feedback to TurboFan. > > This was caught on 3d-raytrace test of SunSpider. > > R=rmcilroy@chromium.org > > Committed: https://crrev.com/d240ffec32ae034e50c006f7d5715171b32bbbc4 > Cr-Commit-Position: refs/heads/master@{#41094} TBR=rmcilroy@chromium.org,bmeurer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2511243004 Cr-Commit-Position: refs/heads/master@{#41100}
-
clemensh authored
Instead of having functions for 0 to 5 arguments, we now have a variadic template, allowing for an arbitrary number of arguments. I also refactored the internal FmtElm class to only include the type field if building for debug, because it is only used in this setting. R=titzer@chromium.org, ahaas@chromium.org Review-Url: https://codereview.chromium.org/2507093004 Cr-Commit-Position: refs/heads/master@{#41099}
-
Miran.Karic authored
In component build, fuzzer did not link with icu libraries, causing errors. By adding icu libraries to dependencies fuzzer links correctly. BUG= TEST=fuzzer/* Review-Url: https://codereview.chromium.org/2510063002 Cr-Commit-Position: refs/heads/master@{#41098}
-
ulan authored
We never increment live bytes concurrent to the sweeper. BUG= Review-Url: https://codereview.chromium.org/2504193002 Cr-Commit-Position: refs/heads/master@{#41097}
-
bmeurer authored
There's a typo in a couple of lithium backends, where we assume that the array protector on the Isolate is a Cell instead of a PropertyCell. This could lead to unnecessary deoptimizations. R=yangguo@chromium.org Review-Url: https://codereview.chromium.org/2512943002 Cr-Commit-Position: refs/heads/master@{#41096}
-
ulan authored
BUG=v8:5580 Review-Url: https://codereview.chromium.org/2460873003 Cr-Commit-Position: refs/heads/master@{#41095}
-
bmeurer authored
Ignition skipped collecting NumberOrOddball feedback if the right hand side of a relational comparison is undefined, thus leading to a deoptimization loop, because it reported Number feedback to TurboFan. This was caught on 3d-raytrace test of SunSpider. R=rmcilroy@chromium.org Review-Url: https://codereview.chromium.org/2513903002 Cr-Commit-Position: refs/heads/master@{#41094}
-
mstarzinger authored
This fixes the bogus implementation of the function in question and adds test coverage for the deserialization of the corresponding flags from the serialized scope info. Note that the tests so far only cover cases where the module and the function contain context-allocated variables. R=verwaest@chromium.org TEST=cctest/test-parsing/AsmFunctionFlag BUG=v8:5653 Review-Url: https://codereview.chromium.org/2507063004 Cr-Commit-Position: refs/heads/master@{#41093}
-