move decomp dtypes

This commit is contained in:
2026-06-24 19:21:34 -07:00
parent 6d8d8210c8
commit feaab7ee8c
2 changed files with 4 additions and 2 deletions
+3 -1
View File
@@ -122,11 +122,13 @@ def full_rewrite_to_sink(ast:UOp, ren:Renderer, optimize:bool=True) -> UOp:
supported_ops = tuple(ren.code_for_op.keys())
pm_decomp = symbolic_simple+get_simplifying_rewrite_patterns(supported_ops)
sink = graph_rewrite(sink, pm_decomp, name="early decompositions")
sink = graph_rewrite(sink, pm_dtype_decomps, ctx=(set(), ren), name="decomp dtypes")
# do memory coalesing (late)
sink = memory_coalesing(sink, ren)
# do dtype decomps
sink = graph_rewrite(sink, pm_dtype_decomps, ctx=(set(), ren), name="decomp dtypes")
# instruction selection decompositions
pm_decomp = pm_decomp+\
get_late_rewrite_patterns(supported_ops, bool(DISABLE_FAST_IDIV))+\
+1 -1
View File
@@ -7,7 +7,7 @@ from tinygrad.helpers import getenv, IMAGE
from tinygrad.renderer import Renderer
from tinygrad.codegen.late.devectorizer import image_valid_dims, _drop_valid_stmts, uop_given_valid
def transform_to_image(ctx, buf:UOp, x:UOp, valid:UOp|None=None) -> UOp:
def transform_to_image(ctx, buf:UOp, x:UOp, valid:UOp|None=None) -> UOp|None:
# search for dims that drop the most valid statements
best_drop, cands = -1, []
for ch, cw in image_valid_dims(buf.dtype.base, buf.max_numel(), ctx.target.arch):