FLINT3.7.0-dev

vec4d_cmp_eq, vec4d_cmp_ne, vec4d_cmp_lt, vec4d_cmp_le, vec4d_cmp_gt, vec4d_cmp_ge, vec4d_cmp_nlt, vec4d_cmp_nle, vec4d_cmp_ngt, vec4d_cmp_nge

Synopsis#include <flint/machine_vectors.h>
vec4d vec4d_cmp_eq(vec4d a, vec4d b)source
vec4d vec4d_cmp_ne(vec4d a, vec4d b)source
vec4d vec4d_cmp_lt(vec4d a, vec4d b)source
vec4d vec4d_cmp_le(vec4d a, vec4d b)source
vec4d vec4d_cmp_gt(vec4d a, vec4d b)source
vec4d vec4d_cmp_ge(vec4d a, vec4d b)source
vec4d vec4d_cmp_nlt(vec4d a, vec4d b)source
vec4d vec4d_cmp_nle(vec4d a, vec4d b)source
vec4d vec4d_cmp_ngt(vec4d a, vec4d b)source
vec4d vec4d_cmp_nge(vec4d a, vec4d b)source

Returns the mask of the lanes where a_i = b_i, a_i \ne b_i, a_i < b_i, and so on. The predicates eq, lt, le, gt and ge are false when a lane of a or b is a NaN, and their negations ne, nlt, nle, ngt and nge are true. All backends.

A lane of the mask has all 64 bits set where the predicate holds and all bits clear elsewhere. As a double such a lane is a NaN or +0, so the mask is meant to be passed to vec4d_blendv, vec4d_movemask or bitwise operations such as vec4d_bit_and, not used in arithmetic.

Guides#

Cite this page

The FLINT team, “vec4d_cmp_eq, vec4d_cmp_ne, vec4d_cmp_lt, vec4d_cmp_le, vec4d_cmp_gt, vec4d_cmp_ge, vec4d_cmp_nlt, vec4d_cmp_nle, vec4d_cmp_ngt, vec4d_cmp_nge (machine_vectors.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/machine_vectors/vec4d_cmp_eq.html (generated 2026-10-20).