diff --git a/src/builtins/search.c b/src/builtins/search.c index b1bf967d..0b2d8345 100644 --- a/src/builtins/search.c +++ b/src/builtins/search.c @@ -310,14 +310,13 @@ B memberOf_c2(B t, B w, B x) { #undef WEQ if (xia+wia>20 && we<=el_i16 && xe<=el_i16) { - B r; #if SINGELI if (we==el_i8 && xe==el_i8) { TALLOC(u8, tab, 256); u64* rp; r = m_bitarrc(&rp, w); simd_member_u8(tyany_ptr(x), xia, tyany_ptr(w), wia, rp, tab); - TFREE(tab); - return r; + TFREE(tab); decG(w); + goto dec_x; } #endif TABLE(x, w, i8, 0, 1) diff --git a/src/builtins/selfsearch.c b/src/builtins/selfsearch.c index 6394b67e..d8b92a56 100644 --- a/src/builtins/selfsearch.c +++ b/src/builtins/selfsearch.c @@ -259,7 +259,7 @@ B memberOf_c1(B t, B x) { TALLOC(u8, tab, 256); u64* rp; B r = m_bitarrv(&rp, n); simd_mark_firsts_u8(xv, n, rp, tab); - TFREE(tab); + TFREE(tab); decG(x); return r; #else LOOKUP(8);