Tobias Grosser | 6168543 | 2013-07-31 14:52:24 -0700 | [diff] [blame] | 1 | #pragma version(1) |
| 2 | #pragma rs java_package_name(foo) |
| 3 | |
| 4 | rs_allocation A; |
| 5 | static void foo() { |
| 6 | // Basic scalar and floating point types. |
| 7 | float a = 4.0f; |
| 8 | double d = 4.0f; |
| 9 | float2 a2 = {4.0f, 4.0f}; |
| 10 | float3 a3 = {4.0f, 4.0f, 4.0f}; |
| 11 | float4 a4 = {4.0f, 4.0f, 4.0f, 4.0f}; |
| 12 | char c = 4; |
| 13 | uchar uc = 4; |
| 14 | short s = 4; |
| 15 | ushort us = 4; |
| 16 | int i = 4; |
| 17 | uint ui = 4; |
| 18 | long l = 4; |
| 19 | ulong ul = 4; |
| 20 | |
| 21 | rsSetElementAt(A, &a, 0, 0); |
| 22 | rsSetElementAt(A, &d, 0, 0); |
| 23 | rsSetElementAt(A, &a2, 0, 0); |
| 24 | rsSetElementAt(A, &a3, 0, 0); |
| 25 | rsSetElementAt(A, &a4, 0, 0); |
| 26 | rsSetElementAt(A, &c, 0, 0); |
| 27 | rsSetElementAt(A, &uc, 0, 0); |
| 28 | rsSetElementAt(A, &s, 0, 0); |
| 29 | rsSetElementAt(A, &us, 0, 0); |
| 30 | rsSetElementAt(A, &i, 0, 0); |
| 31 | rsSetElementAt(A, &ui, 0, 0); |
| 32 | rsSetElementAt(A, &l, 0, 0); |
| 33 | rsSetElementAt(A, &ul, 0, 0); |
| 34 | |
| 35 | // No warnings for complex data types |
| 36 | struct { |
| 37 | int A; |
| 38 | int B; |
| 39 | } P; |
| 40 | rsSetElementAt(A, &P, 0, 0); |
| 41 | |
| 42 | // No warning for 'long long' |
| 43 | long long LL = 4.0f; |
| 44 | rsSetElementAt(A, &LL, 0, 0); |
| 45 | |
| 46 | // Unsupported vector width |
| 47 | typedef int int5 __attribute__((ext_vector_type(5))); |
| 48 | int5 i5 = {5, 5, 5, 5, 5}; |
| 49 | |
| 50 | rsSetElementAt(A, &i5, 0, 0); |
| 51 | } |
| 52 | |