1572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams/*
2572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams * Copyright (C) 2011 The Android Open Source Project
3572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams *
4572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams * Licensed under the Apache License, Version 2.0 (the "License");
5572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams * you may not use this file except in compliance with the License.
6572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams * You may obtain a copy of the License at
7572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams *
8572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams *      http://www.apache.org/licenses/LICENSE-2.0
9572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams *
10572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams * Unless required by applicable law or agreed to in writing, software
11572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams * distributed under the License is distributed on an "AS IS" BASIS,
12572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams * See the License for the specific language governing permissions and
14572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams * limitations under the License.
15572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams */
16572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
17572a5031a5d8602db0bec0b253428a034bd4dd59Jason Samspackage com.android.rs.test;
18572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
19572a5031a5d8602db0bec0b253428a034bd4dd59Jason Samsimport android.content.Context;
20572a5031a5d8602db0bec0b253428a034bd4dd59Jason Samsimport android.content.res.Resources;
21572a5031a5d8602db0bec0b253428a034bd4dd59Jason Samsimport android.renderscript.*;
22572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
23572a5031a5d8602db0bec0b253428a034bd4dd59Jason Samspublic class UT_vector extends UnitTest {
24572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    private Resources mRes;
25572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
26572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    protected UT_vector(RSTestCore rstc, Resources res, Context ctx) {
27572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        super(rstc, "Vector", ctx);
28572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        mRes = res;
29572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    }
30572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
31572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    private boolean initializeGlobals(ScriptC_vector s) {
32572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Float2 F2 = s.get_f2();
33572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (F2.x != 1.0f || F2.y != 2.0f) {
34572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
35572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
36572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        F2.x = 2.99f;
37572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        F2.y = 3.99f;
38572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_f2(F2);
39572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
40572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Float3 F3 = s.get_f3();
41572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (F3.x != 1.0f || F3.y != 2.0f || F3.z != 3.0f) {
42572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
43572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
44572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        F3.x = 2.99f;
45572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        F3.y = 3.99f;
46572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        F3.z = 4.99f;
47572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_f3(F3);
48572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
49572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Float4 F4 = s.get_f4();
50572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (F4.x != 1.0f || F4.y != 2.0f || F4.z != 3.0f || F4.w != 4.0f) {
51572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
52572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
53572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        F4.x = 2.99f;
54572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        F4.y = 3.99f;
55572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        F4.z = 4.99f;
56572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        F4.w = 5.99f;
57572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_f4(F4);
58572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
59572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Double2 D2 = s.get_d2();
60572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (D2.x != 1.0 || D2.y != 2.0) {
61572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
62572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
63572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        D2.x = 2.99;
64572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        D2.y = 3.99;
65572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_d2(D2);
66572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
67572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Double3 D3 = s.get_d3();
68572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (D3.x != 1.0 || D3.y != 2.0 || D3.z != 3.0) {
69572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
70572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
71572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        D3.x = 2.99;
72572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        D3.y = 3.99;
73572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        D3.z = 4.99;
74572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_d3(D3);
75572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
76572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Double4 D4 = s.get_d4();
77572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (D4.x != 1.0 || D4.y != 2.0 || D4.z != 3.0 || D4.w != 4.0) {
78572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
79572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
80572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        D4.x = 2.99;
81572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        D4.y = 3.99;
82572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        D4.z = 4.99;
83572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        D4.w = 5.99;
84572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_d4(D4);
85572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
86572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Byte2 B2 = s.get_i8_2();
87572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (B2.x != 1 || B2.y != 2) {
88572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
89572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
90572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        B2.x = 2;
91572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        B2.y = 3;
92572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_i8_2(B2);
93572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
94572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Byte3 B3 = s.get_i8_3();
95572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (B3.x != 1 || B3.y != 2 || B3.z != 3) {
96572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
97572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
98572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        B3.x = 2;
99572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        B3.y = 3;
100572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        B3.z = 4;
101572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_i8_3(B3);
102572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
103572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Byte4 B4 = s.get_i8_4();
104572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (B4.x != 1 || B4.y != 2 || B4.z != 3 || B4.w != 4) {
105572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
106572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
107572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        B4.x = 2;
108572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        B4.y = 3;
109572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        B4.z = 4;
110572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        B4.w = 5;
111572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_i8_4(B4);
112572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
113572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Short2 S2 = s.get_u8_2();
114572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (S2.x != 1 || S2.y != 2) {
115572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
116572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
117572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S2.x = 2;
118572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S2.y = 3;
119572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_u8_2(S2);
120572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
121572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Short3 S3 = s.get_u8_3();
122572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (S3.x != 1 || S3.y != 2 || S3.z != 3) {
123572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
124572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
125572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S3.x = 2;
126572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S3.y = 3;
127572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S3.z = 4;
128572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_u8_3(S3);
129572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
130572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Short4 S4 = s.get_u8_4();
131572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (S4.x != 1 || S4.y != 2 || S4.z != 3 || S4.w != 4) {
132572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
133572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
134572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S4.x = 2;
135572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S4.y = 3;
136572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S4.z = 4;
137572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S4.w = 5;
138572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_u8_4(S4);
139572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
140572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S2 = s.get_i16_2();
141572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (S2.x != 1 || S2.y != 2) {
142572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
143572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
144572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S2.x = 2;
145572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S2.y = 3;
146572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_i16_2(S2);
147572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
148572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S3 = s.get_i16_3();
149572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (S3.x != 1 || S3.y != 2 || S3.z != 3) {
150572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
151572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
152572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S3.x = 2;
153572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S3.y = 3;
154572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S3.z = 4;
155572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_i16_3(S3);
156572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
157572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S4 = s.get_i16_4();
158572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (S4.x != 1 || S4.y != 2 || S4.z != 3 || S4.w != 4) {
159572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
160572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
161572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S4.x = 2;
162572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S4.y = 3;
163572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S4.z = 4;
164572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        S4.w = 5;
165572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_i16_4(S4);
166572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
167572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Int2 I2 = s.get_u16_2();
168572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (I2.x != 1 || I2.y != 2) {
169572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
170572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
171572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I2.x = 2;
172572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I2.y = 3;
173572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_u16_2(I2);
174572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
175572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Int3 I3 = s.get_u16_3();
176572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (I3.x != 1 || I3.y != 2 || I3.z != 3) {
177572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
178572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
179572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I3.x = 2;
180572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I3.y = 3;
181572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I3.z = 4;
182572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_u16_3(I3);
183572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
184572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Int4 I4 = s.get_u16_4();
185572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (I4.x != 1 || I4.y != 2 || I4.z != 3 || I4.w != 4) {
186572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
187572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
188572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I4.x = 2;
189572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I4.y = 3;
190572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I4.z = 4;
191572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I4.w = 5;
192572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_u16_4(I4);
193572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
194572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I2 = s.get_i32_2();
195572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (I2.x != 1 || I2.y != 2) {
196572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
197572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
198572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I2.x = 2;
199572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I2.y = 3;
200572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_i32_2(I2);
201572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
202572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I3 = s.get_i32_3();
203572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (I3.x != 1 || I3.y != 2 || I3.z != 3) {
204572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
205572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
206572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I3.x = 2;
207572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I3.y = 3;
208572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I3.z = 4;
209572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_i32_3(I3);
210572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
211572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I4 = s.get_i32_4();
212572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (I4.x != 1 || I4.y != 2 || I4.z != 3 || I4.w != 4) {
213572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
214572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
215572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I4.x = 2;
216572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I4.y = 3;
217572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I4.z = 4;
218572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        I4.w = 5;
219572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_i32_4(I4);
220572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
221572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Long2 L2 = s.get_u32_2();
222572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (L2.x != 1 || L2.y != 2) {
223572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
224572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
225572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L2.x = 2;
226572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L2.y = 3;
227572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_u32_2(L2);
228572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
229572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Long3 L3 = s.get_u32_3();
230572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (L3.x != 1 || L3.y != 2 || L3.z != 3) {
231572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
232572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
233572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L3.x = 2;
234572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L3.y = 3;
235572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L3.z = 4;
236572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_u32_3(L3);
237572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
238572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        Long4 L4 = s.get_u32_4();
239572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (L4.x != 1 || L4.y != 2 || L4.z != 3 || L4.w != 4) {
240572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
241572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
242572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4.x = 2;
243572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4.y = 3;
244572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4.z = 4;
245572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4.w = 5;
246572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_u32_4(L4);
247572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
248572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L2 = s.get_i64_2();
249572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (L2.x != 1 || L2.y != 2) {
250572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
251572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
252572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L2.x = 2;
253572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L2.y = 3;
254572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_i64_2(L2);
255572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
256572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L3 = s.get_i64_3();
257572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (L3.x != 1 || L3.y != 2 || L3.z != 3) {
258572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
259572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
260572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L3.x = 2;
261572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L3.y = 3;
262572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L3.z = 4;
263572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_i64_3(L3);
264572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
265572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4 = s.get_i64_4();
266572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (L4.x != 1 || L4.y != 2 || L4.z != 3 || L4.w != 4) {
267572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
268572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
269572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4.x = 2;
270572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4.y = 3;
271572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4.z = 4;
272572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4.w = 5;
273572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_i64_4(L4);
274572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
275572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L2 = s.get_u64_2();
276572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (L2.x != 1 || L2.y != 2) {
277572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
278572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
279572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L2.x = 2;
280572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L2.y = 3;
281572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_u64_2(L2);
282572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
283572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L3 = s.get_u64_3();
284572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (L3.x != 1 || L3.y != 2 || L3.z != 3) {
285572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
286572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
287572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L3.x = 2;
288572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L3.y = 3;
289572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L3.z = 4;
290572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_u64_3(L3);
291572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
292572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4 = s.get_u64_4();
293572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (L4.x != 1 || L4.y != 2 || L4.z != 3 || L4.w != 4) {
294572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            return false;
295572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
296572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4.x = 2;
297572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4.y = 3;
298572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4.z = 4;
299572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        L4.w = 5;
300572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        s.set_u64_4(L4);
301572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
302572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        return true;
303572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    }
304572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams
305572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    public void run() {
306572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        RenderScript pRS = RenderScript.create(mCtx);
307572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        ScriptC_vector s = new ScriptC_vector(pRS);
308572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        pRS.setMessageHandler(mRsMessage);
309572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        if (!initializeGlobals(s)) {
310572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            failTest();
311572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        } else {
312572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            s.invoke_vector_test();
313572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            pRS.finish();
314572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams            waitForMessage();
315572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        }
316572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams        pRS.destroy();
317572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams    }
318572a5031a5d8602db0bec0b253428a034bd4dd59Jason Sams}
319