diff --git a/src/halfvec.c b/src/halfvec.c index 6a41295..26cd782 100644 --- a/src/halfvec.c +++ b/src/halfvec.c @@ -900,7 +900,11 @@ halfvec_norm(PG_FUNCTION_ARGS) /* Auto-vectorized */ for (int i = 0; i < a->dim; i++) - norm += (double) HalfToFloat4(ax[i]) * (double) HalfToFloat4(ax[i]); + { + double axi = (double) HalfToFloat4(ax[i]); + + norm += axi * axi; + } PG_RETURN_FLOAT8(sqrt(norm)); }