apple-altivec-10.c

来自「Mac OS X 10.4.9 for x86 Source Code gcc」· C语言 代码 · 共 82 行

C
82
字号
/* APPLE LOCAL file AltiVec *//* { dg-do run { target powerpc*-*-* } } *//* { dg-options "-faltivec" } */extern void abort();#include <stdio.h>int main(){  char str[128];  vector unsigned char  vuchar = (vector unsigned char)((vector unsigned int)(0x001f001d, 0x001f001d, 0x001f001d, 0x001f001d));  vector unsigned short  vushort =  (vector unsigned short)((vector unsigned int)(0x001f001d, 0x001f001d, 0x001f001d, 0x001f001d));  vector unsigned char  vushort_to_char = (vector unsigned char)		     ((vector unsigned short)(0x001f,0x001d, 0x001f,0x001d, 0x001f,0x001d, 0x001f,0x001d));  vector signed char  vschar = (vector signed char)((vector signed int)(0x001f001d, 0x001f001d, 0x001f001d, 0x001f001d));  vector signed short  vsshort =  (vector signed short)((vector signed int)(0x001f001d, 0x001f001d, 0x001f001d, 0x001f001d));  vector signed char  vsshort_to_char = (vector signed char)		     ((vector signed short)(0x001f,0x001d, 0x001f,0x001d, 0x001f,0x001d, 0x001f,0x001d));  vector unsigned int  vui = (vector unsigned int)((vector unsigned short)(0x011f,0x021d, 0x031f,0x041d, 0x051f,0x061d, 0x071f,0x081d));  vector unsigned int  vui1 = (vector unsigned int)          ((vector unsigned char)(0x01,0x1f,0x02,0x1d, 0x03,0x1f,0x04,0x1d, 				  0x05,0x1f,0x06,0x1d, 0x07,0x1f,0x08,0x1d));   vector unsigned short   vus = (vector unsigned short)	  ((vector unsigned char)(0x01,0x1f,0x02,0x1d, 0x03,0x1f,0x04,0x1d, 	  0x05,0x1f,0x06,0x1d, 0x07,0x1f,0x08,0x1d));   vector float   vf =   (vector float)           ((vector unsigned int)(0x001f001d, 0x001f001d, 0x001f001d, 0x001f001d));   sprintf(str, "%vhu", vuchar);   if (strcmp (str, "31 29 31 29 31 29 31 29"))     abort();   sprintf(str, "%vhu", vushort);   if (strcmp (str, "31 29 31 29 31 29 31 29"))     abort();   sprintf(str, "%vhu", vushort_to_char);   if (strcmp (str, "31 29 31 29 31 29 31 29"))     abort();   sprintf(str, "%vhu", vschar);   if (strcmp (str, "31 29 31 29 31 29 31 29"))     abort();   sprintf(str, "%vhu", vsshort);   if (strcmp (str, "31 29 31 29 31 29 31 29"))     abort();   sprintf(str, "%vhu", vsshort_to_char);   if (strcmp (str, "31 29 31 29 31 29 31 29"))     abort();   sprintf(str, "%vd", vui);   if (strcmp (str, "1 31 2 29 3 31 4 29 5 31 6 29 7 31 8 29"))     abort();   sprintf(str, "%vd", vui1);   if (strcmp (str, "1 31 2 29 3 31 4 29 5 31 6 29 7 31 8 29"))     abort();   sprintf(str, "%vd", vus);   if (strcmp (str, "1 31 2 29 3 31 4 29 5 31 6 29 7 31 8 29"))     abort();   sprintf(str, "%vhu", vf);   if (strcmp (str, "31 29 31 29 31 29 31 29"))     abort();   return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?