- 26 Jan, 2017 32 commits
-
-
mstarzinger authored
TBR=mvstanton@chromium.org Review-Url: https://codereview.chromium.org/2658463004 Cr-Commit-Position: refs/heads/master@{#42702}
-
danno authored
When testing turning --verify-csa off to generate better code for builtins, mips started failing mksnapshot due to an assert in instruction-selection-mips.cc's VisitBinop routine, which creates a buffer to hold InstructionOperand of size 4 that would be overflowed. This fix is somewhat speculative, assuming that either the LHS or the RHS operand of a mips binary op can be an immediate (as opposed to the current code which seems to have a code path where both the left and right operands are added, leading to the buffer overflow). With this fix, the assert doesn't fire and all of the mips tests run through successfully in debug mode. R=ishell@chromium.org TBR=dusan.m.milosavljevic@gmail.com Review-Url: https://codereview.chromium.org/2647283009 Cr-Commit-Position: refs/heads/master@{#42701}
-
machenbach authored
BUG=chromium:685561 NOTRY=true TBR=danno@chromium.org, kjellander@chromium.org Review-Url: https://codereview.chromium.org/2652653013 Cr-Commit-Position: refs/heads/master@{#42700}
-
bmeurer authored
The instance type of an object cannot change, only the concrete map might. So when searching for an instance type witness, we don't need to pay attention to potentially side-effecting nodes. R=mstarzinger@chromium.org Review-Url: https://codereview.chromium.org/2652893011 Cr-Commit-Position: refs/heads/master@{#42699}
-
machenbach authored
This adds MB configs for the four verify-csa bots (gn only). BUG=chromium:685561 NOTRY=true NOTREECHECKS=true TBR=danno@chromium.org, kjellander@chromium.org Review-Url: https://codereview.chromium.org/2659583002 Cr-Commit-Position: refs/heads/master@{#42698}
-
mstarzinger authored
This makes sure that static guarantees about object maps are not used accross operations on the effect chain that might trigger a map change. Such operations are missing the {Operator::kNoWrite} property. R=bmeurer@chromium.org TEST=mjsunit/regress/regress-crbug-685506 BUG=chromium:685506 Review-Url: https://codereview.chromium.org/2653273004 Cr-Commit-Position: refs/heads/master@{#42697}
-
marja authored
(Only in debug mode.) BUG=v8:5516 Review-Url: https://codereview.chromium.org/2657943003 Cr-Commit-Position: refs/heads/master@{#42696}
-
cbruni authored
Review-Url: https://codereview.chromium.org/2638393002 Cr-Commit-Position: refs/heads/master@{#42695}
-
ahaas authored
According to the WebAssembly spec no arithmetic operation should ever return a signalling NaN. With the constant folding in V8, however, it was possible that some arithmetic operations were elided, and if the input of the arithmetic operation was a signalling NaN, then also the result was the same signalling NaN. This CL removes some constant folding optimizations and adjusts others so that even with constant folding the result of an arithmetic operation is never a signalling NaN. R=titzer@chromium.org, rossberg@chromium.org, bmeurer@chromium.org Review-Url: https://codereview.chromium.org/2647353007 Cr-Commit-Position: refs/heads/master@{#42694}
-
mstarzinger authored
R=jarin@chromium.org Review-Url: https://codereview.chromium.org/2655533003 Cr-Commit-Position: refs/heads/master@{#42693}
-
mvstanton authored
This is a remnant of a previous design to a solution yet to be checked in. BUG=v8:5456 R=bmeurer@chromium.org Review-Url: https://codereview.chromium.org/2650853008 Cr-Commit-Position: refs/heads/master@{#42692}
-
bmeurer authored
BUG=v8:5267 R=jarin@chromium.org Review-Url: https://codereview.chromium.org/2652273003 Cr-Commit-Position: refs/heads/master@{#42691}
-
mvstanton authored
Small bugfix. BUG= Review-Url: https://codereview.chromium.org/2656903003 Cr-Commit-Position: refs/heads/master@{#42690}
-
petermarshall authored
We compare ES5, ES6 and a Babel transpilation of the ES6 test. BUG=v8:5894 Review-Url: https://codereview.chromium.org/2655063003 Cr-Commit-Position: refs/heads/master@{#42689}
-
ahaas authored
This CL turns on trap-if by default, and it changes the tests so that traps in the cctests are also tested without trap-if. R=titzer@chromium.org, clemensh@chromium.org, bradnelson@chromium.org Review-Url: https://codereview.chromium.org/2647323002 Cr-Original-Commit-Position: refs/heads/master@{#42603} Committed: https://chromium.googlesource.com/v8/v8/+/01c87ebe70fb569205432597f3105c708bba0fef Review-Url: https://codereview.chromium.org/2647323002 Cr-Commit-Position: refs/heads/master@{#42688}
-
ahaas authored
The reference map was only recorded when a frame was entered for the runtime call, but it is also needed when the frame already exists. R=titzer@chromium.org Review-Url: https://codereview.chromium.org/2655243002 Cr-Commit-Position: refs/heads/master@{#42687}
-
rmcilroy authored
Disabled until clusterfuzz issues are sorted. BUG=v8:5203, v8:5215, chromium:685515, chromium:685476 Review-Url: https://codereview.chromium.org/2658803002 Cr-Commit-Position: refs/heads/master@{#42686}
-
marja authored
- Declaring a variable called "this" for preparsed functions was unnecessary; DeclarationScope ctor already adds the variable. - "arguments" for preparsed scopes need to be declared after parsing the function, like it's done in the parser. - Now arguments_ can be the dummy variable, so adapted code to it. - A previous refactoring CL ( https://codereview.chromium.org/2638333002 ) was incomplete; it had added ParserBase::ParseFunctionBody but PreParser::ParseFunction didn't call it. This CL completes that work. This is needed for getting "arguments" declared properly for preparsed functions. - AllocateVariablesRecursively is already called for preparsed scopes (without this CL, that is), and it bails out early. However, before the bailout it used to dcheck num_stack_slots_ == 0; that is no longer true since we've done scope analysis for preparsed scopes. - Test fix: we cannot have any lazy inner functions in the test, except the topmost lazy inner function. Such functions would also be lazy in the parser case, and the parser would just throw away their variables. Then the test tries to verify the preparsed data against the scopes without variables and fails. - Disabled a test w/ a sloppy block function, will get that working again in the upcoming CLs. BUG=v8:5516 Review-Url: https://codereview.chromium.org/2655623005 Cr-Commit-Position: refs/heads/master@{#42685}
-
mvstanton authored
The InterpreterTester class cobbles together a JSFunction from a manually created bytecode and feedback vector. However it's fragile against design changes in the way literal arrays and feedback vectors are handled. It's better to let it hand in a feedback vector metadata object, and allow the system to create the vector from that. BUG=v8:5456 Review-Url: https://codereview.chromium.org/2652893010 Cr-Commit-Position: refs/heads/master@{#42684}
-
ahaas authored
First issue I found with my local fuzzing. R=titzer@chromium.org BUG=v8:5884 Review-Url: https://codereview.chromium.org/2656563003 Cr-Commit-Position: refs/heads/master@{#42683}
-
kozyatinskiy authored
With creation frame we can show additional information with description of each async stack trace, which could help user to understand where promises were chained. At least in case of Promise.resolve().then(foo1).then(foo2) we would be able to show following stack trace for break in foo2 callback: foo2 (test.js:14:2) -- Promise.resolve (test.js:29:14)-- -- Promise.resolve (test.js:28:14)-- promiseThen (test.js:30:2) More details: https://docs.google.com/document/d/1u19N45f1gSF7M39mGsycJEK3IPyJgIXCBnWyiPeuJFE BUG=v8:5738 R=dgozman@chromium.org,gsathya@chromium.org Review-Url: https://codereview.chromium.org/2648873002 Cr-Commit-Position: refs/heads/master@{#42682}
-
jgruber authored
Revert of [regexp] Create property on result for each named capture (patchset #9 id:160001 of https://codereview.chromium.org/2630233003/ ) Reason for revert: Some heap tests are broken leading to failures on nosnap builds: https://build.chromium.org/p/client.v8.ports/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20nosnap%20-%20debug/builds/3677 Reverting again until tests are fixed to keep bots green. Original issue's description: > [regexp] Store named captures on the regexp result > > This implements storing named captures on the regexp result object. > For instance, /(?<a>.)/u.exec("b") will return a result such that: > > result.group.a // "b" > > https://tc39.github.io/proposal-regexp-named-groups/ > > BUG=v8:5437 > > Review-Url: https://codereview.chromium.org/2630233003 > Cr-Original-Original-Commit-Position: refs/heads/master@{#42532} > Committed: https://chromium.googlesource.com/v8/v8/+/70000946eb2a9155679528702a766219a1fcf154 > Review-Url: https://codereview.chromium.org/2630233003 > Cr-Original-Commit-Position: refs/heads/master@{#42570} > Committed: https://chromium.googlesource.com/v8/v8/+/ee94fa11ed63477393c6534c352ebac6e502396c > Review-Url: https://codereview.chromium.org/2630233003 > Cr-Commit-Position: refs/heads/master@{#42676} > Committed: https://chromium.googlesource.com/v8/v8/+/8bf52534f6bf86821a1589dcbcb7335052c1f94f TBR=yangguo@chromium.org,littledan@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5437 Review-Url: https://codereview.chromium.org/2654233002 Cr-Commit-Position: refs/heads/master@{#42681}
-
bmeurer authored
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=jarin@chromium.org BUG=v8:5267,v8:5726 Review-Url: https://codereview.chromium.org/2655233002 Cr-Commit-Position: refs/heads/master@{#42680}
-
mstarzinger authored
This makes sure that the deoptimizer preserves the exact bit pattern of floating-point values (both 32-bit and 64-bit) up to the point where a potential {HeapNumber} is allocated. It in turn allows us to correctly recognize the {hole_nan_value} when stored into a {FixedDouleArray}. R=jarin@chromium.org TEST=mjsunit/regress/regress-crbug-684208 BUG=chromium:684208 Review-Url: https://codereview.chromium.org/2652303002 Cr-Commit-Position: refs/heads/master@{#42679}
-
bradnelson authored
Also show size when --trace-asm-time is on. BUG= R=mtrofin@chromium.org Review-Url: https://codereview.chromium.org/2658703003 Cr-Commit-Position: refs/heads/master@{#42678}
-
bradnelson authored
In practice, Emscripten seems to emit cond?+a:+b type return expressions. This is not allowed by the spec or errata, but we need to support it for compatibility. Similar patterns with ints / signed, do not seem to be supported. BUG=v8:5891 R=mtrofin@chromium.org,aseemgarg@chromium.org Review-Url: https://codereview.chromium.org/2648353010 Cr-Commit-Position: refs/heads/master@{#42677}
-
jgruber authored
This implements storing named captures on the regexp result object. For instance, /(?<a>.)/u.exec("b") will return a result such that: result.group.a // "b" https://tc39.github.io/proposal-regexp-named-groups/ BUG=v8:5437 Review-Url: https://codereview.chromium.org/2630233003 Cr-Original-Original-Commit-Position: refs/heads/master@{#42532} Committed: https://chromium.googlesource.com/v8/v8/+/70000946eb2a9155679528702a766219a1fcf154 Review-Url: https://codereview.chromium.org/2630233003 Cr-Original-Commit-Position: refs/heads/master@{#42570} Committed: https://chromium.googlesource.com/v8/v8/+/ee94fa11ed63477393c6534c352ebac6e502396c Review-Url: https://codereview.chromium.org/2630233003 Cr-Commit-Position: refs/heads/master@{#42676}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/24cce87..6f17189 Rolling v8/buildtools: https://chromium.googlesource.com/chromium/buildtools/+log/8e94621..a7cc7a3 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/68adbeb..017f4e5 TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review-Url: https://codereview.chromium.org/2651303002 Cr-Commit-Position: refs/heads/master@{#42675}
-
bbudge authored
- Adds Int16x8, Int8x16 types. - Adds neg, abs unary ops. - Adds add, sub, mul, and signed / unsigned min / max, comparison ops. LOG=N BUG=v8:4124 Review-Url: https://codereview.chromium.org/2638133002 Cr-Commit-Position: refs/heads/master@{#42674}
-
jing.bao authored
BUG= Review-Url: https://codereview.chromium.org/2652793004 Cr-Commit-Position: refs/heads/master@{#42673}
-
luoe authored
BUG=chromium:683335 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel Review-Url: https://codereview.chromium.org/2651153004 Cr-Commit-Position: refs/heads/master@{#42672}
-
gsathya authored
Changes output from CALL RUNTIME (context function) code = 0x3e9ea90a2049 at -1 to CALL RUNTIME async_function_promise_create code = 0x3e9ea90a2049 at -1 This makes the ast more useful. I didn't annotate all the runtime calls, only some for now. We can annotate others if necessary. Review-Url: https://codereview.chromium.org/2654113002 Cr-Commit-Position: refs/heads/master@{#42671}
-
- 25 Jan, 2017 8 commits
-
-
kozyatinskiy authored
This action was used by inspector for blackboxing and isn't needed with new blackboxing implementation inside V8. BUG=none R=yangguo@chromium.org,clemensh@chromium.org TBR=bmeurer@chromium.org Review-Url: https://codereview.chromium.org/2650943011 Cr-Commit-Position: refs/heads/master@{#42670}
-
jyan authored
List of items: 1. Avoid zero-extending for subsequent 32-bit operations if current operation does not change upper 32-bit or does zero-extending. 2. Match complex address mode for binary operation where possible (eg. use Add R,MEM). 3. Detect instruction forms in selector. Eg. kAllowRRR, kAllowRM 4. Optimize sequence for Int32MulWithOverflow, Int32Div, etc. 5. Remove Not32/Not64 which is the same as XOR R=bjaideep@ca.ibm.com, joransiu@ca.ibm.com BUG= Review-Url: https://codereview.chromium.org/2649113007 Cr-Commit-Position: refs/heads/master@{#42669}
-
kozyatinskiy authored
Current state and proposed changes for blackboxing: https://docs.google.com/document/d/1hnzaXPAN8_QC5ENxIgxgMNDbXLraM_OXT73rAyijTF8/edit?usp=sharing BUG=v8:5842,chromium:583193 R=yangguo@chromium.org,dgozman@chromium.org,alph@chromium.org Review-Url: https://codereview.chromium.org/2648353006 Cr-Commit-Position: refs/heads/master@{#42668}
-
rmcilroy authored
Enable enqueueing of eager inner function compilation onto the compiler dispatcher. This enables these tasks to be performed in parallel to compilation of the outer functio (only for Ignition functions). We currently synchronize to ensure all inner function compilations are complete before executing the outer function - future work will allow outer function execution to happenin parallel to inner function compilation. BUG=v8:5203,v8:5215 Review-Url: https://codereview.chromium.org/2611313002 Cr-Commit-Position: refs/heads/master@{#42667}
-
pfeldman authored
BUG=chromium:682521 Review-Url: https://codereview.chromium.org/2656613004 Cr-Commit-Position: refs/heads/master@{#42666}
-
Michael Achenbach authored
Cr-Commit-Position: refs/heads/master@{#42665}
-
Michael Achenbach authored
Cr-Commit-Position: refs/heads/master@{#42664}
-
jyan authored
R=bjaideep@ca.ibm.com, joransiu@ca.ibm.com BUG= Review-Url: https://codereview.chromium.org/2651673009 Cr-Commit-Position: refs/heads/master@{#42663}
-