    .text
    .type trn2, %function
    .global trn2
    /*
     * Interleave odd-indexed 32-bit elements from two vectors (TRN2).
     * @param X0 pointer to first source vector (4x float)
     * @param X1 pointer to second source vector (4x float)
     * @param X2 pointer to destination vector (4x float)
     */
trn2:
    ldr q0, [x0]
    ldr q1, [x1]
    trn2 v2.4s, v0.4s, v1.4s
    str q2, [x2]
    ret
    .size trn2, (. - trn2)
