diff --git a/src/datatype.c b/src/datatype.c index 57f2111127bfaa..3f511ae8d9723a 100644 --- a/src/datatype.c +++ b/src/datatype.c @@ -191,18 +191,6 @@ unsigned jl_special_vector_alignment(size_t nfields, jl_value_t *t) { if (!jl_is_vecelement_type(t)) return 0; - // LLVM 3.7 and 3.8 either crash or generate wrong code for many - // SIMD vector sizes N. It seems the rule is that N can have at - // most 2 non-zero bits. (This is true at least for N<=100.) See - // also . - size_t mask = nfields; - // See e.g. - // for an - // explanation of this bit-counting algorithm. - mask &= mask-1; // clear least-significant 1 if present - mask &= mask-1; // clear another 1 - if (mask) - return 0; // nfields has more than two 1s assert(jl_datatype_nfields(t)==1); jl_value_t *ty = jl_field_type((jl_datatype_t*)t, 0); if (!jl_is_primitivetype(ty))