WIP: fix #9037

This fixes the segfault, but the generated random arrays depend on the alignment.
In the case where the array is not 16-byte aligned because of direct/explicit pointer manipulation, the sequences are still reproducible.
But I guess it's not the case when `resize!` is called on the array (cf. #9037), which I think would have to be fixed. I can fix that in random.jl, but what do you think of changing `resize!` (and similar re-allocating functions) to always align arrays to 16-byte boundaries, like at array creation? This would allow to not have to shift `Array{Float64}` data (cf. the use of `unsafe_copy!` in `rand!`) when the data pointer is 8-byte aligned (but not 16-byte aligned), which could then be due only to explicit pointer manipulation.