From 3cef9d9df2d843173533422ddac96baeeab265a0 Mon Sep 17 00:00:00 2001 From: Steven Anderson Date: Tue, 1 Aug 2023 13:44:23 -0400 Subject: [PATCH] ci should work now --- extra/assembly/assembly_arm64.py | 4 ++-- tinygrad/runtime/ops_clang.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/extra/assembly/assembly_arm64.py b/extra/assembly/assembly_arm64.py index 99da2c272f..e79a24f590 100644 --- a/extra/assembly/assembly_arm64.py +++ b/extra/assembly/assembly_arm64.py @@ -94,7 +94,7 @@ class ARM64Codegen(AssemblyCodegen): if arg == BinaryOps.MUL and out.dtype == dtypes.bool: ins.append(f"ands {','.join('x15' if v.__class__ is int else rtor[v.nm] for v in [out] + vin)}") elif arg == TernaryOps.WHERE: - ins.append(f"fmov s0, #0.0") + mov_imm(0.0, 's0') ins.append(f"{alu[arg]} {rtor[vin[0].nm]}, s0") ins.append(f"fcsel {rtor[out.nm]},{rtor[vin[2].nm]}, {rtor[vin[1].nm]}, eq") elif arg in [UnaryOps.LOG2, UnaryOps.SIN, UnaryOps.EXP2, UnaryOps.SQRT]: @@ -148,4 +148,4 @@ class ARM64Codegen(AssemblyCodegen): if out is not None and out.nm in mem_vars: ins.append(f"mov x15, {mem_vars[out.nm]}") ins.append(f"str {rtor[out.nm]}, [sp, x15]") - return "test", "\n".join([".arch armv8-a",".text", ".global _test",".p2align 2", "_test:", "mov x19, sp"] + [f"sub sp, sp, #{offset}" for offset in compute_offsets(var_size)]+ ins + [f"add sp, sp, #{offset}" for offset in compute_offsets(var_size)] +["ret;"+"\n"]) \ No newline at end of file + return "test", "\n".join([".arch armv8-a",".text", ".global test",".p2align 2", "test:", "mov x19, sp"] + [f"sub sp, sp, #{offset}" for offset in compute_offsets(var_size)]+ ins + [f"add sp, sp, #{offset}" for offset in compute_offsets(var_size)] +["ret;"+"\n"]) \ No newline at end of file diff --git a/tinygrad/runtime/ops_clang.py b/tinygrad/runtime/ops_clang.py index 7466c2d46d..9450abf4e9 100644 --- a/tinygrad/runtime/ops_clang.py +++ b/tinygrad/runtime/ops_clang.py @@ -22,7 +22,7 @@ class ClangProgram: else: if DEBUG >= 5: print(prg) if getenv('ARM64'): - subprocess.check_output(args=('as -o '+fn+'.o').split(), input=prg.encode('utf-8')) + subprocess.check_output(args=('as -o '+fn+'.o').split(), input=prg.encode('utf-8')) subprocess.check_output(args=('clang -lm -shared '+fn+'.o -o'+fn).split()) self.lib = ctypes.CDLL(fn) self.fxn = self.lib[name]