From b2bfa06a4c06f6e8bb85295709581b0aa45dbe7c Mon Sep 17 00:00:00 2001 From: dzaima Date: Wed, 9 Oct 2024 01:18:05 +0300 Subject: [PATCH] allBit cleanup in cells.c --- src/builtins/cells.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/builtins/cells.c b/src/builtins/cells.c index a50e4793..27054f67 100644 --- a/src/builtins/cells.c +++ b/src/builtins/cells.c @@ -335,16 +335,16 @@ static NOINLINE B shift_cells(B f, B x, usz cam, usz csz, u8 e, u8 rtid) { // » return mut_fcd(r, x); } -static B allBit(bool b, usz n) { - return taga(arr_shVec(b ? allOnes(n) : allZeroes(n))); +static Arr* allBit(bool b, usz n) { + return b ? allOnes(n) : allZeroes(n); } static NOINLINE Arr* match_cells(bool ne, B w, B x, ur wr, ur xr, ur k, usz len) { usz* wsh = SH(w); if (wr!=xr || (wr>k && !eqShPart(wsh+k, SH(x)+k, wr-k))) { - return a(allBit(ne, len)); + return allBit(ne, len); } usz csz = shProd(wsh, k, wr); - if (csz==0) return a(allBit(!ne, len)); + if (csz==0) return allBit(!ne, len); u8 we = TI(w,elType); u8 xe = TI(x,elType); if (we>el_c32 || xe>el_c32) return NULL; @@ -530,7 +530,7 @@ B for_cells_c1(B f, u32 xr, u32 cr, u32 k, B x, u32 chr) { // F⎉cr x; array x, usz l = xsh[k]; if (l <= 1) { usz ia = l*cam; - Arr* r = rtid==n_memberOf? allOnes(ia) : allZeroes(ia); + Arr* r = allBit(rtid==n_memberOf, ia); usz* rsh = arr_shAlloc(r, k+1); shcpy(rsh, xsh, k+1); decG(x); return taga(r);