[issue32344] Explore whether peephole.c tuple of constants folding can be an AST transformation

2017-12-16 Thread Serhiy Storchaka

Serhiy Storchaka  added the comment:

Tuples represented in AST already are optimized at AST level. But there are 
tuples created at compilation stage (see the code emitting BUILD_TUPLE). 
Inada's PR 4879 simplifies the peephole optimizer.

I tried to move this optimization at the compiler level, but it is more complex 
change. Making this change can have additional advantages, but is just more 
complex. I think at end all remaining peephole optimizations will be moved to 
the compiler, so that it will generate already optimized code. Many 
optimizations had already moved, and I have yet few unfinished patches.

--
resolution:  -> rejected
stage:  -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue32344] Explore whether peephole.c tuple of constants folding can be an AST transformation

2017-12-16 Thread Raymond Hettinger

New submission from Raymond Hettinger :

Can the peephole optimizer's fold_tuple_on_constants() be moved to ast_opt?

It looks to me like there is sufficient information in the tree:


import ast
print(ast.dump(ast.parse('c = (50+1, 60+2)')))
---
Module(body=[Assign(targets=[Name(id='c', ctx=Store())],
value=Tuple(elts=[BinOp(left=Num(n=50), op=Add(), 
right=Num(n=1)),
  BinOp(left=Num(n=60), op=Add(), 
right=Num(n=2))], ctx=Load()))],
   docstring=None)
'''

--
assignee: serhiy.storchaka
components: Interpreter Core
messages: 308467
nosy: inada.naoki, rhettinger, serhiy.storchaka, vstinner
priority: low
severity: normal
status: open
title: Explore whether peephole.c tuple of constants folding can be an AST 
transformation
versions: Python 3.7

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com