diff --git a/math.c b/math.c index b889e2f..88809de 100644 --- a/math.c +++ b/math.c @@ -123,12 +123,13 @@ fn i32 i32Middle(i32 x, i32 y) { } fn u32 u32Middle(u32 x, u32 y) { - u32 shift = 32 - 1; - u32 difference = (u32)x - (u32)y; - u32 sign = y < x; - u32 half = (difference / 2) + (sign << shift) + (sign & difference); - u32 mid = (u32)(x + half); - return mid; + return (x+y) / 2; + //u32 shift = 32 - 1; + //u32 difference = (u32)x - (u32)y; + //u32 sign = y < x; + //u32 half = (difference / 2) + (sign << shift) + (sign & difference); + //u32 mid = (u32)(x + half); + //return mid; } fn u64 u64SafeMul(u64 x, u64 y) {