From 55f806b713fa80a4a96672c50f4e697e427c8fd5 Mon Sep 17 00:00:00 2001 From: chenyu Date: Sat, 31 Jan 2026 07:28:26 -0500 Subject: [PATCH] tighter late_buffer_view match [pr] (#14456) src must be len 2 at that point --- tinygrad/schedule/rangeify.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tinygrad/schedule/rangeify.py b/tinygrad/schedule/rangeify.py index 25d032f735..6bfca54eb0 100644 --- a/tinygrad/schedule/rangeify.py +++ b/tinygrad/schedule/rangeify.py @@ -280,10 +280,10 @@ def late_buffer_view(t:UOp, b:UOp): if len(shape) == 0: offset = x.src[1].arg else: offset = max(sum(idx.vmin for idx in x.src[1:]), 0) - return b.replace(src=(UOp(Ops.BUFFER_VIEW, t.dtype, (x.base,), (size, offset), tag=t.tag),) + b.src[1:]) + return b.replace(src=(UOp(Ops.BUFFER_VIEW, t.dtype, (x.base,), (size, offset), tag=t.tag), b.src[1])) to_bufferview = PatternMatcher([ - (UPat((Ops.BITCAST, Ops.CONTIGUOUS), name="t").f(Ops.BUFFERIZE, allow_any_len=True, name="b"), late_buffer_view), + (UPat(Ops.BUFFERIZE, src=(UPat((Ops.BITCAST, Ops.CONTIGUOUS), name="t"), UPat()), name="b"), late_buffer_view), (UPat((Ops.BITCAST, Ops.CONTIGUOUS)).f(Ops.BUFFER_VIEW, name="b"), lambda b: b.replace(src=b.src[0].src)), ])