I tried ykot's source on 64-bit with -Sv and haven't seen any vectorization. I also tried changing his vector record to array (in case it only knows arrays).

It is possible of course that it only works for x+*/-y where x and y are simple array types, not using matrix transformations like this.

( fpc -al -Sd -O4 -Sv -Cfavx2 -Cpcoreavx2 -Opcoreavx1 <example>.pp 14 instructions per line, so 60-65 instructions in total.

`# [12] Result[0] := V[0] * M.M[0, 0] + V[1] * M.M[1, 0] + V[2] * M.M[2, 0] + V[3] * M.M[3, 0];`

vmovss (%rcx),%xmm0

vmulss (%r9),%xmm0,%xmm1

vmovss 4(%rcx),%xmm0

vmulss 16(%r9),%xmm0,%xmm0

vaddss %xmm1,%xmm0,%xmm1

vmovss 8(%rcx),%xmm0

vmulss 32(%r9),%xmm0,%xmm0

vaddss %xmm1,%xmm0,%xmm1

vmovss 12(%rcx),%xmm0

vmulss 48(%r9),%xmm0,%xmm0

vaddss %xmm1,%xmm0,%xmm0

vmovss %xmm0,(%rax)