1  #include "harness.h"
       2  
       3  extern vector unsigned char u8;
       4  extern vector signed char s8;
       5  extern vector bool char b8;
       6  extern vector unsigned short u16;
       7  extern vector signed short s16;
       8  extern vector bool short b16;
       9  extern vector unsigned int u32;
      10  extern vector signed int s32;
      11  extern vector bool int b32;
      12  extern vector float f32;
      13  extern vector pixel p16;
      14  extern vector unsigned char const u8c;
      15  extern vector signed char const s8c;
      16  extern vector bool char const b8c;
      17  extern vector unsigned short const u16c;
      18  extern vector signed short const s16c;
      19  extern vector bool short const b16c;
      20  extern vector unsigned int const u32c;
      21  extern vector signed int const s32c;
      22  extern vector bool int const b32c;
      23  extern vector float const f32c;
      24  extern vector pixel const p16c;
      25  extern vector unsigned char volatile u8v;
      26  extern vector signed char volatile s8v;
      27  extern vector bool char volatile b8v;
      28  extern vector unsigned short volatile u16v;
      29  extern vector signed short volatile s16v;
      30  extern vector bool short volatile b16v;
      31  extern vector unsigned int volatile u32v;
      32  extern vector signed int volatile s32v;
      33  extern vector bool int volatile b32v;
      34  extern vector float volatile f32v;
      35  extern vector pixel volatile p16v;
      36  extern const vector unsigned char u8c_;
      37  extern const vector signed char s8c_;
      38  extern const vector bool char b8c_;
      39  extern const vector unsigned short u16c_;
      40  extern const vector signed short s16c_;
      41  extern const vector bool short b16c_;
      42  extern const vector unsigned int u32c_;
      43  extern const vector signed int s32c_;
      44  extern const vector bool int b32c_;
      45  extern const vector float f32c_;
      46  extern const vector pixel p16c_;
      47  extern volatile vector unsigned char u8v_;
      48  extern volatile vector signed char s8v_;
      49  extern volatile vector bool char b8v_;
      50  extern volatile vector unsigned short u16v_;
      51  extern volatile vector signed short s16v_;
      52  extern volatile vector bool short b16v_;
      53  extern volatile vector unsigned int u32v_;
      54  extern volatile vector signed int s32v_;
      55  extern volatile vector bool int b32v_;
      56  extern volatile vector float f32v_;
      57  extern volatile vector pixel p16v_;
      58  int i_u8 = vec_step(u8);
      59  int i_s8 = vec_step(s8);
      60  int i_b8 = vec_step(b8);
      61  int i_u16 = vec_step(u16);
      62  int i_s16 = vec_step(s16);
      63  int i_b16 = vec_step(b16);
      64  int i_u32 = vec_step(u32);
      65  int i_s32 = vec_step(s32);
      66  int i_b32 = vec_step(b32);
      67  int i_f32 = vec_step(f32);
      68  int i_p16 = vec_step(p16);
      69  int i_u8c = vec_step(u8c);
      70  int i_s8c = vec_step(s8c);
      71  int i_b8c = vec_step(b8c);
      72  int i_u16c = vec_step(u16c);
      73  int i_s16c = vec_step(s16c);
      74  int i_b16c = vec_step(b16c);
      75  int i_u32c = vec_step(u32c);
      76  int i_s32c = vec_step(s32c);
      77  int i_b32c = vec_step(b32c);
      78  int i_f32c = vec_step(f32c);
      79  int i_p16c = vec_step(p16c);
      80  int i_u8v = vec_step(u8v);
      81  int i_s8v = vec_step(s8v);
      82  int i_b8v = vec_step(b8v);
      83  int i_u16v = vec_step(u16v);
      84  int i_s16v = vec_step(s16v);
      85  int i_b16v = vec_step(b16v);
      86  int i_u32v = vec_step(u32v);
      87  int i_s32v = vec_step(s32v);
      88  int i_b32v = vec_step(b32v);
      89  int i_f32v = vec_step(f32v);
      90  int i_p16v = vec_step(p16v);
      91  int i_u8c_ = vec_step(u8c_);
      92  int i_s8c_ = vec_step(s8c_);
      93  int i_b8c_ = vec_step(b8c_);
      94  int i_u16c_ = vec_step(u16c_);
      95  int i_s16c_ = vec_step(s16c_);
      96  int i_b16c_ = vec_step(b16c_);
      97  int i_u32c_ = vec_step(u32c_);
      98  int i_s32c_ = vec_step(s32c_);
      99  int i_b32c_ = vec_step(b32c_);
     100  int i_f32c_ = vec_step(f32c_);
     101  int i_p16c_ = vec_step(p16c_);
     102  int i_u8v_ = vec_step(u8v_);
     103  int i_s8v_ = vec_step(s8v_);
     104  int i_b8v_ = vec_step(b8v_);
     105  int i_u16v_ = vec_step(u16v_);
     106  int i_s16v_ = vec_step(s16v_);
     107  int i_b16v_ = vec_step(b16v_);
     108  int i_u32v_ = vec_step(u32v_);
     109  int i_s32v_ = vec_step(s32v_);
     110  int i_b32v_ = vec_step(b32v_);
     111  int i_f32v_ = vec_step(f32v_);
     112  int i_p16v_ = vec_step(p16v_);
     113  int j_u8 = vec_step(vector unsigned char);
     114  int j_s8 = vec_step(vector signed char);
     115  int j_b8 = vec_step(vector bool char);
     116  int j_u16 = vec_step(vector unsigned short);
     117  int j_s16 = vec_step(vector signed short);
     118  int j_b16 = vec_step(vector bool short);
     119  int j_u32 = vec_step(vector unsigned int);
     120  int j_s32 = vec_step(vector signed int);
     121  int j_b32 = vec_step(vector bool int);
     122  int j_f32 = vec_step(vector float);
     123  int j_p16 = vec_step(vector pixel);
     124  int j_u8c = vec_step(vector unsigned char const);
     125  int j_s8c = vec_step(vector signed char const);
     126  int j_b8c = vec_step(vector bool char const);
     127  int j_u16c = vec_step(vector unsigned short const);
     128  int j_s16c = vec_step(vector signed short const);
     129  int j_b16c = vec_step(vector bool short const);
     130  int j_u32c = vec_step(vector unsigned int const);
     131  int j_s32c = vec_step(vector signed int const);
     132  int j_b32c = vec_step(vector bool int const);
     133  int j_f32c = vec_step(vector float const);
     134  int j_p16c = vec_step(vector pixel const);
     135  int j_u8v = vec_step(vector unsigned char volatile);
     136  int j_s8v = vec_step(vector signed char volatile);
     137  int j_b8v = vec_step(vector bool char volatile);
     138  int j_u16v = vec_step(vector unsigned short volatile);
     139  int j_s16v = vec_step(vector signed short volatile);
     140  int j_b16v = vec_step(vector bool short volatile);
     141  int j_u32v = vec_step(vector unsigned int volatile);
     142  int j_s32v = vec_step(vector signed int volatile);
     143  int j_b32v = vec_step(vector bool int volatile);
     144  int j_f32v = vec_step(vector float volatile);
     145  int j_p16v = vec_step(vector pixel volatile);
     146  int j_u8c_ = vec_step(const vector unsigned char);
     147  int j_s8c_ = vec_step(const vector signed char);
     148  int j_b8c_ = vec_step(const vector bool char);
     149  int j_u16c_ = vec_step(const vector unsigned short);
     150  int j_s16c_ = vec_step(const vector signed short);
     151  int j_b16c_ = vec_step(const vector bool short);
     152  int j_u32c_ = vec_step(const vector unsigned int);
     153  int j_s32c_ = vec_step(const vector signed int);
     154  int j_b32c_ = vec_step(const vector bool int);
     155  int j_f32c_ = vec_step(const vector float);
     156  int j_p16c_ = vec_step(const vector pixel);
     157  int j_u8v_ = vec_step(volatile vector unsigned char);
     158  int j_s8v_ = vec_step(volatile vector signed char);
     159  int j_b8v_ = vec_step(volatile vector bool char);
     160  int j_u16v_ = vec_step(volatile vector unsigned short);
     161  int j_s16v_ = vec_step(volatile vector signed short);
     162  int j_b16v_ = vec_step(volatile vector bool short);
     163  int j_u32v_ = vec_step(volatile vector unsigned int);
     164  int j_s32v_ = vec_step(volatile vector signed int);
     165  int j_b32v_ = vec_step(volatile vector bool int);
     166  int j_f32v_ = vec_step(volatile vector float);
     167  int j_p16v_ = vec_step(volatile vector pixel);
     168  
     169  static void test()
     170  {
     171    int i_u8 = vec_step(u8);
     172    int i_s8 = vec_step(s8);
     173    int i_b8 = vec_step(b8);
     174    int i_u16 = vec_step(u16);
     175    int i_s16 = vec_step(s16);
     176    int i_b16 = vec_step(b16);
     177    int i_u32 = vec_step(u32);
     178    int i_s32 = vec_step(s32);
     179    int i_b32 = vec_step(b32);
     180    int i_f32 = vec_step(f32);
     181    int i_p16 = vec_step(p16);
     182    int i_u8c = vec_step(u8c);
     183    int i_s8c = vec_step(s8c);
     184    int i_b8c = vec_step(b8c);
     185    int i_u16c = vec_step(u16c);
     186    int i_s16c = vec_step(s16c);
     187    int i_b16c = vec_step(b16c);
     188    int i_u32c = vec_step(u32c);
     189    int i_s32c = vec_step(s32c);
     190    int i_b32c = vec_step(b32c);
     191    int i_f32c = vec_step(f32c);
     192    int i_p16c = vec_step(p16c);
     193    int i_u8v = vec_step(u8v);
     194    int i_s8v = vec_step(s8v);
     195    int i_b8v = vec_step(b8v);
     196    int i_u16v = vec_step(u16v);
     197    int i_s16v = vec_step(s16v);
     198    int i_b16v = vec_step(b16v);
     199    int i_u32v = vec_step(u32v);
     200    int i_s32v = vec_step(s32v);
     201    int i_b32v = vec_step(b32v);
     202    int i_f32v = vec_step(f32v);
     203    int i_p16v = vec_step(p16v);
     204    int i_u8c_ = vec_step(u8c_);
     205    int i_s8c_ = vec_step(s8c_);
     206    int i_b8c_ = vec_step(b8c_);
     207    int i_u16c_ = vec_step(u16c_);
     208    int i_s16c_ = vec_step(s16c_);
     209    int i_b16c_ = vec_step(b16c_);
     210    int i_u32c_ = vec_step(u32c_);
     211    int i_s32c_ = vec_step(s32c_);
     212    int i_b32c_ = vec_step(b32c_);
     213    int i_f32c_ = vec_step(f32c_);
     214    int i_p16c_ = vec_step(p16c_);
     215    int i_u8v_ = vec_step(u8v_);
     216    int i_s8v_ = vec_step(s8v_);
     217    int i_b8v_ = vec_step(b8v_);
     218    int i_u16v_ = vec_step(u16v_);
     219    int i_s16v_ = vec_step(s16v_);
     220    int i_b16v_ = vec_step(b16v_);
     221    int i_u32v_ = vec_step(u32v_);
     222    int i_s32v_ = vec_step(s32v_);
     223    int i_b32v_ = vec_step(b32v_);
     224    int i_f32v_ = vec_step(f32v_);
     225    int i_p16v_ = vec_step(p16v_);
     226    int j_u8 = vec_step(vector unsigned char);
     227    int j_s8 = vec_step(vector signed char);
     228    int j_b8 = vec_step(vector bool char);
     229    int j_u16 = vec_step(vector unsigned short);
     230    int j_s16 = vec_step(vector signed short);
     231    int j_b16 = vec_step(vector bool short);
     232    int j_u32 = vec_step(vector unsigned int);
     233    int j_s32 = vec_step(vector signed int);
     234    int j_b32 = vec_step(vector bool int);
     235    int j_f32 = vec_step(vector float);
     236    int j_p16 = vec_step(vector pixel);
     237    int j_u8c = vec_step(vector unsigned char const);
     238    int j_s8c = vec_step(vector signed char const);
     239    int j_b8c = vec_step(vector bool char const);
     240    int j_u16c = vec_step(vector unsigned short const);
     241    int j_s16c = vec_step(vector signed short const);
     242    int j_b16c = vec_step(vector bool short const);
     243    int j_u32c = vec_step(vector unsigned int const);
     244    int j_s32c = vec_step(vector signed int const);
     245    int j_b32c = vec_step(vector bool int const);
     246    int j_f32c = vec_step(vector float const);
     247    int j_p16c = vec_step(vector pixel const);
     248    int j_u8v = vec_step(vector unsigned char volatile);
     249    int j_s8v = vec_step(vector signed char volatile);
     250    int j_b8v = vec_step(vector bool char volatile);
     251    int j_u16v = vec_step(vector unsigned short volatile);
     252    int j_s16v = vec_step(vector signed short volatile);
     253    int j_b16v = vec_step(vector bool short volatile);
     254    int j_u32v = vec_step(vector unsigned int volatile);
     255    int j_s32v = vec_step(vector signed int volatile);
     256    int j_b32v = vec_step(vector bool int volatile);
     257    int j_f32v = vec_step(vector float volatile);
     258    int j_p16v = vec_step(vector pixel volatile);
     259    int j_u8c_ = vec_step(const vector unsigned char);
     260    int j_s8c_ = vec_step(const vector signed char);
     261    int j_b8c_ = vec_step(const vector bool char);
     262    int j_u16c_ = vec_step(const vector unsigned short);
     263    int j_s16c_ = vec_step(const vector signed short);
     264    int j_b16c_ = vec_step(const vector bool short);
     265    int j_u32c_ = vec_step(const vector unsigned int);
     266    int j_s32c_ = vec_step(const vector signed int);
     267    int j_b32c_ = vec_step(const vector bool int);
     268    int j_f32c_ = vec_step(const vector float);
     269    int j_p16c_ = vec_step(const vector pixel);
     270    int j_u8v_ = vec_step(volatile vector unsigned char);
     271    int j_s8v_ = vec_step(volatile vector signed char);
     272    int j_b8v_ = vec_step(volatile vector bool char);
     273    int j_u16v_ = vec_step(volatile vector unsigned short);
     274    int j_s16v_ = vec_step(volatile vector signed short);
     275    int j_b16v_ = vec_step(volatile vector bool short);
     276    int j_u32v_ = vec_step(volatile vector unsigned int);
     277    int j_s32v_ = vec_step(volatile vector signed int);
     278    int j_b32v_ = vec_step(volatile vector bool int);
     279    int j_f32v_ = vec_step(volatile vector float);
     280    int j_p16v_ = vec_step(volatile vector pixel);
     281    check((i_u8 + i_s8 + i_b8 + i_u16 + i_s16 + i_b16 + i_u32 + i_s32 +
     282  	 i_b32 + i_f32 + i_p16 + i_u8c + i_s8c + i_b8c + i_u16c +
     283  	 i_s16c + i_b16c + i_u32c + i_s32c + i_b32c + i_f32c + i_p16c
     284  	 + i_u8v + i_s8v + i_b8v + i_u16v + i_s16v + i_b16v + i_u32v
     285  	 + i_s32v + i_b32v + i_f32v + i_p16v + i_u8c_ + i_s8c_ +
     286  	 i_b8c_ + i_u16c_ + i_s16c_ + i_b16c_ + i_u32c_ + i_s32c_ +
     287  	 i_b32c_ + i_f32c_ + i_p16c_ + i_u8v_ + i_s8v_ + i_b8v_ +
     288  	 i_u16v_ + i_s16v_ + i_b16v_ + i_u32v_ + i_s32v_ + i_b32v_ +
     289  	 i_f32v_ + i_p16v_ + j_u8 + j_s8 + j_b8 + j_u16 + j_s16 +
     290  	 j_b16 + j_u32 + j_s32 + j_b32 + j_f32 + j_p16 + j_u8c +
     291  	 j_s8c + j_b8c + j_u16c + j_s16c + j_b16c + j_u32c + j_s32c +
     292  	 j_b32c + j_f32c + j_p16c + j_u8v + j_s8v + j_b8v + j_u16v +
     293  	 j_s16v + j_b16v + j_u32v + j_s32v + j_b32v + j_f32v + j_p16v
     294  	 + j_u8c_ + j_s8c_ + j_b8c_ + j_u16c_ + j_s16c_ + j_b16c_ +
     295  	 j_u32c_ + j_s32c_ + j_b32c_ + j_f32c_ + j_p16c_ + j_u8v_ +
     296  	 j_s8v_ + j_b8v_ + j_u16v_ + j_s16v_ + j_b16v_ + j_u32v_ +
     297  	 j_s32v_ + j_b32v_ + j_f32v_ + j_p16v_) == 960,
     298  	"vec_step");
     299  }