Erro: transmitir tipos de dados definidos pelo usuário em c

Esta é uma visão mais simples do meu Problema. Quero converter um valor flutuante no tipo definido v4si (desejo usar a Operação SIMD para otimização.) Por favor, ajude a converter o valor flutuante / duplo em um tipo definido.

#include<stdio.h>

typedef double v4si __attribute__ ((vector_size (16)));

int main()
{
    double stoptime=36000;
    float x =0.5*stoptime;
    float * temp = &x;
    v4si a = ((v4si)x);   // Error: Incompatible data types
    v4si b;
    v4si *c;
    c = ((v4si*)&temp);   // Copies address of temp,           
    b = *(c);                   
    printf("%f\n" , b);      //    but printing (*c) crashes program
}

questionAnswers(2)

yourAnswerToTheQuestion