From cb18b2462717b88abf4856eb654f1794f9978432 Mon Sep 17 00:00:00 2001 From: allaun Date: Tue, 30 Jun 2026 18:12:34 -0500 Subject: [PATCH] fix(julia): swap a/b operands in DIV_SAT_Q16 to match Lean spec --- julia/AVMIsa/avm.jl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/julia/AVMIsa/avm.jl b/julia/AVMIsa/avm.jl index e0cbed73..2d1ec1ba 100644 --- a/julia/AVMIsa/avm.jl +++ b/julia/AVMIsa/avm.jl @@ -123,8 +123,8 @@ function exec_prim(op::Prim, a::Union{Int32, Bool}, b::Union{Int32, Bool, Nothin return (avm_clamp(result), TYPE_Q16) elseif op == DIV_SAT_Q16 b::Int32 == 0 && error(DIVISION_BY_ZERO) - num = Int64(b::Int32) * Q16_16.Q16_SCALE - result = div(num, Int64(a::Int32)) + num = Int64(a::Int32) * Q16_16.Q16_SCALE + result = div(num, Int64(b::Int32)) return (avm_clamp(result), TYPE_Q16) elseif op == LT_Q16 return (lt_q16_v6(a::Int32, b::Int32), TYPE_BOOL)