- 26 Aug, 2016 2 commits
-
-
jochen authored
R=verwaest@chromium.org,adamk@chromium.org BUG= Review-Url: https://codereview.chromium.org/2281443003 Cr-Commit-Position: refs/heads/master@{#38923}
-
adamk authored
They are both accumulated at the same time, and either one already triggered an error in ValidateExpression. Basically, there were no disjoint uses of these two error types. Review-Url: https://codereview.chromium.org/2268173005 Cr-Commit-Position: refs/heads/master@{#38922}
-
- 25 Aug, 2016 38 commits
-
-
jochen authored
If the parser creates a catch scope, the variable is also added to ordered_variables_ so just always do that. Otherwise, it's not possible to create a ScopeInfo for that catch scope R=verwaest@chromium.org BUG= Review-Url: https://codereview.chromium.org/2278963002 Cr-Commit-Position: refs/heads/master@{#38921}
-
verwaest authored
BUG=v8:5209 Review-Url: https://codereview.chromium.org/2272083003 Cr-Commit-Position: refs/heads/master@{#38920}
-
baptiste.afsa authored
This significantly speed-up the instruction scheduler when the ready list contains a large number of instruction. R=jarin@chromium.org, bmeurer@chromium.org Review-Url: https://codereview.chromium.org/2281523002 Cr-Commit-Position: refs/heads/master@{#38919}
-
adamk authored
Previously the calls to ExpressionClassifier::Accumulate() each chose slightly different sets of productions to accumulate, and it turned out that these were in some cases broader than needed and in some cases less broad. The existence of some grab-bag production bitmasks like ExpressionClassifier::ExpressionProductions made this situation more error-prone (for example, that production was missing AsyncArrowFormalParametersProduction). This patch removes all "grab-bags" besides AllProductions. In some of the places where code was using those grab-bags for convenience, it switches them to use negation of AllProductions. In other, specifically those having to do with expressions that are disallowed anywhere in a sub-expression of a parameter list, I've added a new method on ExpressionClassifier to centralize the logic. The aforementioned centralization/addition of AsyncArrowFormalParametersProduction fixes several cases where we were failing to report an error for 'await' in some contexts; I've added those test cases. The patch also narrows all cases to exactly the set or productions necessary, with a comment on each explaining the choice. BUG=v8:4483 Review-Url: https://codereview.chromium.org/2271063002 Cr-Commit-Position: refs/heads/master@{#38918}
-
jarin authored
This reverts commit a55fdb1e, relands https://codereview.chromium.org/2266823002/. BUG=chromium:638132 Review-Url: https://codereview.chromium.org/2277283002 Cr-Commit-Position: refs/heads/master@{#38917}
-
mlippautz authored
Decrease regular heap object size to 400k. In a follow up, we can now get rid of the new space border page while keeping the 1M minimum new space size. This reverts commit 1617043c. BUG=chromium:636331 Review-Url: https://codereview.chromium.org/2278653003 Cr-Commit-Position: refs/heads/master@{#38916}
-
jbroman authored
Suitably scary warnings attached, as this will yet evolve (notably to handle host objects, which are not currently handled). Unit tests adjusted to use the public version of ValueSerializer, eliminating any need they have to access v8::internal. With this, Blink can begin using this code experimentally behind a flag as it develops. BUG=chromium:148757 Review-Url: https://codereview.chromium.org/2274693002 Cr-Commit-Position: refs/heads/master@{#38915}
-
jochen authored
Because we don't need one. R=verwaest@chromium.org BUG= Review-Url: https://codereview.chromium.org/2277303002 Cr-Commit-Position: refs/heads/master@{#38914}
-
jbroman authored
Transferral is not included in this CL, nor is SharedArrayBuffer. BUG=chromium:148757 Review-Url: https://codereview.chromium.org/2264403004 Cr-Commit-Position: refs/heads/master@{#38913}
-
mlippautz authored
Record details, such as cumulative duration, number of steps, and longest steps in IncrementalMarkingDetails which get populated at a single callsite (AddScopeSample). Remove member fields that thus become obsolete (unfortunately not all of them). Additional remove some dead code and refactor printing. Printing in a single statement allows for using logcat on Android. This should also address the regression in chromium:640524. BUG=chromium:639818,chromium:640524 R=jochen@chromium.org Review-Url: https://codereview.chromium.org/2269093002 Cr-Commit-Position: refs/heads/master@{#38912}
-
mstarzinger authored
R=vogelheim@chromium.org Review-Url: https://codereview.chromium.org/2276343004 Cr-Commit-Position: refs/heads/master@{#38911}
-
jyan authored
R=jkummerow@chromium.org, jbroman@chromium.org BUG= Review-Url: https://codereview.chromium.org/2274173003 Cr-Commit-Position: refs/heads/master@{#38910}
-
rmcilroy authored
BUG= Review-Url: https://codereview.chromium.org/2276343003 Cr-Commit-Position: refs/heads/master@{#38909}
-
hablich authored
TBR=jochen@chromium.org NOTRY=true Review-Url: https://codereview.chromium.org/2282453002 Cr-Commit-Position: refs/heads/master@{#38908}
-
mstarzinger authored
R=jarin@chromium.org Review-Url: https://codereview.chromium.org/2274273003 Cr-Commit-Position: refs/heads/master@{#38907}
-
bgeron authored
These tests were spliced out of changelist 2216353002 and extended. BUG= Review-Url: https://codereview.chromium.org/2245263003 Cr-Commit-Position: refs/heads/master@{#38906}
-
mic.besace authored
I could only test this with FreeBSD and OSX (on the Node.js CI). I don't know if the fix is correct for other BSD platforms. Review-Url: https://codereview.chromium.org/2251603004 Cr-Commit-Position: refs/heads/master@{#38905}
-
vogelheim authored
DuplicateFinder isn't actually used by the Scanner, except for one convenience function which we should probably remove, also. BUG= Review-Url: https://codereview.chromium.org/2281443002 Cr-Commit-Position: refs/heads/master@{#38904}
-
bmeurer authored
R=mstarzinger@chromium.org BUG=v8:5309 Review-Url: https://codereview.chromium.org/2274253003 Cr-Commit-Position: refs/heads/master@{#38903}
-
georgia.kouveli authored
BUG= Review-Url: https://codereview.chromium.org/2276323002 Cr-Commit-Position: refs/heads/master@{#38902}
-
jkummerow authored
Unlike Crankshaft, Turbofan does not provide a context when trying to grow elements. Depending on the code path we might end up updating transitioning elements kinds in allocation sites for which we need access to the current context. Unlike GrowCapacityAndConvert, the newly introduced GrowCapacity simply returns false in cases where map transitions are involved. BUG=chromium:637279 Patch by Camillo Bruni <cbruni@chromium.org>, originally reviewed at https://codereview.chromium.org/2244983004/ Review-Url: https://codereview.chromium.org/2252393002 Cr-Commit-Position: refs/heads/master@{#38901}
-
rmcilroy authored
Review-Url: https://codereview.chromium.org/2281463002 Cr-Commit-Position: refs/heads/master@{#38900}
-
bgeron authored
R=jarin BUG=chromium:637121 Review-Url: https://codereview.chromium.org/2252283004 Cr-Commit-Position: refs/heads/master@{#38899}
-
jochen authored
During finalization, we create SharedFunctionInfos which in turn will create ScopeInfos for the Scopes in the AST. The Scopes then cache a handle to the ScopeInfos. However, once the scope is closed, all those handles get zapped, and it's no longer possible to access the scopes (even though we actually still need the AST). R=rmcilroy@chromium.org BUG= Review-Url: https://codereview.chromium.org/2278933002 Cr-Commit-Position: refs/heads/master@{#38898}
-
rmcilroy authored
Adds compile operations to the CompilerDispatcherJob interface. As such, introduces Compiler::PrepareUnoptimizedCompilationJob and updates the unoptimized compilation path to use CompilationJobs. Also unifies FinalizeCompilationJob to deal with both optimized and unoptimized compilation jobs. A dummy FullCodegenCompilationJob is also introduced, where all the work is done in the ExecuteJob phase, which cannot be run on a background thread. BUG=v8:5203 Review-Url: https://codereview.chromium.org/2251713002 Cr-Commit-Position: refs/heads/master@{#38897}
-
jgruber authored
BUG= Review-Url: https://codereview.chromium.org/2278863002 Cr-Commit-Position: refs/heads/master@{#38896}
-
bmeurer authored
Try to narrow types of Phis further during JSTypedLowering, because lowering based on types might create further opportunities for improving the types. R=jarin@chromium.org BUG=v8:5267 Review-Url: https://codereview.chromium.org/2278903002 Cr-Commit-Position: refs/heads/master@{#38895}
-
jacob.bramley authored
Existing uses are correct but the return type was misleading. Also clarify some related comments to make the difference between Bits and BitField more obvious. BUG= Review-Url: https://codereview.chromium.org/2275973002 Cr-Commit-Position: refs/heads/master@{#38894}
-
bmeurer authored
Revert of [turbofan] Insert dummy values when changing from None type. (patchset #5 id:80001 of https://codereview.chromium.org/2266823002/ ) Reason for revert: Octane/Mandreel aborts with an exception now: TypeError: __FUNCTION_TABLE__[(r2 >> 2)] is not a function Original issue's description: > [turbofan] Insert dummy values when changing from None type. > > Currently we choose the MachineRepresentation::kNone representation for > values of Type::None, and when converting values from the kNone representation > we use "impossible" conversions that will crash at runtime. This > assumes that the impossible conversions should never be hit (the only > way to produce the impossible values is to perform an always-failing > runtime check on a value, such as Smi-checking a string). Note that > this assumes that the runtime check is executed before the impossible > convesrion. > > Introducing BitwiseOr type feedback broke this in two ways: > > - we always pick Word32 representation for bitwise-or, so the > impossible conversion does not trigger (it only triggers with > None representation), and we could end up with unsupported > conversions from Word32. > > - even if we inserted impossible conversions, they are pure conversions. > Since untagging, bitwise-or operations are also pure, we could hoist > all these before the smi check of the inputs and we could hit the > impossible conversions before we get to the smi check. > > This CL addresses this by just providing dummy values for conversions > from the Type::None type. It also removes the impossible-to-* conversions. > > BUG=chromium:638132 > > Committed: https://crrev.com/c83b21ab755f1420b6da85b3ff43d7e96ead9bbe > Cr-Commit-Position: refs/heads/master@{#38883} TBR=mstarzinger@chromium.org,jarin@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:638132 Review-Url: https://codereview.chromium.org/2280613002 Cr-Commit-Position: refs/heads/master@{#38893}
-
nikolaos authored
This patch moves the following methods from the traits objects to the (pre)parser implementation objects: - AddFormalParameter - AddParameterInitializationBlock - DeclareFormalParameter - ExpressionListToExpression - GetNonPatternList - GetReportedErrorList - IsTaggedTemplate - MaterializeUnspreadArgumentsLiterals - NoTemplateTag - ParseArrowFunctionFormalParameterList - ReindexLiterals - SetFunctionNameFromIdentifierRef - SetFunctionNameFromPropertyName It moves the Void method from the preparser traits object to the preparser implementation object. It also removes the traits zone method and replaces it with that of ParserBase, which it turns to public. After all this, the traits objects contain just typedefs and the delegate methods are no more necessary. R=adamk@chromium.org, marja@chromium.org BUG= LOG=N Review-Url: https://codereview.chromium.org/2277843002 Cr-Commit-Position: refs/heads/master@{#38892}
-
heimbuef authored
Used a BitField to for Variable fields instead of relying on the compiler, saving some memory probably. This reduces sizeof(Variable) from 64 to 40 on x64 BUG=v8:5209 Review-Url: https://codereview.chromium.org/2257493002 Cr-Commit-Position: refs/heads/master@{#38891}
-
nikolaos authored
This patch moves the following methods from the traits objects to the (pre)parser implementation objects: - ExpressionFromIdentifier - ExpressionFromLiteral - ExpressionFromString - FunctionSentExpression - GetNextSymbol - GetNumberAsSymbol - GetSymbol - NewExpressionList - NewPropertyList - NewStatementList - NewSuperCallReference - NewSuperPropertyReference - NewTargetExpression - ThisExpression Also, the method GetIterator is specific only to the parser and is removed from the preparser's implementation. R=adamk@chromium.org, marja@chromium.org BUG= LOG=N Review-Url: https://codereview.chromium.org/2274113002 Cr-Commit-Position: refs/heads/master@{#38890}
-
neis authored
BUG=v8:1569 Review-Url: https://codereview.chromium.org/2273013002 Cr-Commit-Position: refs/heads/master@{#38889}
-
vogelheim authored
Review-Url: https://codereview.chromium.org/2272013002 Cr-Commit-Position: refs/heads/master@{#38888}
-
mstarzinger authored
R=jarin@chromium.org Review-Url: https://codereview.chromium.org/2272653002 Cr-Commit-Position: refs/heads/master@{#38887}
-
baptiste.afsa authored
Some instruction selection tests rely on the instructions to be emitted in a specific order. R=jarin@chromium.org, bmeurer@chromium.org Review-Url: https://codereview.chromium.org/2276003002 Cr-Commit-Position: refs/heads/master@{#38886}
-
neis authored
R=verwaest@chromium.org, bmeurer@chromium.org BUG= Review-Url: https://codereview.chromium.org/2269403003 Cr-Commit-Position: refs/heads/master@{#38885}
-
bmeurer authored
There's no point in running the LoadElimination on asm.js functions and it would take serious amount of effort to actually make it correct for the deprecated parts of the pipeline. R=jarin@chromium.org BUG=v8:5308 Review-Url: https://codereview.chromium.org/2276273002 Cr-Commit-Position: refs/heads/master@{#38884}
-