From adacaa3e170adf77b6c363e9ba80f63bfcc5bf5d Mon Sep 17 00:00:00 2001 From: nimlgen <138685161+nimlgen@users.noreply.github.com> Date: Fri, 14 Aug 2026 16:23:59 +0300 Subject: [PATCH] hcq2 fix hangs (#17529) --- tinygrad/renderer/cstyle.py | 1 + tinygrad/renderer/llvmir.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/tinygrad/renderer/cstyle.py b/tinygrad/renderer/cstyle.py index e25ab0c605..3b555ac177 100644 --- a/tinygrad/renderer/cstyle.py +++ b/tinygrad/renderer/cstyle.py @@ -264,6 +264,7 @@ class ClangRenderer(CStyleLanguage): nan = '__builtin_nanf("")' # language options + barrier = "__atomic_thread_fence(__ATOMIC_SEQ_CST);" buffer_suffix = " restrict" type_map = {dtypes.bool:"_Bool", dtypes.half:"__fp16"} code_for_op = {**({k:v for k,v in CStyleLanguage.code_for_op.items() if k not in [Ops.EXP2, Ops.SIN, Ops.LOG2, Ops.TRUNC, Ops.RECIPROCAL]}), diff --git a/tinygrad/renderer/llvmir.py b/tinygrad/renderer/llvmir.py index 05f6e72033..838e1c95f0 100644 --- a/tinygrad/renderer/llvmir.py +++ b/tinygrad/renderer/llvmir.py @@ -142,7 +142,7 @@ base_rewrite = PatternMatcher([ (UPat(Ops.IF, name="x"), lambda ctx,x: f" br i1 {ctx[x.src[0]]}, label %ifbody_{ctx[x][1:]}, label %ifskip_{ctx[x][1:]}\nifbody_{ctx[x][1:]}:"), (UPat(Ops.ENDIF, name="x"), lambda ctx,x: f" br label %ifskip_{ctx[x.src[0]][1:]}\nifskip_{ctx[x.src[0]][1:]}:"), - (UPat(Ops.BARRIER), lambda ctx: "") + (UPat(Ops.BARRIER), lambda ctx: " fence seq_cst") ]) class LLVMRenderer(Renderer):