https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107283
Bug ID: 107283 Summary: conversions u/int64_t to float64/32_t are not vectorized Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: g.peterh...@t-online.de Target Milestone: --- The conversions u/int64_t to float64/32_t are not vectorisized if no HW-support (eg AVX512) available. But we can do that manually https://stackoverflow.com/questions/41144668/how-to-efficiently-perform-double-int64-conversions-with-sse-avx In the case u/int64_t -> float32_t i first convert to float64_t and then to float32_t. There might be a better way to implement this. With HW-support the standard implementation is of course faster. https://godbolt.org/z/WTa663PrK thx Gero