- 27 Jan, 2017 28 commits
-
-
julien.gilli authored
Previously (and still currently for some of them), post-mortem debugging tools were using StandardFrameConstants::kContextOffset as the offset to get the value that represents a frame's type. However since https://codereview.chromium.org/1696043002, a new, more general offset was introduced: CommonFrameConstants::kContextOrFrameTypeOffset. In order for post-mortem debugging tools to use this constant, it is included in the generated post-mortem metadata. R=danno@chromium.org,bmeurer@chromium.org BUG= Review-Url: https://codereview.chromium.org/2655553006 Cr-Commit-Position: refs/heads/master@{#42746}
-
bjaideep authored
Port 69747e26 Original Commit Message: We turn a JSCallFunction node for f.apply(receiver, arguments) into a JSCallForwardVarargs node, when the arguments refers to the arguments of the outermost optimized code object, i.e. not an inlined arguments, and the apply method refers to Function.prototype.apply, and there's no other user of arguments except in frame states. We also replace the arguments node in the graph with a marker for the Deoptimizer similar to Crankshaft to make sure we don't materialize unused arguments just for the sake of deoptimization. We plan to replace this with a saner EscapeAnalysis based solution soon. R=bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG=v8:5267,v8:5726 LOG=N Review-Url: https://codereview.chromium.org/2656363002 Cr-Commit-Position: refs/heads/master@{#42745}
-
marja authored
This unifies the behavior of Scope::DeclareVariableName with Scope::DeclareVariable. BUG=v8:5516 Review-Url: https://codereview.chromium.org/2658063005 Cr-Commit-Position: refs/heads/master@{#42744}
-
machenbach authored
BUG=chromium:685561 NOTRY=true TBR=danno@chromium.org, kjellander@chromium.org Review-Url: https://codereview.chromium.org/2650383008 Cr-Commit-Position: refs/heads/master@{#42743}
-
marja authored
BUG=v8:5402 Review-Url: https://codereview.chromium.org/2663513002 Cr-Commit-Position: refs/heads/master@{#42742}
-
ivica.bogosavljevic authored
Some tests require a lot of memory and they fail on buildbots if they run in parallel with other tests of the same kind. We try to limit this by disabling multiple vairants of the same tests, assuming this would stop the failures in most of the cases. BUG= Review-Url: https://codereview.chromium.org/2653603002 Cr-Commit-Position: refs/heads/master@{#42741}
-
marja authored
These headers only need forward declarations. BUG=v8:5294 Review-Url: https://codereview.chromium.org/2654253002 Cr-Commit-Position: refs/heads/master@{#42740}
-
marja authored
BUG=v8:5516 Review-Url: https://codereview.chromium.org/2659053002 Cr-Commit-Position: refs/heads/master@{#42739}
-
mstarzinger authored
This makes sure all use-site of {ObjectLiteral::constant_properties} are adapted to use the correct {BoilerplateDescription} type instead of just the {FixedArray} base type. R=bmeurer@chromium.org Review-Url: https://codereview.chromium.org/2659603003 Cr-Commit-Position: refs/heads/master@{#42738}
-
tebbi authored
R=mstarzinger@chromium.org BUG=chromium:683566 Review-Url: https://codereview.chromium.org/2653953010 Cr-Commit-Position: refs/heads/master@{#42737}
-
bmeurer authored
The StringIndexOf operation is pure on the JS level, but the actual stub call must be in the effect chain later so that the Scheduler doesn't place it inside some allocation region (The %StringIndexOf runtime function may trigger a GC for string flattening). BUG=chromium:685580 R=jarin@chromium.org Review-Url: https://codereview.chromium.org/2657243002 Cr-Commit-Position: refs/heads/master@{#42736}
-
ishell authored
Basically, with --deopt-every-n-times flag all bets are off since the functions can be optimized and deoptimized at any time. BUG=v8:5890 Review-Url: https://codereview.chromium.org/2655263004 Cr-Commit-Position: refs/heads/master@{#42735}
-
danno authored
BUG=chromium:685561 Review-Url: https://codereview.chromium.org/2650273006 Cr-Commit-Position: refs/heads/master@{#42734}
-
danno authored
Review-Url: https://codereview.chromium.org/2661483002 Cr-Commit-Position: refs/heads/master@{#42733}
-
predrag.rudic authored
This patch fixes an issue with compilation with MIPS Android compiler NDK r12b, gcc version mipsel-linux-android-g++ (GCC) 4.9.x 20150123 (prerelease). The problem has been reported to the compiler team, the workaround should be reverted when the issue with compiler is resolved. BUG= Review-Url: https://codereview.chromium.org/2652673002 Cr-Commit-Position: refs/heads/master@{#42732}
-
ishell authored
The mentioned asserts did not work properly with interpreted and turbofanned functions. To fix this issue %GetOptimizationStatus() now returns a set of flags instead of a single value. This CL also adds more helper functions to mjsunit, like isNeverOptimize(), isAlwaysOptimize(), isOptimized(fun), etc. BUG=v8:5890 Review-Url: https://codereview.chromium.org/2654733004 Cr-Original-Commit-Position: refs/heads/master@{#42703} Committed: https://chromium.googlesource.com/v8/v8/+/d1ddec785725a184fe6d01bd0813262e3ba24966 Review-Url: https://codereview.chromium.org/2654733004 Cr-Commit-Position: refs/heads/master@{#42731}
-
clemensh authored
Always execute the implicit return if we fell off the function bytes. This is not considered an additional "step" as it is not executing a wasm instruction. Otherwise, we might pause at an invalid position (one after the function bytes). R=titzer@chromium.org BUG=v8:5822 Review-Url: https://codereview.chromium.org/2650293003 Cr-Commit-Position: refs/heads/master@{#42730}
-
clemensh authored
This also fixes bugs found by the new test. It only tests stepping inside of wasm code. Wasm to JS and vice versa will follow in another CL. R=yangguo@chromium.org, titzer@chromium.org, kozyatinskiy@chromium.org BUG=v8:5822 Review-Url: https://codereview.chromium.org/2651043004 Cr-Commit-Position: refs/heads/master@{#42729}
-
machenbach authored
BUG=chromium:685633 NOTRY=true Review-Url: https://codereview.chromium.org/2654273004 Cr-Commit-Position: refs/heads/master@{#42728}
-
danno authored
The v8 waterfall currently doesn't run MIPS tests in the debug configuration, so although there are tests that would have found them, they currently are not running in the standard CI setup. A bug has been fixed to add the debug configuration of MIPS & MIPS64, too. Review-Url: https://codereview.chromium.org/2654263002 Cr-Commit-Position: refs/heads/master@{#42727}
-
machenbach authored
BUG=chromium:685633 NOTRY=true TBR=yangguo@chromium.org, jarin@chromium.org Review-Url: https://codereview.chromium.org/2658223002 Cr-Commit-Position: refs/heads/master@{#42726}
-
yangguo authored
Previously, when restarting a frame, we would rewrite all frames between the debugger activation and the frame to restart to squash them, and replace the return address with that of a builtin to leave that rewritten frame, and restart the function by calling it. We now simply remember the frame to drop to, and upon returning from the debugger, we check whether to drop the frame, load the new FP, and restart the function. R=jgruber@chromium.org, mstarzinger@chromium.org BUG=v8:5587 Review-Url: https://codereview.chromium.org/2636913002 Cr-Commit-Position: refs/heads/master@{#42725}
-
yukishiino authored
As Blink needs to set Symbol.toPrimitive, exposes the symbol in C++ APIs as Symbol::GetToPrimitive. BUG=chromium:680409 Review-Url: https://codereview.chromium.org/2657933003 Cr-Commit-Position: refs/heads/master@{#42724}
-
danno authored
Review-Url: https://codereview.chromium.org/2655243003 Cr-Commit-Position: refs/heads/master@{#42723}
-
clemensh authored
and add an inspector test for it. Also test that a breakpoint can be set on each reported position, and that it is also hit during execution. This CL also fixes two little things which were uncovered by the new test. R=yangguo@chromium.org, titzer@chromium.org, kozyatinskiy@chromium.org BUG=v8:5822 Review-Url: https://codereview.chromium.org/2655653003 Cr-Commit-Position: refs/heads/master@{#42722}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/6f17189..c3da457 Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/e1e778d..683b84f Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/017f4e5..dbc7572 TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review-Url: https://codereview.chromium.org/2650853009 Cr-Commit-Position: refs/heads/master@{#42721}
-
alph authored
BUG=v8:5753 Review-Url: https://codereview.chromium.org/2655963003 Cr-Commit-Position: refs/heads/master@{#42720}
-
ahaas authored
Reloc info often means that the constant will be patched later, and for this patching we have to make sure that there is enough space in the code for the new value. R=bmeurer@chromium.org, titzer@chromium.org, gdeepti@chromium.org BUG=chromium:684407 TEST=cctest/test-assembler-x64/Regression684407 Review-Url: https://codereview.chromium.org/2655213003 Cr-Commit-Position: refs/heads/master@{#42719}
-
- 26 Jan, 2017 12 commits
-
-
jbroman authored
wasm::ErrorThrower doesn't actually throw exceptions, it just schedules them. As a result, this exception isn't handled properly by code which expects ValueDeserializer to actually throw. For instance, the unit tests use a TryCatch to catch and handle expected exceptions in unit tests. Before this patch, I see local unit test failures because a wasm decode test schedules one, but it isn't caught (and instead causes Context::New to fail at the beginning of the next test). BUG=685713 Review-Url: https://codereview.chromium.org/2659483004 Cr-Commit-Position: refs/heads/master@{#42718}
-
gdeepti authored
Memory.Grow should detach the ArrayBuffer associated with the Mem object after Grow. Currently, when guard pages are enabled protection is changed to make more of the buffer accessible. This does not work for when the buffer should be detached after grow, because the memory object has a reference to the same buffer befor/after grow. R=titzer@chromium.org, eholk@chromium.org Review-Url: https://codereview.chromium.org/2653183003 Cr-Commit-Position: refs/heads/master@{#42717}
-
mtrofin authored
This is a flag useful for testing/perf investigations for asm-wasm. We can dump the internal representation of a asm.js module (when asm-wasm is enabled with --validate-asm) using --dump-wasm-module. We can't pick that module afterwards because it contains non-compliant opcodes - used as implementation detail of our asm-wasm pipeline. This flag forces asm.js origin on the decoder. BUG= Review-Url: https://codereview.chromium.org/2656103003 Cr-Commit-Position: refs/heads/master@{#42716}
-
kozyatinskiy authored
BUG=v8:5842, chromium:583193 R=yangguo@chromium.org,dgozman@chromium.org,alph@chromium.org Review-Url: https://codereview.chromium.org/2656743003 Cr-Commit-Position: refs/heads/master@{#42715}
-
kozyatinskiy authored
- and fixed test. BUG=v8:5842, chromium:583193 R=yangguo@chromium.org,dgozman@chromium.org,alph@chromium.org Review-Url: https://codereview.chromium.org/2651683005 Cr-Commit-Position: refs/heads/master@{#42714}
-
bmeurer authored
BUG=chromium:685634 R=ishell@chromium.org Review-Url: https://codereview.chromium.org/2658853002 Cr-Commit-Position: refs/heads/master@{#42713}
-
brettw authored
Chrome now uses the default_args system for specifying its own definitions of these variables so the separate file in build_overrides is no longer necessary. BUG=684096 Review-Url: https://codereview.chromium.org/2652263003 Cr-Commit-Position: refs/heads/master@{#42712}
-
leszeks authored
There is a print in AstNumbering which needs to dereference the string containing the function name, which clashes with the disallowed handle reference scope used to allow ast-numbering to run off-thread. This could be fixed by pushing the print out of this function, and somehow propagating disable_crankshaft_reason out of the visitor, but in reality this check will soon be removed anyway, and until it is this function will be on the main thread, so we may as well just hack it. Review-Url: https://codereview.chromium.org/2653953006 Cr-Commit-Position: refs/heads/master@{#42711}
-
mtrofin authored
This corrects the case when we need to allocate a blocked register, but the blockage happens after a use as an instruction input, and there's no place to split before that. BUG=v8:5888 Review-Url: https://codereview.chromium.org/2652153005 Cr-Original-Commit-Position: refs/heads/master@{#42706} Committed: https://chromium.googlesource.com/v8/v8/+/ca779b29a60785d962d7cd636f6b0f09e66130b3 Review-Url: https://codereview.chromium.org/2652153005 Cr-Commit-Position: refs/heads/master@{#42710}
-
ishell authored
This CL adds --crankshaft and --no-always-opt flags to the tests that use assertOptimized() and assertUnoptimized() respectively. This CL also adds presubmit checks that ensure that tests have the proper flags set. BUG=v8:5890 Review-Url: https://codereview.chromium.org/2653753007 Cr-Commit-Position: refs/heads/master@{#42709}
-
bjaideep authored
Port f9367847 Port bf782ec5 Original Commit Message: We can share almost all of the architecture-specific builtin code with super-call-with-spread. Info to port-writers: The code in CheckSpreadAndPushToStack has changed slightly from what was in Generate_ConstructWithSpread, in that we take the length of the spreaded parameters from the JSArray rather than the FixedArray backing store. R=petermarshall@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG=v8:5511 LOG=N Review-Url: https://codereview.chromium.org/2655043004 Cr-Commit-Position: refs/heads/master@{#42708}
-
ahaas authored
Revert of [turbofan] Correct regalloc blocked register behavior (patchset #2 id:60001 of https://codereview.chromium.org/2652153005/ ) Reason for revert: Introduces new crashers, e.g. load("test/mjsunit/wasm/wasm-constants.js"); load("test/mjsunit/wasm/wasm-module-builder.js"); (function() { var builder = new WasmModuleBuilder(); builder.addMemory(16, 32, false); builder.addFunction("test", kSig_i_iii) .addBodyWithEnd([ // body: kExprI64Const, 0x42, kExprI64Const, 0x7a, kExprI64Ctz, kExprI64Mul, kExprI64Ctz, kExprI64Const, 0x41, kExprI64Ctz, kExprI64Ctz, kExprI64Shl, kExprI64Const, 0x41, kExprI64Ctz, kExprI64Ctz, kExprI64Shl, kExprF32SConvertI64, kExprUnreachable, kExprEnd, // @20 ]) .exportFunc(); var module = builder.instantiate(); module.exports.test(1, 2, 3); })(); Original issue's description: > [turbofan] Correct regalloc blocked register behavior > > > This corrects the case when we need to allocate a > blocked register, but the blockage happens after a > use as an instruction input, and there's no place to > split before that. > > BUG=v8:5888 > > Review-Url: https://codereview.chromium.org/2652153005 > Cr-Commit-Position: refs/heads/master@{#42706} > Committed: https://chromium.googlesource.com/v8/v8/+/ca779b29a60785d962d7cd636f6b0f09e66130b3 TBR=bmeurer@chromium.org,jarin@chromium.org,mtrofin@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5888 Review-Url: https://codereview.chromium.org/2654993007 Cr-Commit-Position: refs/heads/master@{#42707}
-