1 #include "xmlvm.h"
2 #include "java_lang_IndexOutOfBoundsException.h"
3 #include "java_lang_Object.h"
4 #include "java_util_Collection.h"
5 #include "java_util_Iterator.h"
6 #include "java_util_RandomAccess.h"
7
8 #include "java_util_AbstractList.h"
9
10 #define XMLVM_CURRENT_CLASS_NAME AbstractList
11 #define XMLVM_CURRENT_PKG_CLASS_NAME java_util_AbstractList
12
13 __TIB_DEFINITION_java_util_AbstractList __TIB_java_util_AbstractList = {
14 0, // classInitializationBegan
15 0, // classInitialized
16 -1, // initializerThreadId
17 __INIT_java_util_AbstractList, // classInitializer
18 "java.util.AbstractList", // className
19 "java.util", // package
20 JAVA_NULL, // enclosingClassName
21 JAVA_NULL, // enclosingMethodName
22 "<E:Ljava/lang/Object;>Ljava/util/AbstractCollection<TE;>;Ljava/util/List<TE;>;", // signature
23 (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_util_AbstractCollection, // extends
24 sizeof(java_util_AbstractList), // sizeInstance
25 XMLVM_TYPE_CLASS};
26
27 JAVA_OBJECT __CLASS_java_util_AbstractList;
28 JAVA_OBJECT __CLASS_java_util_AbstractList_1ARRAY;
29 JAVA_OBJECT __CLASS_java_util_AbstractList_2ARRAY;
30 JAVA_OBJECT __CLASS_java_util_AbstractList_3ARRAY;
31 //XMLVM_BEGIN_IMPLEMENTATION
32 //XMLVM_END_IMPLEMENTATION
33
34
35 #include "xmlvm-reflection.h"
36
37 static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = {
38 };
39
40 static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = {
41 };
42
constructor_dispatcher(JAVA_OBJECT constructor,JAVA_OBJECT arguments)43 static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments)
44 {
45 XMLVM_NOT_IMPLEMENTED();
46 }
47
48 static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = {
49 };
50
method_dispatcher(JAVA_OBJECT method,JAVA_OBJECT receiver,JAVA_OBJECT arguments)51 static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments)
52 {
53 XMLVM_NOT_IMPLEMENTED();
54 }
55
__INIT_java_util_AbstractList()56 void __INIT_java_util_AbstractList()
57 {
58 staticInitializerLock(&__TIB_java_util_AbstractList);
59
60 // While the static initializer mutex is locked, locally store the value of
61 // whether class initialization began or not
62 int initBegan = __TIB_java_util_AbstractList.classInitializationBegan;
63
64 // Whether or not class initialization had already began, it has begun now
65 __TIB_java_util_AbstractList.classInitializationBegan = 1;
66
67 staticInitializerUnlock(&__TIB_java_util_AbstractList);
68
69 JAVA_LONG curThreadId = (JAVA_LONG)pthread_self();
70 if (initBegan) {
71 if (__TIB_java_util_AbstractList.initializerThreadId != curThreadId) {
72 // Busy wait until the other thread finishes initializing this class
73 while (!__TIB_java_util_AbstractList.classInitialized) {
74 // do nothing
75 }
76 }
77 } else {
78 __TIB_java_util_AbstractList.initializerThreadId = curThreadId;
79 XMLVM_CLASS_USED("java.util.AbstractList")
80 __INIT_IMPL_java_util_AbstractList();
81 }
82 }
83
__INIT_IMPL_java_util_AbstractList()84 void __INIT_IMPL_java_util_AbstractList()
85 {
86 // Initialize base class if necessary
87 XMLVM_CLASS_INIT(java_util_AbstractCollection)
88 __TIB_java_util_AbstractList.newInstanceFunc = __NEW_INSTANCE_java_util_AbstractList;
89 // Copy vtable from base class
90 XMLVM_MEMCPY(__TIB_java_util_AbstractList.vtable, __TIB_java_util_AbstractCollection.vtable, sizeof(__TIB_java_util_AbstractCollection.vtable));
91 // Initialize vtable for this class
92 __TIB_java_util_AbstractList.vtable[20] = (VTABLE_PTR) &java_util_AbstractList_add___int_java_lang_Object;
93 __TIB_java_util_AbstractList.vtable[7] = (VTABLE_PTR) &java_util_AbstractList_add___java_lang_Object;
94 __TIB_java_util_AbstractList.vtable[19] = (VTABLE_PTR) &java_util_AbstractList_addAll___int_java_util_Collection;
95 __TIB_java_util_AbstractList.vtable[8] = (VTABLE_PTR) &java_util_AbstractList_clear__;
96 __TIB_java_util_AbstractList.vtable[1] = (VTABLE_PTR) &java_util_AbstractList_equals___java_lang_Object;
97 __TIB_java_util_AbstractList.vtable[4] = (VTABLE_PTR) &java_util_AbstractList_hashCode__;
98 __TIB_java_util_AbstractList.vtable[22] = (VTABLE_PTR) &java_util_AbstractList_indexOf___java_lang_Object;
99 __TIB_java_util_AbstractList.vtable[12] = (VTABLE_PTR) &java_util_AbstractList_iterator__;
100 __TIB_java_util_AbstractList.vtable[23] = (VTABLE_PTR) &java_util_AbstractList_lastIndexOf___java_lang_Object;
101 __TIB_java_util_AbstractList.vtable[24] = (VTABLE_PTR) &java_util_AbstractList_listIterator__;
102 __TIB_java_util_AbstractList.vtable[25] = (VTABLE_PTR) &java_util_AbstractList_listIterator___int;
103 __TIB_java_util_AbstractList.vtable[27] = (VTABLE_PTR) &java_util_AbstractList_remove___int;
104 __TIB_java_util_AbstractList.vtable[26] = (VTABLE_PTR) &java_util_AbstractList_removeRange___int_int;
105 __TIB_java_util_AbstractList.vtable[28] = (VTABLE_PTR) &java_util_AbstractList_set___int_java_lang_Object;
106 __TIB_java_util_AbstractList.vtable[29] = (VTABLE_PTR) &java_util_AbstractList_subList___int_int;
107 // Initialize interface information
108 __TIB_java_util_AbstractList.numImplementedInterfaces = 3;
109 __TIB_java_util_AbstractList.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 3);
110
111 // Initialize interfaces if necessary and assign tib to implementedInterfaces
112
113 XMLVM_CLASS_INIT(java_lang_Iterable)
114
115 __TIB_java_util_AbstractList.implementedInterfaces[0][0] = &__TIB_java_lang_Iterable;
116
117 XMLVM_CLASS_INIT(java_util_Collection)
118
119 __TIB_java_util_AbstractList.implementedInterfaces[0][1] = &__TIB_java_util_Collection;
120
121 XMLVM_CLASS_INIT(java_util_List)
122
123 __TIB_java_util_AbstractList.implementedInterfaces[0][2] = &__TIB_java_util_List;
124 // Initialize itable for this class
125 __TIB_java_util_AbstractList.itableBegin = &__TIB_java_util_AbstractList.itable[0];
126 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_lang_Iterable_iterator__] = __TIB_java_util_AbstractList.vtable[12];
127 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_addAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[6];
128 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_add___java_lang_Object] = __TIB_java_util_AbstractList.vtable[7];
129 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_clear__] = __TIB_java_util_AbstractList.vtable[8];
130 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_containsAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[9];
131 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_contains___java_lang_Object] = __TIB_java_util_AbstractList.vtable[10];
132 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_equals___java_lang_Object] = __TIB_java_util_AbstractList.vtable[1];
133 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_hashCode__] = __TIB_java_util_AbstractList.vtable[4];
134 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__] = __TIB_java_util_AbstractList.vtable[11];
135 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_iterator__] = __TIB_java_util_AbstractList.vtable[12];
136 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_removeAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[13];
137 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_remove___java_lang_Object] = __TIB_java_util_AbstractList.vtable[14];
138 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_retainAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[15];
139 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_size__] = __TIB_java_util_AbstractList.vtable[16];
140 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray__] = __TIB_java_util_AbstractList.vtable[17];
141 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_Collection_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_AbstractList.vtable[18];
142 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_addAll___int_java_util_Collection] = __TIB_java_util_AbstractList.vtable[19];
143 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_addAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[6];
144 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_add___int_java_lang_Object] = __TIB_java_util_AbstractList.vtable[20];
145 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_add___java_lang_Object] = __TIB_java_util_AbstractList.vtable[7];
146 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_clear__] = __TIB_java_util_AbstractList.vtable[8];
147 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_containsAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[9];
148 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_contains___java_lang_Object] = __TIB_java_util_AbstractList.vtable[10];
149 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_equals___java_lang_Object] = __TIB_java_util_AbstractList.vtable[1];
150 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_get___int] = __TIB_java_util_AbstractList.vtable[21];
151 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_hashCode__] = __TIB_java_util_AbstractList.vtable[4];
152 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_indexOf___java_lang_Object] = __TIB_java_util_AbstractList.vtable[22];
153 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_isEmpty__] = __TIB_java_util_AbstractList.vtable[11];
154 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_iterator__] = __TIB_java_util_AbstractList.vtable[12];
155 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_lastIndexOf___java_lang_Object] = __TIB_java_util_AbstractList.vtable[23];
156 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_listIterator__] = __TIB_java_util_AbstractList.vtable[24];
157 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_listIterator___int] = __TIB_java_util_AbstractList.vtable[25];
158 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_removeAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[13];
159 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_remove___int] = __TIB_java_util_AbstractList.vtable[27];
160 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_remove___java_lang_Object] = __TIB_java_util_AbstractList.vtable[14];
161 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_retainAll___java_util_Collection] = __TIB_java_util_AbstractList.vtable[15];
162 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_set___int_java_lang_Object] = __TIB_java_util_AbstractList.vtable[28];
163 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_size__] = __TIB_java_util_AbstractList.vtable[16];
164 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_subList___int_int] = __TIB_java_util_AbstractList.vtable[29];
165 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_toArray__] = __TIB_java_util_AbstractList.vtable[17];
166 __TIB_java_util_AbstractList.itable[XMLVM_ITABLE_IDX_java_util_List_toArray___java_lang_Object_1ARRAY] = __TIB_java_util_AbstractList.vtable[18];
167
168
169 __TIB_java_util_AbstractList.declaredFields = &__field_reflection_data[0];
170 __TIB_java_util_AbstractList.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA);
171 __TIB_java_util_AbstractList.constructorDispatcherFunc = constructor_dispatcher;
172 __TIB_java_util_AbstractList.declaredConstructors = &__constructor_reflection_data[0];
173 __TIB_java_util_AbstractList.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA);
174 __TIB_java_util_AbstractList.methodDispatcherFunc = method_dispatcher;
175 __TIB_java_util_AbstractList.declaredMethods = &__method_reflection_data[0];
176 __TIB_java_util_AbstractList.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA);
177 __CLASS_java_util_AbstractList = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_util_AbstractList);
178 __TIB_java_util_AbstractList.clazz = __CLASS_java_util_AbstractList;
179 __TIB_java_util_AbstractList.baseType = JAVA_NULL;
180 __CLASS_java_util_AbstractList_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractList);
181 __CLASS_java_util_AbstractList_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractList_1ARRAY);
182 __CLASS_java_util_AbstractList_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_util_AbstractList_2ARRAY);
183 //XMLVM_BEGIN_WRAPPER[__INIT_java_util_AbstractList]
184 //XMLVM_END_WRAPPER
185
186 __TIB_java_util_AbstractList.classInitialized = 1;
187 }
188
__DELETE_java_util_AbstractList(void * me,void * client_data)189 void __DELETE_java_util_AbstractList(void* me, void* client_data)
190 {
191 //XMLVM_BEGIN_WRAPPER[__DELETE_java_util_AbstractList]
192 //XMLVM_END_WRAPPER
193 }
194
__INIT_INSTANCE_MEMBERS_java_util_AbstractList(JAVA_OBJECT me,int derivedClassWillRegisterFinalizer)195 void __INIT_INSTANCE_MEMBERS_java_util_AbstractList(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer)
196 {
197 __INIT_INSTANCE_MEMBERS_java_util_AbstractCollection(me, 0 || derivedClassWillRegisterFinalizer);
198 ((java_util_AbstractList*) me)->fields.java_util_AbstractList.modCount_ = 0;
199 //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_util_AbstractList]
200 //XMLVM_END_WRAPPER
201 }
202
__NEW_java_util_AbstractList()203 JAVA_OBJECT __NEW_java_util_AbstractList()
204 { XMLVM_CLASS_INIT(java_util_AbstractList)
205 java_util_AbstractList* me = (java_util_AbstractList*) XMLVM_MALLOC(sizeof(java_util_AbstractList));
206 me->tib = &__TIB_java_util_AbstractList;
207 __INIT_INSTANCE_MEMBERS_java_util_AbstractList(me, 0);
208 //XMLVM_BEGIN_WRAPPER[__NEW_java_util_AbstractList]
209 //XMLVM_END_WRAPPER
210 return me;
211 }
212
__NEW_INSTANCE_java_util_AbstractList()213 JAVA_OBJECT __NEW_INSTANCE_java_util_AbstractList()
214 {
215 JAVA_OBJECT me = JAVA_NULL;
216 me = __NEW_java_util_AbstractList();
217 java_util_AbstractList___INIT___(me);
218 return me;
219 }
220
java_util_AbstractList___INIT___(JAVA_OBJECT me)221 void java_util_AbstractList___INIT___(JAVA_OBJECT me)
222 {
223 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList___INIT___]
224 XMLVM_ENTER_METHOD("java.util.AbstractList", "<init>", "?")
225 XMLVMElem _r0;
226 _r0.o = me;
227 XMLVM_SOURCE_POSITION("AbstractList.java", 375)
228 XMLVM_CHECK_NPE(0)
229 java_util_AbstractCollection___INIT___(_r0.o);
230 XMLVM_SOURCE_POSITION("AbstractList.java", 376)
231 XMLVM_EXIT_METHOD()
232 return;
233 //XMLVM_END_WRAPPER
234 }
235
java_util_AbstractList_add___int_java_lang_Object(JAVA_OBJECT me,JAVA_INT n1,JAVA_OBJECT n2)236 void java_util_AbstractList_add___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2)
237 {
238 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_add___int_java_lang_Object]
239 XMLVM_ENTER_METHOD("java.util.AbstractList", "add", "?")
240 XMLVMElem _r0;
241 XMLVMElem _r1;
242 XMLVMElem _r2;
243 XMLVMElem _r3;
244 _r1.o = me;
245 _r2.i = n1;
246 _r3.o = n2;
247 XMLVM_SOURCE_POSITION("AbstractList.java", 403)
248
249
250 // Red class access removed: java.lang.UnsupportedOperationException::new-instance
251 XMLVM_RED_CLASS_DEPENDENCY();
252
253
254 // Red class access removed: java.lang.UnsupportedOperationException::<init>
255 XMLVM_RED_CLASS_DEPENDENCY();
256 XMLVM_THROW_CUSTOM(_r0.o)
257 //XMLVM_END_WRAPPER
258 }
259
java_util_AbstractList_add___java_lang_Object(JAVA_OBJECT me,JAVA_OBJECT n1)260 JAVA_BOOLEAN java_util_AbstractList_add___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)
261 {
262 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_add___java_lang_Object]
263 XMLVM_ENTER_METHOD("java.util.AbstractList", "add", "?")
264 XMLVMElem _r0;
265 XMLVMElem _r1;
266 XMLVMElem _r2;
267 _r1.o = me;
268 _r2.o = n1;
269 XMLVM_SOURCE_POSITION("AbstractList.java", 424)
270 //java_util_AbstractList_size__[16]
271 XMLVM_CHECK_NPE(1)
272 _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r1.o)->tib->vtable[16])(_r1.o);
273 //java_util_AbstractList_add___int_java_lang_Object[20]
274 XMLVM_CHECK_NPE(1)
275 (*(void (*)(JAVA_OBJECT, JAVA_INT, JAVA_OBJECT)) ((java_util_AbstractList*) _r1.o)->tib->vtable[20])(_r1.o, _r0.i, _r2.o);
276 XMLVM_SOURCE_POSITION("AbstractList.java", 425)
277 _r0.i = 1;
278 XMLVM_EXIT_METHOD()
279 return _r0.i;
280 //XMLVM_END_WRAPPER
281 }
282
java_util_AbstractList_addAll___int_java_util_Collection(JAVA_OBJECT me,JAVA_INT n1,JAVA_OBJECT n2)283 JAVA_BOOLEAN java_util_AbstractList_addAll___int_java_util_Collection(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2)
284 {
285 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_addAll___int_java_util_Collection]
286 XMLVM_ENTER_METHOD("java.util.AbstractList", "addAll", "?")
287 XMLVMElem _r0;
288 XMLVMElem _r1;
289 XMLVMElem _r2;
290 XMLVMElem _r3;
291 XMLVMElem _r4;
292 XMLVMElem _r5;
293 XMLVMElem _r6;
294 _r4.o = me;
295 _r5.i = n1;
296 _r6.o = n2;
297 XMLVM_SOURCE_POSITION("AbstractList.java", 448)
298 XMLVM_CHECK_NPE(6)
299 _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_iterator__])(_r6.o);
300 _r1 = _r5;
301 label5:;
302 XMLVM_SOURCE_POSITION("AbstractList.java", 449)
303 XMLVM_CHECK_NPE(0)
304 _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o);
305 if (_r2.i != 0) goto label19;
306 XMLVM_SOURCE_POSITION("AbstractList.java", 452)
307 XMLVM_CHECK_NPE(6)
308 _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r6.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Collection_isEmpty__])(_r6.o);
309 if (_r0.i == 0) goto label30;
310 _r0.i = 0;
311 label18:;
312 XMLVM_EXIT_METHOD()
313 return _r0.i;
314 label19:;
315 XMLVM_SOURCE_POSITION("AbstractList.java", 450)
316 _r2.i = _r1.i + 1;
317 XMLVM_CHECK_NPE(0)
318 _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o);
319 //java_util_AbstractList_add___int_java_lang_Object[20]
320 XMLVM_CHECK_NPE(4)
321 (*(void (*)(JAVA_OBJECT, JAVA_INT, JAVA_OBJECT)) ((java_util_AbstractList*) _r4.o)->tib->vtable[20])(_r4.o, _r1.i, _r3.o);
322 _r1 = _r2;
323 goto label5;
324 label30:;
325 _r0.i = 1;
326 goto label18;
327 //XMLVM_END_WRAPPER
328 }
329
java_util_AbstractList_clear__(JAVA_OBJECT me)330 void java_util_AbstractList_clear__(JAVA_OBJECT me)
331 {
332 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_clear__]
333 XMLVM_ENTER_METHOD("java.util.AbstractList", "clear", "?")
334 XMLVMElem _r0;
335 XMLVMElem _r1;
336 XMLVMElem _r2;
337 _r2.o = me;
338 XMLVM_SOURCE_POSITION("AbstractList.java", 465)
339 _r0.i = 0;
340 //java_util_AbstractList_size__[16]
341 XMLVM_CHECK_NPE(2)
342 _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r2.o)->tib->vtable[16])(_r2.o);
343 //java_util_AbstractList_removeRange___int_int[26]
344 XMLVM_CHECK_NPE(2)
345 (*(void (*)(JAVA_OBJECT, JAVA_INT, JAVA_INT)) ((java_util_AbstractList*) _r2.o)->tib->vtable[26])(_r2.o, _r0.i, _r1.i);
346 XMLVM_SOURCE_POSITION("AbstractList.java", 466)
347 XMLVM_EXIT_METHOD()
348 return;
349 //XMLVM_END_WRAPPER
350 }
351
java_util_AbstractList_equals___java_lang_Object(JAVA_OBJECT me,JAVA_OBJECT n1)352 JAVA_BOOLEAN java_util_AbstractList_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)
353 {
354 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_equals___java_lang_Object]
355 XMLVM_ENTER_METHOD("java.util.AbstractList", "equals", "?")
356 XMLVMElem _r0;
357 XMLVMElem _r1;
358 XMLVMElem _r2;
359 XMLVMElem _r3;
360 XMLVMElem _r4;
361 XMLVMElem _r5;
362 XMLVMElem _r6;
363 XMLVMElem _r7;
364 _r6.o = me;
365 _r7.o = n1;
366 _r5.i = 1;
367 _r4.i = 0;
368 XMLVM_SOURCE_POSITION("AbstractList.java", 481)
369 if (_r6.o != _r7.o) goto label6;
370 _r0 = _r5;
371 label5:;
372 XMLVM_SOURCE_POSITION("AbstractList.java", 482)
373 XMLVM_SOURCE_POSITION("AbstractList.java", 499)
374 XMLVM_EXIT_METHOD()
375 return _r0.i;
376 label6:;
377 XMLVM_SOURCE_POSITION("AbstractList.java", 484)
378 XMLVM_CLASS_INIT(java_util_List)
379 _r0.i = XMLVM_ISA(_r7.o, __CLASS_java_util_List);
380 if (_r0.i == 0) goto label61;
381 XMLVM_SOURCE_POSITION("AbstractList.java", 485)
382 _r7.o = _r7.o;
383 XMLVM_SOURCE_POSITION("AbstractList.java", 486)
384 XMLVM_CHECK_NPE(7)
385 _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_size__])(_r7.o);
386 //java_util_AbstractList_size__[16]
387 XMLVM_CHECK_NPE(6)
388 _r1.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r6.o)->tib->vtable[16])(_r6.o);
389 if (_r0.i == _r1.i) goto label24;
390 _r0 = _r4;
391 XMLVM_SOURCE_POSITION("AbstractList.java", 487)
392 goto label5;
393 label24:;
394 XMLVM_SOURCE_POSITION("AbstractList.java", 490)
395 //java_util_AbstractList_iterator__[12]
396 XMLVM_CHECK_NPE(6)
397 _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r6.o)->tib->vtable[12])(_r6.o);
398 XMLVM_CHECK_NPE(7)
399 _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r7.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_List_iterator__])(_r7.o);
400 label32:;
401 XMLVM_SOURCE_POSITION("AbstractList.java", 491)
402 XMLVM_CHECK_NPE(0)
403 _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r0.o);
404 if (_r2.i != 0) goto label40;
405 _r0 = _r5;
406 XMLVM_SOURCE_POSITION("AbstractList.java", 497)
407 goto label5;
408 label40:;
409 XMLVM_SOURCE_POSITION("AbstractList.java", 492)
410 XMLVM_CHECK_NPE(0)
411 _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o);
412 XMLVM_CHECK_NPE(1)
413 _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o);
414 XMLVM_SOURCE_POSITION("AbstractList.java", 493)
415 if (_r2.o != JAVA_NULL) goto label54;
416 if (_r3.o == JAVA_NULL) goto label32;
417 label52:;
418 _r0 = _r4;
419 XMLVM_SOURCE_POSITION("AbstractList.java", 494)
420 goto label5;
421 label54:;
422 //java_lang_Object_equals___java_lang_Object[1]
423 XMLVM_CHECK_NPE(2)
424 _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[1])(_r2.o, _r3.o);
425 if (_r2.i != 0) goto label32;
426 goto label52;
427 label61:;
428 _r0 = _r4;
429 goto label5;
430 //XMLVM_END_WRAPPER
431 }
432
java_util_AbstractList_hashCode__(JAVA_OBJECT me)433 JAVA_INT java_util_AbstractList_hashCode__(JAVA_OBJECT me)
434 {
435 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_hashCode__]
436 XMLVM_ENTER_METHOD("java.util.AbstractList", "hashCode", "?")
437 XMLVMElem _r0;
438 XMLVMElem _r1;
439 XMLVMElem _r2;
440 XMLVMElem _r3;
441 _r3.o = me;
442 XMLVM_SOURCE_POSITION("AbstractList.java", 523)
443 _r0.i = 1;
444 XMLVM_SOURCE_POSITION("AbstractList.java", 524)
445 //java_util_AbstractList_iterator__[12]
446 XMLVM_CHECK_NPE(3)
447 _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r3.o)->tib->vtable[12])(_r3.o);
448 label5:;
449 XMLVM_SOURCE_POSITION("AbstractList.java", 525)
450 XMLVM_CHECK_NPE(1)
451 _r2.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_hasNext__])(_r1.o);
452 if (_r2.i != 0) goto label12;
453 XMLVM_SOURCE_POSITION("AbstractList.java", 529)
454 XMLVM_EXIT_METHOD()
455 return _r0.i;
456 label12:;
457 XMLVM_SOURCE_POSITION("AbstractList.java", 526)
458 XMLVM_CHECK_NPE(1)
459 _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r1.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r1.o);
460 XMLVM_SOURCE_POSITION("AbstractList.java", 527)
461 _r0.i = _r0.i * 31;
462 if (_r2.o != JAVA_NULL) goto label23;
463 _r2.i = 0;
464 label21:;
465 _r0.i = _r0.i + _r2.i;
466 goto label5;
467 label23:;
468 //java_lang_Object_hashCode__[4]
469 XMLVM_CHECK_NPE(2)
470 _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[4])(_r2.o);
471 goto label21;
472 //XMLVM_END_WRAPPER
473 }
474
java_util_AbstractList_indexOf___java_lang_Object(JAVA_OBJECT me,JAVA_OBJECT n1)475 JAVA_INT java_util_AbstractList_indexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)
476 {
477 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_indexOf___java_lang_Object]
478 XMLVM_ENTER_METHOD("java.util.AbstractList", "indexOf", "?")
479 XMLVMElem _r0;
480 XMLVMElem _r1;
481 XMLVMElem _r2;
482 XMLVMElem _r3;
483 _r2.o = me;
484 _r3.o = n1;
485 XMLVM_SOURCE_POSITION("AbstractList.java", 542)
486 //java_util_AbstractList_listIterator__[24]
487 XMLVM_CHECK_NPE(2)
488 _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r2.o)->tib->vtable[24])(_r2.o);
489 XMLVM_SOURCE_POSITION("AbstractList.java", 543)
490 if (_r3.o == JAVA_NULL) goto label40;
491 label6:;
492 XMLVM_SOURCE_POSITION("AbstractList.java", 544)
493
494
495 // Red class access removed: java.util.ListIterator::hasNext
496 XMLVM_RED_CLASS_DEPENDENCY();
497 if (_r1.i != 0) goto label14;
498 label12:;
499 XMLVM_SOURCE_POSITION("AbstractList.java", 556)
500 _r0.i = -1;
501 label13:;
502 XMLVM_EXIT_METHOD()
503 return _r0.i;
504 label14:;
505 XMLVM_SOURCE_POSITION("AbstractList.java", 545)
506
507
508 // Red class access removed: java.util.ListIterator::next
509 XMLVM_RED_CLASS_DEPENDENCY();
510 //java_lang_Object_equals___java_lang_Object[1]
511 XMLVM_CHECK_NPE(3)
512 _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[1])(_r3.o, _r1.o);
513 if (_r1.i == 0) goto label6;
514 XMLVM_SOURCE_POSITION("AbstractList.java", 546)
515
516
517 // Red class access removed: java.util.ListIterator::previousIndex
518 XMLVM_RED_CLASS_DEPENDENCY();
519 goto label13;
520 label29:;
521 XMLVM_SOURCE_POSITION("AbstractList.java", 551)
522
523
524 // Red class access removed: java.util.ListIterator::next
525 XMLVM_RED_CLASS_DEPENDENCY();
526 if (_r1.o != JAVA_NULL) goto label40;
527 XMLVM_SOURCE_POSITION("AbstractList.java", 552)
528
529
530 // Red class access removed: java.util.ListIterator::previousIndex
531 XMLVM_RED_CLASS_DEPENDENCY();
532 goto label13;
533 label40:;
534 XMLVM_SOURCE_POSITION("AbstractList.java", 550)
535
536
537 // Red class access removed: java.util.ListIterator::hasNext
538 XMLVM_RED_CLASS_DEPENDENCY();
539 if (_r1.i != 0) goto label29;
540 goto label12;
541 //XMLVM_END_WRAPPER
542 }
543
java_util_AbstractList_iterator__(JAVA_OBJECT me)544 JAVA_OBJECT java_util_AbstractList_iterator__(JAVA_OBJECT me)
545 {
546 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_iterator__]
547 XMLVM_ENTER_METHOD("java.util.AbstractList", "iterator", "?")
548 XMLVMElem _r0;
549 XMLVMElem _r1;
550 XMLVMElem _r2;
551 _r2.o = me;
552 _r1.o = JAVA_NULL;
553 XMLVM_SOURCE_POSITION("AbstractList.java", 568)
554
555
556 // Red class access removed: java.util.AbstractList$SimpleListIterator::new-instance
557 XMLVM_RED_CLASS_DEPENDENCY();
558
559
560 // Red class access removed: java.util.AbstractList$SimpleListIterator::<init>
561 XMLVM_RED_CLASS_DEPENDENCY();
562 XMLVM_EXIT_METHOD()
563 return _r0.o;
564 //XMLVM_END_WRAPPER
565 }
566
java_util_AbstractList_lastIndexOf___java_lang_Object(JAVA_OBJECT me,JAVA_OBJECT n1)567 JAVA_INT java_util_AbstractList_lastIndexOf___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)
568 {
569 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_lastIndexOf___java_lang_Object]
570 XMLVM_ENTER_METHOD("java.util.AbstractList", "lastIndexOf", "?")
571 XMLVMElem _r0;
572 XMLVMElem _r1;
573 XMLVMElem _r2;
574 XMLVMElem _r3;
575 _r2.o = me;
576 _r3.o = n1;
577 XMLVM_SOURCE_POSITION("AbstractList.java", 581)
578 //java_util_AbstractList_size__[16]
579 XMLVM_CHECK_NPE(2)
580 _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r2.o)->tib->vtable[16])(_r2.o);
581 //java_util_AbstractList_listIterator___int[25]
582 XMLVM_CHECK_NPE(2)
583 _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_AbstractList*) _r2.o)->tib->vtable[25])(_r2.o, _r0.i);
584 XMLVM_SOURCE_POSITION("AbstractList.java", 582)
585 if (_r3.o == JAVA_NULL) goto label44;
586 label10:;
587 XMLVM_SOURCE_POSITION("AbstractList.java", 583)
588
589
590 // Red class access removed: java.util.ListIterator::hasPrevious
591 XMLVM_RED_CLASS_DEPENDENCY();
592 if (_r1.i != 0) goto label18;
593 label16:;
594 XMLVM_SOURCE_POSITION("AbstractList.java", 595)
595 _r0.i = -1;
596 label17:;
597 XMLVM_EXIT_METHOD()
598 return _r0.i;
599 label18:;
600 XMLVM_SOURCE_POSITION("AbstractList.java", 584)
601
602
603 // Red class access removed: java.util.ListIterator::previous
604 XMLVM_RED_CLASS_DEPENDENCY();
605 //java_lang_Object_equals___java_lang_Object[1]
606 XMLVM_CHECK_NPE(3)
607 _r1.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_Object*) _r3.o)->tib->vtable[1])(_r3.o, _r1.o);
608 if (_r1.i == 0) goto label10;
609 XMLVM_SOURCE_POSITION("AbstractList.java", 585)
610
611
612 // Red class access removed: java.util.ListIterator::nextIndex
613 XMLVM_RED_CLASS_DEPENDENCY();
614 goto label17;
615 label33:;
616 XMLVM_SOURCE_POSITION("AbstractList.java", 590)
617
618
619 // Red class access removed: java.util.ListIterator::previous
620 XMLVM_RED_CLASS_DEPENDENCY();
621 if (_r1.o != JAVA_NULL) goto label44;
622 XMLVM_SOURCE_POSITION("AbstractList.java", 591)
623
624
625 // Red class access removed: java.util.ListIterator::nextIndex
626 XMLVM_RED_CLASS_DEPENDENCY();
627 goto label17;
628 label44:;
629 XMLVM_SOURCE_POSITION("AbstractList.java", 589)
630
631
632 // Red class access removed: java.util.ListIterator::hasPrevious
633 XMLVM_RED_CLASS_DEPENDENCY();
634 if (_r1.i != 0) goto label33;
635 goto label16;
636 //XMLVM_END_WRAPPER
637 }
638
java_util_AbstractList_listIterator__(JAVA_OBJECT me)639 JAVA_OBJECT java_util_AbstractList_listIterator__(JAVA_OBJECT me)
640 {
641 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_listIterator__]
642 XMLVM_ENTER_METHOD("java.util.AbstractList", "listIterator", "?")
643 XMLVMElem _r0;
644 XMLVMElem _r1;
645 _r1.o = me;
646 XMLVM_SOURCE_POSITION("AbstractList.java", 606)
647 _r0.i = 0;
648 //java_util_AbstractList_listIterator___int[25]
649 XMLVM_CHECK_NPE(1)
650 _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_AbstractList*) _r1.o)->tib->vtable[25])(_r1.o, _r0.i);
651 XMLVM_EXIT_METHOD()
652 return _r0.o;
653 //XMLVM_END_WRAPPER
654 }
655
java_util_AbstractList_listIterator___int(JAVA_OBJECT me,JAVA_INT n1)656 JAVA_OBJECT java_util_AbstractList_listIterator___int(JAVA_OBJECT me, JAVA_INT n1)
657 {
658 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_listIterator___int]
659 XMLVM_ENTER_METHOD("java.util.AbstractList", "listIterator", "?")
660 XMLVMElem _r0;
661 XMLVMElem _r1;
662 XMLVMElem _r2;
663 _r1.o = me;
664 _r2.i = n1;
665 XMLVM_SOURCE_POSITION("AbstractList.java", 622)
666
667
668 // Red class access removed: java.util.AbstractList$FullListIterator::new-instance
669 XMLVM_RED_CLASS_DEPENDENCY();
670
671
672 // Red class access removed: java.util.AbstractList$FullListIterator::<init>
673 XMLVM_RED_CLASS_DEPENDENCY();
674 XMLVM_EXIT_METHOD()
675 return _r0.o;
676 //XMLVM_END_WRAPPER
677 }
678
java_util_AbstractList_remove___int(JAVA_OBJECT me,JAVA_INT n1)679 JAVA_OBJECT java_util_AbstractList_remove___int(JAVA_OBJECT me, JAVA_INT n1)
680 {
681 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_remove___int]
682 XMLVM_ENTER_METHOD("java.util.AbstractList", "remove", "?")
683 XMLVMElem _r0;
684 XMLVMElem _r1;
685 XMLVMElem _r2;
686 _r1.o = me;
687 _r2.i = n1;
688 XMLVM_SOURCE_POSITION("AbstractList.java", 637)
689
690
691 // Red class access removed: java.lang.UnsupportedOperationException::new-instance
692 XMLVM_RED_CLASS_DEPENDENCY();
693
694
695 // Red class access removed: java.lang.UnsupportedOperationException::<init>
696 XMLVM_RED_CLASS_DEPENDENCY();
697 XMLVM_THROW_CUSTOM(_r0.o)
698 //XMLVM_END_WRAPPER
699 }
700
java_util_AbstractList_removeRange___int_int(JAVA_OBJECT me,JAVA_INT n1,JAVA_INT n2)701 void java_util_AbstractList_removeRange___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2)
702 {
703 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_removeRange___int_int]
704 XMLVM_ENTER_METHOD("java.util.AbstractList", "removeRange", "?")
705 XMLVMElem _r0;
706 XMLVMElem _r1;
707 XMLVMElem _r2;
708 XMLVMElem _r3;
709 XMLVMElem _r4;
710 _r2.o = me;
711 _r3.i = n1;
712 _r4.i = n2;
713 XMLVM_SOURCE_POSITION("AbstractList.java", 654)
714 //java_util_AbstractList_listIterator___int[25]
715 XMLVM_CHECK_NPE(2)
716 _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_INT)) ((java_util_AbstractList*) _r2.o)->tib->vtable[25])(_r2.o, _r3.i);
717 _r1 = _r3;
718 label5:;
719 XMLVM_SOURCE_POSITION("AbstractList.java", 655)
720 if (_r1.i < _r4.i) goto label8;
721 XMLVM_SOURCE_POSITION("AbstractList.java", 659)
722 XMLVM_EXIT_METHOD()
723 return;
724 label8:;
725 XMLVM_SOURCE_POSITION("AbstractList.java", 656)
726 XMLVM_CHECK_NPE(0)
727 (*(JAVA_OBJECT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_next__])(_r0.o);
728 XMLVM_SOURCE_POSITION("AbstractList.java", 657)
729 XMLVM_CHECK_NPE(0)
730 (*(void (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r0.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_util_Iterator_remove__])(_r0.o);
731 _r1.i = _r1.i + 1;
732 goto label5;
733 //XMLVM_END_WRAPPER
734 }
735
java_util_AbstractList_set___int_java_lang_Object(JAVA_OBJECT me,JAVA_INT n1,JAVA_OBJECT n2)736 JAVA_OBJECT java_util_AbstractList_set___int_java_lang_Object(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2)
737 {
738 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_set___int_java_lang_Object]
739 XMLVM_ENTER_METHOD("java.util.AbstractList", "set", "?")
740 XMLVMElem _r0;
741 XMLVMElem _r1;
742 XMLVMElem _r2;
743 XMLVMElem _r3;
744 _r1.o = me;
745 _r2.i = n1;
746 _r3.o = n2;
747 XMLVM_SOURCE_POSITION("AbstractList.java", 680)
748
749
750 // Red class access removed: java.lang.UnsupportedOperationException::new-instance
751 XMLVM_RED_CLASS_DEPENDENCY();
752
753
754 // Red class access removed: java.lang.UnsupportedOperationException::<init>
755 XMLVM_RED_CLASS_DEPENDENCY();
756 XMLVM_THROW_CUSTOM(_r0.o)
757 //XMLVM_END_WRAPPER
758 }
759
java_util_AbstractList_subList___int_int(JAVA_OBJECT me,JAVA_INT n1,JAVA_INT n2)760 JAVA_OBJECT java_util_AbstractList_subList___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2)
761 {
762 //XMLVM_BEGIN_WRAPPER[java_util_AbstractList_subList___int_int]
763 XMLVM_ENTER_METHOD("java.util.AbstractList", "subList", "?")
764 XMLVMElem _r0;
765 XMLVMElem _r1;
766 XMLVMElem _r2;
767 XMLVMElem _r3;
768 _r1.o = me;
769 _r2.i = n1;
770 _r3.i = n2;
771 XMLVM_SOURCE_POSITION("AbstractList.java", 728)
772 if (_r2.i < 0) goto label32;
773 //java_util_AbstractList_size__[16]
774 XMLVM_CHECK_NPE(1)
775 _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_util_AbstractList*) _r1.o)->tib->vtable[16])(_r1.o);
776 if (_r3.i > _r0.i) goto label32;
777 XMLVM_SOURCE_POSITION("AbstractList.java", 729)
778 if (_r2.i > _r3.i) goto label26;
779 XMLVM_SOURCE_POSITION("AbstractList.java", 730)
780 XMLVM_CLASS_INIT(java_util_RandomAccess)
781 _r0.i = XMLVM_ISA(_r1.o, __CLASS_java_util_RandomAccess);
782 if (_r0.i == 0) goto label20;
783 XMLVM_SOURCE_POSITION("AbstractList.java", 731)
784
785
786 // Red class access removed: java.util.AbstractList$SubAbstractListRandomAccess::new-instance
787 XMLVM_RED_CLASS_DEPENDENCY();
788
789
790 // Red class access removed: java.util.AbstractList$SubAbstractListRandomAccess::<init>
791 XMLVM_RED_CLASS_DEPENDENCY();
792 label19:;
793 XMLVM_SOURCE_POSITION("AbstractList.java", 733)
794 XMLVM_EXIT_METHOD()
795 return _r0.o;
796 label20:;
797
798
799 // Red class access removed: java.util.AbstractList$SubAbstractList::new-instance
800 XMLVM_RED_CLASS_DEPENDENCY();
801
802
803 // Red class access removed: java.util.AbstractList$SubAbstractList::<init>
804 XMLVM_RED_CLASS_DEPENDENCY();
805 goto label19;
806 label26:;
807 XMLVM_SOURCE_POSITION("AbstractList.java", 735)
808
809
810 // Red class access removed: java.lang.IllegalArgumentException::new-instance
811 XMLVM_RED_CLASS_DEPENDENCY();
812
813
814 // Red class access removed: java.lang.IllegalArgumentException::<init>
815 XMLVM_RED_CLASS_DEPENDENCY();
816 XMLVM_THROW_CUSTOM(_r0.o)
817 label32:;
818 XMLVM_SOURCE_POSITION("AbstractList.java", 737)
819 _r0.o = __NEW_java_lang_IndexOutOfBoundsException();
820 XMLVM_CHECK_NPE(0)
821 java_lang_IndexOutOfBoundsException___INIT___(_r0.o);
822 XMLVM_THROW_CUSTOM(_r0.o)
823 //XMLVM_END_WRAPPER
824 }
825
826