On 2015/05/20 01:00:51, arv wrote:
Dmitry. I wanted to unblock you from spread patterns but this still needs
a
little bit more work.
The approach is similar to computed property names in object literals. We
let
the array elements up to the first spread element be created like before
and
after that we append elements to the array.
One alternative design would be to desugar it in the parser but the
problem
with
that is that we would have to go back and change the AST when we finally
know
if
the array literal is going to end up as an array literal and not as an
array
pattern.
It is not clear to me why turbofan is trying to optimize this even when I
call
DisableOptimization in ast-numbering.cc.
This is working as intended. The AstNumberingVisitor can only disable
optimization with Crankshaft. TurboFan is supposed to support the full
language
and hence disabling optimization with TurboFan entirely is not supported,
--always-opt will always trigger TurboFan on purpose. I propose to port to
TurboFan right away. If there is a strong reason to do it separately then
one
can cause a stack-overflow in the AstGraphBuilder and hence perform an
emergency
bailout while building the graph.
TODO:
- Classifier
- More tests
- Ports
- TF (in a follow up CL)
- Crankshaft?
https://codereview.chromium.org/1125183008/
--
--
v8-dev mailing list
v8-dev@googlegroups.com
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to v8-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.