From d3aa38ad4ad89d8fb3feff69b7655fb327de96bd Mon Sep 17 00:00:00 2001 From: George Hotz Date: Thu, 28 Aug 2025 10:46:18 -0700 Subject: [PATCH] work --- tinygrad/codegen/opt/__init__.py | 1 + tinygrad/codegen/opt/postrange.py | 3 +++ 2 files changed, 4 insertions(+) diff --git a/tinygrad/codegen/opt/__init__.py b/tinygrad/codegen/opt/__init__.py index 49e251834f..39d40e5d63 100644 --- a/tinygrad/codegen/opt/__init__.py +++ b/tinygrad/codegen/opt/__init__.py @@ -32,6 +32,7 @@ def get_optimized_ast(ctx:Renderer, ast:UOp) -> UOp: rawbufs = bufs_from_lin(kb, allocate=False) k = beam_search(kb, rawbufs, BEAM.value, bool(getenv("BEAM_ESTIMATE", 1))) new_arg = KernelInfo(opts_to_apply=tuple(k.applied_opts)) + elif len(new_arg.applied_opts): return None return Kernel(ast.replace(arg=None), opts=ctx).get_optimized_ast().replace(arg=new_arg) pm_get_optimization = PatternMatcher([ diff --git a/tinygrad/codegen/opt/postrange.py b/tinygrad/codegen/opt/postrange.py index e07c5531b7..29a934c83b 100644 --- a/tinygrad/codegen/opt/postrange.py +++ b/tinygrad/codegen/opt/postrange.py @@ -41,6 +41,9 @@ class RKernel(Kernel): # must be done earlier def simplify_merge_adjacent(self): return + def apply_opt(self, opt:Opt, append_opt:bool=True) -> int|None: + return super().apply_opt(opt, append_opt) + def shift_to(self, axis:int, amount:int, new_type:AxisType, top:bool=False, insert_at:int|None=None): old_sz = self.rng[axis].src[0].arg // amount assert old_sz > 0, f"bad old_sz on {axis} {amount} {self.rng[axis]}"