From 5551cf668975beb0b6f1484c19fa4e104ba82299 Mon Sep 17 00:00:00 2001 From: ignaciosica Date: Mon, 21 Oct 2024 09:37:02 -0300 Subject: [PATCH] add rlshift and rrshift special methods (#7185) --- tinygrad/ops.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tinygrad/ops.py b/tinygrad/ops.py index 69fe7ec3ce..abcb8b64e5 100644 --- a/tinygrad/ops.py +++ b/tinygrad/ops.py @@ -55,7 +55,9 @@ class MathTrait: def __mul__(self, x): return self.alu(BinaryOps.MUL, self.ufix(x)) def __rmul__(self, x): return self.ufix(x).alu(BinaryOps.MUL, self) def __lshift__(self, x): return self.alu(BinaryOps.SHL, self.ufix(x)) + def __rlshift__(self, x): return self.ufix(x).alu(BinaryOps.SHL, self) def __rshift__(self, x): return self.alu(BinaryOps.SHR, self.ufix(x)) + def __rrshift__(self, x): return self.ufix(x).alu(BinaryOps.SHR, self) def __floordiv__(self, x): return self.alu(BinaryOps.IDIV, self.ufix(x)) def __rfloordiv__(self, x): return self.ufix(x).alu(BinaryOps.IDIV, self) def __truediv__(self, x): return self.alu(BinaryOps.MUL, self.ufix(x).alu(UnaryOps.RECIP))