- 25 Aug, 2016 34 commits
-
-
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}
-
jarin authored
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 Review-Url: https://codereview.chromium.org/2266823002 Cr-Commit-Position: refs/heads/master@{#38883}
-
bmeurer authored
For concurrent recompilation we created the CompilationHandleScope after the CanonicalHandleScope, which basically disabled the canonicalization because the deferred handle creation doesn't pay attention to the canonicalization mode then. This meant that we did not canonicalize handles properly as soon as concurrent recompilation was enabled. R=jarin@chromium.org BUG=v8:5267 Review-Url: https://codereview.chromium.org/2276953004 Cr-Commit-Position: refs/heads/master@{#38882}
-
bmeurer authored
This introduces appropriate unit tests to ensure that merging of elements/fields information is correct for diamonds. BUG=chromium:639210,v8:5266 R=jarin@chromium.org Review-Url: https://codereview.chromium.org/2278043002 Cr-Commit-Position: refs/heads/master@{#38881}
-
franzih authored
According to our style guide on Copyable and Movable Types, copy/move operators should be disabled using = delete in the public: section. Use consistent style for disabling new and delete. BUG= Review-Url: https://codereview.chromium.org/2276063002 Cr-Commit-Position: refs/heads/master@{#38880}
-
franzih authored
According to our style guide on Copyable and Movable Types, copy/move operators should be disabled using = delete in the public: section, not in the private: section. BUG= Review-Url: https://codereview.chromium.org/2272063002 Cr-Commit-Position: refs/heads/master@{#38879}
-
franzih authored
According to our style guide on Copyable and Movable Types, copy/move operators should be disabled in the public: section, not in the private: section. If disabled with a macro such as DISALLOW_COPY_AND_ASSIGN, it should be at the end of the private: section, and should be the last thing in the class. BUG= Review-Url: https://codereview.chromium.org/2271043003 Cr-Commit-Position: refs/heads/master@{#38878}
-
- 24 Aug, 2016 6 commits
-
-
mlippautz authored
https://developer.apple.com/library/mac/documentation/Performance/Conceptual/ManagingMemory/Articles/AboutMemory.html#//apple_ref/doc/uid/20001880-SW3 R=jochen@chromium.org Review-Url: https://codereview.chromium.org/2278473002 Cr-Commit-Position: refs/heads/master@{#38877}
-
littledan authored
This patch fixes up one last case of redundant ExceptionEvents being triggered in the debugger for Promises--it makes the default reject handler for Promises (e.g., if the second argument for Promise.prototype.then is missing) appear to the debugger as a rethrow. R=adamk@chromium.org,jgruber@chromium.org BUG=v8:5167 Review-Url: https://codereview.chromium.org/2278643002 Cr-Commit-Position: refs/heads/master@{#38876}
-
rodolph.perfetta authored
Mark deopt's input alive till the end of the deopt instruction so they cannot be reused as output. BUG=v8:5158 Review-Url: https://codereview.chromium.org/2247303007 Cr-Commit-Position: refs/heads/master@{#38875}
-
jarin authored
Unfortunately, I was unable to produce a repro without asm.js. In normal JavaScript, the bounds check renaming saves us. I have not done anything about the index variable aliasing and handling of differently sized elements yet! BUG=chromium:639210, v8:5266 Review-Url: https://codereview.chromium.org/2270793004 Cr-Commit-Position: refs/heads/master@{#38874}
-
jyan authored
The generated FastAccessorAssembler uses IntPtr Load Op to load from &flags. Therefore, flags should be a pointer type. This fixes big endian issue. R=peterssen@google.com, vogelheim@chromium.org BUG= Review-Url: https://codereview.chromium.org/2266403004 Cr-Commit-Position: refs/heads/master@{#38873}
-
franzih authored
According to our style guide on Copyable and Movable Types, copy/move operators should be disabled in the public: section, not in the private: section. BUG= Review-Url: https://codereview.chromium.org/2278573002 Cr-Commit-Position: refs/heads/master@{#38872}
-