- 12 Feb, 2016 27 commits
-
-
bmeurer authored
There are only two uses of %_ObjectEquals left, which should actually use strict equality instead, so there's no need to keep this special logic at all. R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/1692193002 Cr-Commit-Position: refs/heads/master@{#33948}
-
machenbach authored
Revert of [turbofan] Ship turbofan try-catch. (patchset #1 id:1 of https://codereview.chromium.org/1694743003/ ) Reason for revert: [Sheriff] Might break layout tests unintended. Original issue's description: > [turbofan] Ship turbofan try-catch. > > Committed: https://crrev.com/5bb459ba4daa34e5ed2fca0dd146aa18f9b6b036 > Cr-Commit-Position: refs/heads/master@{#33938} TBR=mstarzinger@chromium.org,bmeurer@chromium.org,jarin@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/1688403003 Cr-Commit-Position: refs/heads/master@{#33947}
-
machenbach authored
This returns a proper test result (failure) when files are missing for setting up the command. Review URL: https://codereview.chromium.org/1696713002 Cr-Commit-Position: refs/heads/master@{#33946}
-
verwaest authored
Speeds up Object.keys by another ~10-20% :) Review URL: https://codereview.chromium.org/1697533002 Cr-Commit-Position: refs/heads/master@{#33945}
-
machenbach authored
BUG=v8:4754 LOG=n NOTRY=true TBR=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1693823002 Cr-Commit-Position: refs/heads/master@{#33944}
-
bmeurer authored
This removes support for the %Arguments and %ArgumentsLength runtime entries and their intrinsic counterparts. If you need variable arguments in any builtin, either use (strict) arguments object or rest parameters, which are both compositional across inlining (in TurboFan), and not that much slower compared to the %_Arguments hackery. R=jarin@chromium.org Review URL: https://codereview.chromium.org/1688163004 Cr-Commit-Position: refs/heads/master@{#33943}
-
jarin authored
Review URL: https://codereview.chromium.org/1669303002 Cr-Commit-Position: refs/heads/master@{#33942}
-
jarin authored
Review URL: https://codereview.chromium.org/1689573008 Cr-Commit-Position: refs/heads/master@{#33941}
-
ulan authored
BUG= Review URL: https://codereview.chromium.org/1693813002 Cr-Commit-Position: refs/heads/master@{#33940}
-
bmeurer authored
This is the very last use of %_Arguments and %_ArgumentsLength, and also the main blocker for not inlining builtins. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1681403006 Cr-Commit-Position: refs/heads/master@{#33939}
-
jarin authored
Review URL: https://codereview.chromium.org/1694743003 Cr-Commit-Position: refs/heads/master@{#33938}
-
mstarzinger authored
The tests in question have been disabled because throwing into lazy deoptimized code was borked. After recent fixes landed these tests should now pass again. R=jarin@chromium.org TEST=cctest/test-run-deopt/DeoptExceptionHandler BUG=v8:4195 LOG=n Review URL: https://codereview.chromium.org/1692873002 Cr-Commit-Position: refs/heads/master@{#33937}
-
jarin authored
The idea here is to perform the handler lookup in the deoptimizer, and then take the information from the handler table to build the catch handler frame in the deoptimizer. Specifically, we use the pc offset, context location and stack height (in full-code) to tweak the output frame. Sadly, this still requires nasty voodoo for the liveness analyzer so that it keeps variables alive if they are used in the catch handler. Review URL: https://codereview.chromium.org/1416543006 Cr-Commit-Position: refs/heads/master@{#33936}
-
bmeurer authored
There's only one last user of %_Arguments and %_ArgumentsLength left, the rest was updated to either strict mode arguments object or to not use arguments at all. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1692003003 Cr-Commit-Position: refs/heads/master@{#33935}
-
epertoso authored
This was causing code like: REX.W cmpq r9,r8 setzl r8l movzxbl r8,r8 REX.W cmpq r8,0x0 jz 185 (note the cmpq instead of cmpl above) on x64 instead of: REX.W cmpq r9,r8 jnz 149 http://crrev.com/1677503002 is now obsolete and has been reverted. Review URL: https://codereview.chromium.org/1685183003 Cr-Commit-Position: refs/heads/master@{#33934}
-
mstarzinger authored
Reland of [interpreter] Correctly thread through catch prediction. (patchset #1 id:1 of https://codereview.chromium.org/1695613002/ ) Reason for revert: No fix needed, original CL was perfectly fine! Original issue's description: > Revert of [interpreter] Correctly thread through catch prediction. (patchset #1 id:1 of https://codereview.chromium.org/1690973002/ ) > > Reason for revert: > Depends on the reverted https://codereview.chromium.org/1691723002 > > Original issue's description: > > [interpreter] Correctly thread through catch prediction. > > > > This change correctly sets the {CatchPrediction} field in exception > > handler tables for bytecode and optimized code. It also adds tests > > independent of promise handling for this prediction, to ensure all our > > backends are in sync on their prediction. > > > > R=rmcilroy@chromium.org,yangguo@chromium.org > > TEST=mjsunit/compiler/debug-catch-prediction > > BUG=v8:4674 > > LOG=n > > > > Committed: https://crrev.com/ba55f5594cb0b4a1a1e9b35d87fe54afe2d93f3b > > Cr-Commit-Position: refs/heads/master@{#33906} > > TBR=rmcilroy@chromium.org,yangguo@chromium.org,mstarzinger@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:4674 > > Committed: https://crrev.com/c5229b311968fd638a6cd537c341b1055eb7be97 > Cr-Commit-Position: refs/heads/master@{#33922} TBR=rmcilroy@chromium.org,yangguo@chromium.org,adamk@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4674 Review URL: https://codereview.chromium.org/1689113004 Cr-Commit-Position: refs/heads/master@{#33933}
-
rmcilroy authored
Remove some Ignition skips in mjsunit and cctest, and replace a few others with fails now that the there is more debugger support. BUG=v8:4680 LOG=N Review URL: https://codereview.chromium.org/1689993002 Cr-Commit-Position: refs/heads/master@{#33932}
-
mstarzinger authored
Reland of [interpreter] Make d8's TryCatch block be verbose. (patchset #1 id:1 of https://codereview.chromium.org/1694523003/ ) Reason for revert: No fix needed, original CL was perfectly fine! Original issue's description: > Revert of [interpreter] Make d8's TryCatch block be verbose. (patchset #3 id:40001 of https://codereview.chromium.org/1691723002/ ) > > Reason for revert: > [Sheriff] Speculative revert. Breaks > https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/builds/3944 > > Somehow https://chromium.googlesource.com/v8/v8/+/3a2fbc3a4ed2802b52659df2209b930200d63b29 seems to hide it again and then https://chromium.googlesource.com/v8/v8/+/699e1081a658ff62df6df1efe7db2b250111dedd lets it show up again. > > Reproduced locally. > > Original issue's description: > > [interpreter] Make d8's TryCatch block be verbose. > > > > This changes "d8" to no longer report exceptions as being "caught" when > > it comes to the catch prediction mechanism in our debugger. This treats > > scripts as being truly top-level when it comes to exception handling and > > will allow us to properly test the catch prediction mechanism using just > > mjsunit tests alone. > > > > R=yangguo@chromium.org > > BUG=v8:4674 > > LOG=n > > > > Committed: https://crrev.com/fb1de271a6bc2c89a1682db8c151cf5fcda86c45 > > Cr-Commit-Position: refs/heads/master@{#33898} > > TBR=yangguo@chromium.org,mstarzinger@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:4674 > > Committed: https://crrev.com/f9eef1f33d2e5cde8cb948424e7ebf509090aa59 > Cr-Commit-Position: refs/heads/master@{#33921} TBR=yangguo@chromium.org,machenbach@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4674 Review URL: https://codereview.chromium.org/1692133002 Cr-Commit-Position: refs/heads/master@{#33931}
-
rmcilroy authored
BUG=v8:4680 LOG=N Review URL: https://codereview.chromium.org/1692693004 Cr-Commit-Position: refs/heads/master@{#33930}
-
Michael Achenbach authored
Cr-Commit-Position: refs/heads/master@{#33929}
-
Benedikt Meurer authored
TBR=machenbach@chromium.org Review URL: https://codereview.chromium.org/1694443003 . Cr-Commit-Position: refs/heads/master@{#33928}
-
yangguo authored
R=rossberg@chromium.org BUG=v8:2952 LOG=N Committed: https://crrev.com/3a2fbc3a4ed2802b52659df2209b930200d63b29 Cr-Commit-Position: refs/heads/master@{#33899} Review URL: https://codereview.chromium.org/1689113002 Cr-Commit-Position: refs/heads/master@{#33927}
-
jarin authored
TBR=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1695433002 Cr-Commit-Position: refs/heads/master@{#33926}
-
bmeurer authored
The FastNewStrictArgumentsStub is very similar to the recently added FastNewRestParameterStub, it's actually almost a copy of it, except that it doesn't have the fast case we have for the empty rest parameter. This patch improves strict arguments in TurboFan and fullcodegen by up to 10x compared to the previous version. Also introduce proper JSSloppyArgumentsObject and JSStrictArgumentsObject for the in-object properties instead of having them as constants in the Heap class. Drive-by-fix: Use this stub and the FastNewRestParameterStub in the interpreter to avoid the runtime call overhead for strict arguments and rest parameter creation. R=jarin@chromium.org TBR=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1693513002 Cr-Commit-Position: refs/heads/master@{#33925}
-
v8-autoroll authored
Rolling v8/buildtools to ef3e530703353ba8ad094694ba7c156daddbddeb TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review URL: https://codereview.chromium.org/1692523003 Cr-Commit-Position: refs/heads/master@{#33924}
-
bradnelson authored
Require that foreign variable imports have a correct type annotation, _including_ checking the value of the multiplier is 0 or 1.0 as appropriate. BUG= https://code.google.com/p/v8/issues/detail?id=4203 TEST=test-asm-validator R=aseemgarg@chromium.org,titzer@chromium.org LOG=N Review URL: https://codereview.chromium.org/1691723004 Cr-Commit-Position: refs/heads/master@{#33923}
-
adamk authored
Revert of [interpreter] Correctly thread through catch prediction. (patchset #1 id:1 of https://codereview.chromium.org/1690973002/ ) Reason for revert: Depends on the reverted https://codereview.chromium.org/1691723002 Original issue's description: > [interpreter] Correctly thread through catch prediction. > > This change correctly sets the {CatchPrediction} field in exception > handler tables for bytecode and optimized code. It also adds tests > independent of promise handling for this prediction, to ensure all our > backends are in sync on their prediction. > > R=rmcilroy@chromium.org,yangguo@chromium.org > TEST=mjsunit/compiler/debug-catch-prediction > BUG=v8:4674 > LOG=n > > Committed: https://crrev.com/ba55f5594cb0b4a1a1e9b35d87fe54afe2d93f3b > Cr-Commit-Position: refs/heads/master@{#33906} TBR=rmcilroy@chromium.org,yangguo@chromium.org,mstarzinger@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4674 Review URL: https://codereview.chromium.org/1695613002 Cr-Commit-Position: refs/heads/master@{#33922}
-
- 11 Feb, 2016 13 commits
-
-
machenbach authored
Revert of [interpreter] Make d8's TryCatch block be verbose. (patchset #3 id:40001 of https://codereview.chromium.org/1691723002/ ) Reason for revert: [Sheriff] Speculative revert. Breaks https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/builds/3944 Somehow https://chromium.googlesource.com/v8/v8/+/3a2fbc3a4ed2802b52659df2209b930200d63b29 seems to hide it again and then https://chromium.googlesource.com/v8/v8/+/699e1081a658ff62df6df1efe7db2b250111dedd lets it show up again. Reproduced locally. Original issue's description: > [interpreter] Make d8's TryCatch block be verbose. > > This changes "d8" to no longer report exceptions as being "caught" when > it comes to the catch prediction mechanism in our debugger. This treats > scripts as being truly top-level when it comes to exception handling and > will allow us to properly test the catch prediction mechanism using just > mjsunit tests alone. > > R=yangguo@chromium.org > BUG=v8:4674 > LOG=n > > Committed: https://crrev.com/fb1de271a6bc2c89a1682db8c151cf5fcda86c45 > Cr-Commit-Position: refs/heads/master@{#33898} TBR=yangguo@chromium.org,mstarzinger@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4674 Review URL: https://codereview.chromium.org/1694523003 Cr-Commit-Position: refs/heads/master@{#33921}
-
Adam Klein authored
The name must be flattened before allocating the SFI to avoid the GC seeing the uninitialized state. BUG=v8:4659 LOG=n TBR=rossberg@chromium.org Review URL: https://codereview.chromium.org/1688043005 . Cr-Commit-Position: refs/heads/master@{#33920}
-
adamk authored
BUG=v8:3699 LOG=y Review URL: https://codereview.chromium.org/1674443004 Cr-Commit-Position: refs/heads/master@{#33919}
-
adamk authored
The path used by that option only comes into play when default parameters are allowed but destructuring assignment is disallowed. Removing it allows the removal of one implementation of ParseExpression, and makes it clearer which code will be dead once all the destructuring flags are removed. Also made the |flags| param strongly typed instead of an int. Review URL: https://codereview.chromium.org/1691653002 Cr-Commit-Position: refs/heads/master@{#33918}
-
verwaest authored
[runtime] Speed up allocating instances in the runtime by having a quick-check for inobject slack tracking. This speeds up https://github.com/kpdecker/six-speed/blob/master/tests/object-assign/object-assign.es5 by over 5%. Review URL: https://codereview.chromium.org/1690923002 Cr-Commit-Position: refs/heads/master@{#33917}
-
verwaest authored
[runtime/heap] Introduce CopyFixedArrayUpTo to match CopyFixedArrayAndGrow, copying to a smaller array. This allows the helper to avoid write barriers while copying, speeding up Object.keys by 5-10%. BUG= Review URL: https://codereview.chromium.org/1690953002 Cr-Commit-Position: refs/heads/master@{#33916}
-
adamk authored
Several minor cleanups to error handling in expression parsing: - Remove duplication of binding and assignment error reporting. - RecordBindingPatternError calls are changed to shorter BindingPatternUnexpectedToken calls where possible. - No-op error recording calls are removed. Review URL: https://codereview.chromium.org/1688833004 Cr-Commit-Position: refs/heads/master@{#33915}
-
adamk authored
This fact is depended upon by, at least, Parser::ParseLazy, and quite likely by other code. There was already code in %FunctionSetName enforcing this invariant. This patch adds similar code to Factory::NewSharedFunctionInfo(). BUG=v8:4659 LOG=n Review URL: https://codereview.chromium.org/1686193003 Cr-Commit-Position: refs/heads/master@{#33914}
-
balazs.kilvady authored
BUG= Review URL: https://codereview.chromium.org/1691763002 Cr-Commit-Position: refs/heads/master@{#33913}
-
akos.palfi authored
Fixes a register-clobbering problem. The Branch() instruction can overwrite the 'at' register, so it can't be used as scratch in Allocate(). Added DCHECK to avoid this in the future. BUG= Review URL: https://codereview.chromium.org/1687173006 Cr-Commit-Position: refs/heads/master@{#33912}
-
ishell authored
Instead of doing a full function body traversal we collect return expressions and mark them after function parsing. And since we rewrite do-expressions so that the result is explicitly assigned to a result variable the statements marking will never hit so I removed it from the AST. BUG=v8:4698 LOG=N Review URL: https://codereview.chromium.org/1693523002 Cr-Commit-Position: refs/heads/master@{#33911}
-
bradnelson authored
Landing this again, excluding arm as it fail and arm64 out of caution that other wasm arm64 tests are also disabled. BUG= https://code.google.com/p/v8/issues/detail?id=4203 TEST=mjsunit/asm-wasm R=titzer@chromium.org LOG=N Review URL: https://codereview.chromium.org/1694493002 Cr-Commit-Position: refs/heads/master@{#33910}
-
ssanfilippo authored
Apparently, this BytecodeArrayIterator method was missed during the previous refactor. No other (collateral) change was done. BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1691433002 Cr-Commit-Position: refs/heads/master@{#33909}
-