提交 c5ceabcf authored 作者: Vikram's avatar Vikram

Pep8 compliant

上级 f0cd8ba1
......@@ -2234,27 +2234,39 @@ def local_cast_cast(node):
v = node.op(base)
return [v]
def upcast(type1, type2):
'''
Given two data types (as strings), check if converting to
"""Given two data types (as strings), check if converting to
type2 from type1 constitutes an upcast.
'''
"""
upcast_pairs = (
('int8','int16'),('int8','int32'),('int8','int64'),('int16','int32'),('int16','int64'),('int32','int64'),
('uint8','uint16'),('uint8','uint32'),('uint8','uint64'),('uint16','uint32'),('uint16','uint64'),('uint32','uint64'),
('float16','float32'),('float16','float32'),('float16','float64'),('float32','float64'),
('complex64','complex128'),
('uint8','int16'),('uint8','int32'),('uint8','int64'),('uint16','int32'),('uint16','int64'),('uint32','int64'),
('int8','float16'),('int8','float32'),('int8','float64'),('int16','float32'),('int16','float64'),('int32','float64'),
('uint8','float16'),('uint8','float32'),('uint8','float64'),('uint16','float32'),('uint16','float64'),('uint32','float64'),
('int8','complex64'),('int16','complex64'),
('uint8','complex64'),('uint16','complex64'),
('float32','complex64'),
('int8','complex128'),('int16','complex128'),('int32','complex128'),
('uint8','complex128'),('uint16','complex128'),('uint32','complex128'),
('float32','complex128'),('float64','complex128')
('int8', 'int16'), ('int8', 'int32'), ('int8', 'int64'),
('int16', 'int32'), ('int16', 'int64'),
('int32', 'int64'),
('uint8', 'uint16'), ('uint8', 'uint32'), ('uint8', 'uint64'),
('uint16', 'uint32'), ('uint16', 'uint64'),
('uint32', 'uint64'),
('float16', 'float32'), ('float16', 'float32'), ('float16', 'float64'),
('float32', 'float64'),
('complex64', 'complex128'),
('uint8', 'int16'), ('uint8', 'int32'), ('uint8', 'int64'),
('uint16', 'int32'), ('uint16', 'int64'),
('uint32', 'int64'),
('int8', 'float16'), ('int8', 'float32'), ('int8', 'float64'),
('int16', 'float32'), ('int16', 'float64'),
('int32', 'float64'),
('uint8', 'float16'), ('uint8', 'float32'), ('uint8', 'float64'),
('uint16', 'float32'), ('uint16', 'float64'),
('uint32', 'float64'),
('int8', 'complex64'), ('int16', 'complex64'),
('uint8', 'complex64'), ('uint16', 'complex64'),
('float32', 'complex64'),
('int8', 'complex128'), ('int16', 'complex128'), ('int32', 'complex128'),
('uint8', 'complex128'), ('uint16', 'complex128'), ('uint32', 'complex128'),
('float32', 'complex128'), ('float64', 'complex128')
)
for pair in upcast_pairs:
......@@ -2262,6 +2274,7 @@ def upcast(type1, type2):
return True
return False
@register_canonicalize
@register_specialize
@gof.local_optimizer([T.Elemwise])
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论