/*the following is printf something test
*/
#include <stdlib.h>
#include "arm_neon.h"
/*************** float *****************/
void neon_float32_4(uint32x4_t a)
{
unsigned int i,j;
uint32_t *zz=(uint32_t *)malloc(sizeof(uint32_t)*4);
vst1q_f32(zz,a);
printf("\nneon float 32x4 :");
for(i=0;i<4;i++)
{
printf(" %f ",*zz);
zz++;
}
printf("\n");
}
// float 32x2
void neon_float32_2(uint32x2_t a)
{
unsigned int i,j;
uint32_t *zz=(uint32_t *)malloc(sizeof(uint32_t)*2);
vst1_f32(zz,a);
printf("\nneon float 32x2 :");
for(i=0;i<2;i++)
{
printf(" %f ",*zz);
zz++;
}
printf("\n");
}
/*********************************************************
neon 64 bit
**********************************************************/
/*************** uint *****************/
//uint 8x8 and 8x16
void neon_uint8(uint8x8_t a)
{
unsigned int i;
uint8_t *zz=(uint8_t *)malloc(sizeof(uint8_t)*8);
vst1(zz,a);
printf("\n uint 8x8 :\n");
for(i=0;i<8;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
//uint 16x4
void neon_uint16(uint16x4_t a)
{
unsigned int i;
uint16_t *zz=(uint16_t *)malloc(sizeof(uint8_t)*8);
vst1(zz,a);
printf("\n uint 16x4 :\n");
for(i=0;i<8;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
//uint 32x2
void neon_uint32(uint32x2_t a)
{
unsigned int i;
uint32x2_t *zz=(uint32_t *)malloc(sizeof(uint32_t)*2);
vst1(zz,a);
printf("\n uint 32x2 :\n");
for(i=0;i<2;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
/*************** int **************/
//int 8x8
void neon_int8(uint8x8_t a)
{
unsigned int i;
int8_t *zz=(int8_t *)malloc(sizeof(int8_t)*8);
vst1(zz,a);
printf("\n uint 8x8 :\n");
for(i=0;i<8;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
//int 16x4
void neon_int16(int16x4_t a)
{
unsigned int i;
int16_t *zz=(int16_t *)malloc(sizeof(int8_t)*8);
vst1(zz,a);
printf("\n int 16x4 :\n");
for(i=0;i<8;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
//int 32x2
void neon_int32(int32x2_t a)
{
unsigned int i;
int32x2_t *zz=(int32_t *)malloc(sizeof(int32_t)*2);
vst1(zz,a);
printf("\n uint 32x2 :\n");
for(i=0;i<2;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
/****************************************************************
neon 128 bit
**************************************************************/
// 8x16
void neon_uintq8(uint8x16_t a)
{
unsigned int i;
uint8_t *zz=(uint8_t *)malloc(sizeof(uint8_t)*16);
vst1q(zz,a);
printf("\n uint 8x16 :\n");
for(i=0;i<16;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
//uint 16x8
void neon_uint16(uint16x4_t a)
{
unsigned int i;
uint16_t *zz=(uint16_t *)malloc(sizeof(uint8_t)*8);
vst1(zz,a);
printf("\n uint 16x4 :\n");
for(i=0;i<8;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
//uint 32x4
void neon_uint32(uint32x2_t a)
{
unsigned int i;
uint32x2_t *zz=(uint32_t *)malloc(sizeof(uint32_t)*2);
vst1(zz,a);
printf("\n uint 32x2 :\n");
for(i=0;i<2;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
*/
#include <stdlib.h>
#include "arm_neon.h"
/*************** float *****************/
void neon_float32_4(uint32x4_t a)
{
unsigned int i,j;
uint32_t *zz=(uint32_t *)malloc(sizeof(uint32_t)*4);
vst1q_f32(zz,a);
printf("\nneon float 32x4 :");
for(i=0;i<4;i++)
{
printf(" %f ",*zz);
zz++;
}
printf("\n");
}
// float 32x2
void neon_float32_2(uint32x2_t a)
{
unsigned int i,j;
uint32_t *zz=(uint32_t *)malloc(sizeof(uint32_t)*2);
vst1_f32(zz,a);
printf("\nneon float 32x2 :");
for(i=0;i<2;i++)
{
printf(" %f ",*zz);
zz++;
}
printf("\n");
}
/*********************************************************
neon 64 bit
**********************************************************/
/*************** uint *****************/
//uint 8x8 and 8x16
void neon_uint8(uint8x8_t a)
{
unsigned int i;
uint8_t *zz=(uint8_t *)malloc(sizeof(uint8_t)*8);
vst1(zz,a);
printf("\n uint 8x8 :\n");
for(i=0;i<8;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
//uint 16x4
void neon_uint16(uint16x4_t a)
{
unsigned int i;
uint16_t *zz=(uint16_t *)malloc(sizeof(uint8_t)*8);
vst1(zz,a);
printf("\n uint 16x4 :\n");
for(i=0;i<8;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
//uint 32x2
void neon_uint32(uint32x2_t a)
{
unsigned int i;
uint32x2_t *zz=(uint32_t *)malloc(sizeof(uint32_t)*2);
vst1(zz,a);
printf("\n uint 32x2 :\n");
for(i=0;i<2;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
/*************** int **************/
//int 8x8
void neon_int8(uint8x8_t a)
{
unsigned int i;
int8_t *zz=(int8_t *)malloc(sizeof(int8_t)*8);
vst1(zz,a);
printf("\n uint 8x8 :\n");
for(i=0;i<8;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
//int 16x4
void neon_int16(int16x4_t a)
{
unsigned int i;
int16_t *zz=(int16_t *)malloc(sizeof(int8_t)*8);
vst1(zz,a);
printf("\n int 16x4 :\n");
for(i=0;i<8;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
//int 32x2
void neon_int32(int32x2_t a)
{
unsigned int i;
int32x2_t *zz=(int32_t *)malloc(sizeof(int32_t)*2);
vst1(zz,a);
printf("\n uint 32x2 :\n");
for(i=0;i<2;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
/****************************************************************
neon 128 bit
**************************************************************/
// 8x16
void neon_uintq8(uint8x16_t a)
{
unsigned int i;
uint8_t *zz=(uint8_t *)malloc(sizeof(uint8_t)*16);
vst1q(zz,a);
printf("\n uint 8x16 :\n");
for(i=0;i<16;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
//uint 16x8
void neon_uint16(uint16x4_t a)
{
unsigned int i;
uint16_t *zz=(uint16_t *)malloc(sizeof(uint8_t)*8);
vst1(zz,a);
printf("\n uint 16x4 :\n");
for(i=0;i<8;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}
//uint 32x4
void neon_uint32(uint32x2_t a)
{
unsigned int i;
uint32x2_t *zz=(uint32_t *)malloc(sizeof(uint32_t)*2);
vst1(zz,a);
printf("\n uint 32x2 :\n");
for(i=0;i<2;i++)
{
printf(" %d ",*zz);
zz++;
}
printf(\n);
}