Home | History | Annotate | Download | only in cts
      1 #pragma version(1)
      2 #pragma rs java_package_name(android.renderscript.cts)
      3 
      4 void test_i8(const char *ain, uchar *aout) {
      5     aout[0] = ain[0] + 1;
      6     return;
      7 }
      8 
      9 void test_i8_2(const char2 *ain, uchar2 *aout) {
     10     aout[0].x = ain[0].x + 1;
     11     aout[0].y = ain[0].y + 1;
     12     return;
     13 }
     14 
     15 void test_i8_3(const char3 *ain, uchar3 *aout) {
     16     aout[0].x = ain[0].x + 1;
     17     aout[0].y = ain[0].y + 1;
     18     aout[0].z = ain[0].z + 1;
     19     return;
     20 }
     21 
     22 void test_i8_4(const char4 *ain, uchar4 *aout) {
     23     aout[0].x = ain[0].x + 1;
     24     aout[0].y = ain[0].y + 1;
     25     aout[0].z = ain[0].z + 1;
     26     aout[0].w = ain[0].w + 1;
     27     return;
     28 }
     29 
     30 void test_i16(const short *ain, ushort *aout) {
     31     aout[0] = ain[0] + 1;
     32     return;
     33 }
     34 
     35 void test_i16_2(const short2 *ain, ushort2 *aout) {
     36     aout[0].x = ain[0].x + 1;
     37     aout[0].y = ain[0].y + 1;
     38     return;
     39 }
     40 
     41 void test_i16_3(const short3 *ain, ushort3 *aout) {
     42     aout[0].x = ain[0].x + 1;
     43     aout[0].y = ain[0].y + 1;
     44     aout[0].z = ain[0].z + 1;
     45     return;
     46 }
     47 
     48 void test_i16_4(const short4 *ain, ushort4 *aout) {
     49     aout[0].x = ain[0].x + 1;
     50     aout[0].y = ain[0].y + 1;
     51     aout[0].z = ain[0].z + 1;
     52     aout[0].w = ain[0].w + 1;
     53     return;
     54 }
     55 
     56 void test_i32(const int *ain, uint *aout) {
     57     aout[0] = ain[0] + 1;
     58     return;
     59 }
     60 
     61 void test_i32_2(const int2 *ain, uint2 *aout) {
     62     aout[0].x = ain[0].x + 1;
     63     aout[0].y = ain[0].y + 1;
     64     return;
     65 }
     66 
     67 void test_i32_3(const int3 *ain, uint3 *aout) {
     68     aout[0].x = ain[0].x + 1;
     69     aout[0].y = ain[0].y + 1;
     70     aout[0].z = ain[0].z + 1;
     71     return;
     72 }
     73 
     74 void test_i32_4(const int4 *ain, uint4 *aout) {
     75     aout[0].x = ain[0].x + 1;
     76     aout[0].y = ain[0].y + 1;
     77     aout[0].z = ain[0].z + 1;
     78     aout[0].w = ain[0].w + 1;
     79     return;
     80 }
     81 
     82 void test_i64(const long *ain, ulong *aout) {
     83     aout[0] = ain[0] + 1;
     84     return;
     85 }
     86 
     87 void test_i64_2(const long2 *ain, ulong2 *aout) {
     88     aout[0].x = ain[0].x + 1;
     89     aout[0].y = ain[0].y + 1;
     90     return;
     91 }
     92 
     93 void test_i64_3(const long3 *ain, ulong3 *aout) {
     94     aout[0].x = ain[0].x + 1;
     95     aout[0].y = ain[0].y + 1;
     96     aout[0].z = ain[0].z + 1;
     97     return;
     98 }
     99 
    100 void test_i64_4(const long4 *ain, ulong4 *aout) {
    101     aout[0].x = ain[0].x + 1;
    102     aout[0].y = ain[0].y + 1;
    103     aout[0].z = ain[0].z + 1;
    104     aout[0].w = ain[0].w + 1;
    105     return;
    106 }
    107 
    108 void test_f32(const float *ain, float *aout) {
    109     aout[0] = ain[0] + 1.0f;
    110     return;
    111 }
    112 
    113 void test_f32_2(const float2 *ain, float2 *aout) {
    114     aout[0].x = ain[0].x + 1.0f;
    115     aout[0].y = ain[0].y + 1.0f;
    116     return;
    117 }
    118 
    119 void test_f32_3(const float3 *ain, float3 *aout) {
    120     aout[0].x = ain[0].x + 1.0f;
    121     aout[0].y = ain[0].y + 1.0f;
    122     aout[0].z = ain[0].z + 1.0f;
    123     return;
    124 }
    125 
    126 void test_f32_4(const float4 *ain, float4 *aout) {
    127     aout[0].x = ain[0].x + 1.0f;
    128     aout[0].y = ain[0].y + 1.0f;
    129     aout[0].z = ain[0].z + 1.0f;
    130     aout[0].w = ain[0].w + 1.0f;
    131     return;
    132 }
    133 
    134 void test_f64(const double *ain, double *aout) {
    135     aout[0] = ain[0] + 1.0;
    136     return;
    137 }
    138 
    139 void test_f64_2(const double2 *ain, double2 *aout) {
    140     aout[0].x = ain[0].x + 1.0;
    141     aout[0].y = ain[0].y + 1.0;
    142     return;
    143 }
    144 
    145 void test_f64_3(const double3 *ain, double3 *aout) {
    146     aout[0].x = ain[0].x + 1.0;
    147     aout[0].y = ain[0].y + 1.0;
    148     aout[0].z = ain[0].z + 1.0;
    149     return;
    150 }
    151 
    152 void test_f64_4(const double4 *ain, double4 *aout) {
    153     aout[0].x = ain[0].x + 1.0;
    154     aout[0].y = ain[0].y + 1.0;
    155     aout[0].z = ain[0].z + 1.0;
    156     aout[0].w = ain[0].w + 1.0;
    157     return;
    158 }
    159 
    160 struct fe_test {
    161     int i;
    162     float f;
    163 };
    164 
    165 void test_struct(const struct fe_test *ain, struct fe_test *aout) {
    166     aout[0].i = ain[0].i + 1;
    167     aout[0].f = ain[0].f + 1.0f;
    168     return;
    169 }
    170 
    171 void test_bool(const bool *ain, bool *aout) {
    172     aout[0] = !ain[0];
    173     return;
    174 }
    175