blob: 032a4560fd9139ee0503e7dad82349fd2f8fb1c0 [file] [log] [blame]
Tobias Grosser61685432013-07-31 14:52:24 -07001#pragma version(1)
2#pragma rs java_package_name(foo)
3
4rs_allocation A;
5static 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