From d2679da7e82031336aceca24f243cc80991f1964 Mon Sep 17 00:00:00 2001 From: dzaima Date: Sat, 4 Feb 2023 03:04:06 +0200 Subject: [PATCH] =?UTF-8?q?=E2=8A=8F:=20don't=20get=20in=20an=20infinite?= =?UTF-8?q?=20loop=20of=20f64=20=F0=9D=95=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/builtins/select.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/builtins/select.c b/src/builtins/select.c index d9902ede..ba4675f1 100644 --- a/src/builtins/select.c +++ b/src/builtins/select.c @@ -211,7 +211,10 @@ B select_c2(B t, B w, B x) { case el_i8: TYPE(i8, cpyI16Arr) case el_i16: TYPE(i16,cpyI32Arr) case el_i32: TYPE(i32,cpyF64Arr) - case el_f64: + case el_f64: { + if (FL_HAS(w, fl_squoze)) goto generic_l; // either has non-integers (i.e. error, thus don't care about speed) or very large (i.e. will hit memory bandwidth anyway) + // else fallthrough - want to do integer 𝕨 if possible + } case el_B: case el_c8: case el_c16: case el_c32: { w = num_squeezeChk(w); we = TI(w,elType);