1 #include "xmlvm.h"
2 #include "java_lang_Class.h"
3 #include "java_lang_IndexOutOfBoundsException.h"
4 #include "java_lang_Object.h"
5 #include "java_lang_String.h"
6 #include "java_lang_StringBuilder.h"
7 #include "java_nio_BufferFactory.h"
8 #include "java_nio_CharBuffer.h"
9 #include "org_apache_harmony_luni_platform_Endianness.h"
10
11 #include "java_nio_ByteBuffer.h"
12
13 #define XMLVM_CURRENT_CLASS_NAME ByteBuffer
14 #define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_ByteBuffer
15
16 __TIB_DEFINITION_java_nio_ByteBuffer __TIB_java_nio_ByteBuffer = {
17 0, // classInitializationBegan
18 0, // classInitialized
19 -1, // initializerThreadId
20 __INIT_java_nio_ByteBuffer, // classInitializer
21 "java.nio.ByteBuffer", // className
22 "java.nio", // package
23 JAVA_NULL, // enclosingClassName
24 JAVA_NULL, // enclosingMethodName
25 "Ljava/nio/Buffer;Ljava/lang/Comparable<Ljava/nio/ByteBuffer;>;", // signature
26 (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_nio_Buffer, // extends
27 sizeof(java_nio_ByteBuffer), // sizeInstance
28 XMLVM_TYPE_CLASS};
29
30 JAVA_OBJECT __CLASS_java_nio_ByteBuffer;
31 JAVA_OBJECT __CLASS_java_nio_ByteBuffer_1ARRAY;
32 JAVA_OBJECT __CLASS_java_nio_ByteBuffer_2ARRAY;
33 JAVA_OBJECT __CLASS_java_nio_ByteBuffer_3ARRAY;
34 //XMLVM_BEGIN_IMPLEMENTATION
35 //XMLVM_END_IMPLEMENTATION
36
37
38 #include "xmlvm-reflection.h"
39
40 static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = {
41 };
42
43 static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = {
44 };
45
constructor_dispatcher(JAVA_OBJECT constructor,JAVA_OBJECT arguments)46 static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments)
47 {
48 XMLVM_NOT_IMPLEMENTED();
49 }
50
51 static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = {
52 };
53
method_dispatcher(JAVA_OBJECT method,JAVA_OBJECT receiver,JAVA_OBJECT arguments)54 static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments)
55 {
56 XMLVM_NOT_IMPLEMENTED();
57 }
58
__INIT_java_nio_ByteBuffer()59 void __INIT_java_nio_ByteBuffer()
60 {
61 staticInitializerLock(&__TIB_java_nio_ByteBuffer);
62
63 // While the static initializer mutex is locked, locally store the value of
64 // whether class initialization began or not
65 int initBegan = __TIB_java_nio_ByteBuffer.classInitializationBegan;
66
67 // Whether or not class initialization had already began, it has begun now
68 __TIB_java_nio_ByteBuffer.classInitializationBegan = 1;
69
70 staticInitializerUnlock(&__TIB_java_nio_ByteBuffer);
71
72 JAVA_LONG curThreadId = (JAVA_LONG)pthread_self();
73 if (initBegan) {
74 if (__TIB_java_nio_ByteBuffer.initializerThreadId != curThreadId) {
75 // Busy wait until the other thread finishes initializing this class
76 while (!__TIB_java_nio_ByteBuffer.classInitialized) {
77 // do nothing
78 }
79 }
80 } else {
81 __TIB_java_nio_ByteBuffer.initializerThreadId = curThreadId;
82 XMLVM_CLASS_USED("java.nio.ByteBuffer")
83 __INIT_IMPL_java_nio_ByteBuffer();
84 }
85 }
86
__INIT_IMPL_java_nio_ByteBuffer()87 void __INIT_IMPL_java_nio_ByteBuffer()
88 {
89 // Initialize base class if necessary
90 XMLVM_CLASS_INIT(java_nio_Buffer)
91 __TIB_java_nio_ByteBuffer.newInstanceFunc = __NEW_INSTANCE_java_nio_ByteBuffer;
92 // Copy vtable from base class
93 XMLVM_MEMCPY(__TIB_java_nio_ByteBuffer.vtable, __TIB_java_nio_Buffer.vtable, sizeof(__TIB_java_nio_Buffer.vtable));
94 // Initialize vtable for this class
95 __TIB_java_nio_ByteBuffer.vtable[7] = (VTABLE_PTR) &java_nio_ByteBuffer_array__;
96 __TIB_java_nio_ByteBuffer.vtable[6] = (VTABLE_PTR) &java_nio_ByteBuffer_arrayOffset__;
97 __TIB_java_nio_ByteBuffer.vtable[1] = (VTABLE_PTR) &java_nio_ByteBuffer_equals___java_lang_Object;
98 __TIB_java_nio_ByteBuffer.vtable[34] = (VTABLE_PTR) &java_nio_ByteBuffer_get___byte_1ARRAY_int_int;
99 __TIB_java_nio_ByteBuffer.vtable[8] = (VTABLE_PTR) &java_nio_ByteBuffer_hasArray__;
100 __TIB_java_nio_ByteBuffer.vtable[4] = (VTABLE_PTR) &java_nio_ByteBuffer_hashCode__;
101 __TIB_java_nio_ByteBuffer.vtable[52] = (VTABLE_PTR) &java_nio_ByteBuffer_put___byte_1ARRAY_int_int;
102 __TIB_java_nio_ByteBuffer.vtable[5] = (VTABLE_PTR) &java_nio_ByteBuffer_toString__;
103 __TIB_java_nio_ByteBuffer.vtable[19] = (VTABLE_PTR) &java_nio_ByteBuffer_compareTo___java_lang_Object;
104 // Initialize interface information
105 __TIB_java_nio_ByteBuffer.numImplementedInterfaces = 1;
106 __TIB_java_nio_ByteBuffer.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1);
107
108 // Initialize interfaces if necessary and assign tib to implementedInterfaces
109
110 XMLVM_CLASS_INIT(java_lang_Comparable)
111
112 __TIB_java_nio_ByteBuffer.implementedInterfaces[0][0] = &__TIB_java_lang_Comparable;
113 // Initialize itable for this class
114 __TIB_java_nio_ByteBuffer.itableBegin = &__TIB_java_nio_ByteBuffer.itable[0];
115 __TIB_java_nio_ByteBuffer.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_nio_ByteBuffer.vtable[19];
116
117
118 __TIB_java_nio_ByteBuffer.declaredFields = &__field_reflection_data[0];
119 __TIB_java_nio_ByteBuffer.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA);
120 __TIB_java_nio_ByteBuffer.constructorDispatcherFunc = constructor_dispatcher;
121 __TIB_java_nio_ByteBuffer.declaredConstructors = &__constructor_reflection_data[0];
122 __TIB_java_nio_ByteBuffer.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA);
123 __TIB_java_nio_ByteBuffer.methodDispatcherFunc = method_dispatcher;
124 __TIB_java_nio_ByteBuffer.declaredMethods = &__method_reflection_data[0];
125 __TIB_java_nio_ByteBuffer.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA);
126 __CLASS_java_nio_ByteBuffer = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_ByteBuffer);
127 __TIB_java_nio_ByteBuffer.clazz = __CLASS_java_nio_ByteBuffer;
128 __TIB_java_nio_ByteBuffer.baseType = JAVA_NULL;
129 __CLASS_java_nio_ByteBuffer_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_ByteBuffer);
130 __CLASS_java_nio_ByteBuffer_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_ByteBuffer_1ARRAY);
131 __CLASS_java_nio_ByteBuffer_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_ByteBuffer_2ARRAY);
132 //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_ByteBuffer]
133 //XMLVM_END_WRAPPER
134
135 __TIB_java_nio_ByteBuffer.classInitialized = 1;
136 }
137
__DELETE_java_nio_ByteBuffer(void * me,void * client_data)138 void __DELETE_java_nio_ByteBuffer(void* me, void* client_data)
139 {
140 //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_ByteBuffer]
141 //XMLVM_END_WRAPPER
142 }
143
__INIT_INSTANCE_MEMBERS_java_nio_ByteBuffer(JAVA_OBJECT me,int derivedClassWillRegisterFinalizer)144 void __INIT_INSTANCE_MEMBERS_java_nio_ByteBuffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer)
145 {
146 __INIT_INSTANCE_MEMBERS_java_nio_Buffer(me, 0 || derivedClassWillRegisterFinalizer);
147 ((java_nio_ByteBuffer*) me)->fields.java_nio_ByteBuffer.order_ = (org_apache_harmony_luni_platform_Endianness*) JAVA_NULL;
148 //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_ByteBuffer]
149 //XMLVM_END_WRAPPER
150 }
151
__NEW_java_nio_ByteBuffer()152 JAVA_OBJECT __NEW_java_nio_ByteBuffer()
153 { XMLVM_CLASS_INIT(java_nio_ByteBuffer)
154 java_nio_ByteBuffer* me = (java_nio_ByteBuffer*) XMLVM_MALLOC(sizeof(java_nio_ByteBuffer));
155 me->tib = &__TIB_java_nio_ByteBuffer;
156 __INIT_INSTANCE_MEMBERS_java_nio_ByteBuffer(me, 0);
157 //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_ByteBuffer]
158 //XMLVM_END_WRAPPER
159 return me;
160 }
161
__NEW_INSTANCE_java_nio_ByteBuffer()162 JAVA_OBJECT __NEW_INSTANCE_java_nio_ByteBuffer()
163 {
164 JAVA_OBJECT me = JAVA_NULL;
165 return me;
166 }
167
java_nio_ByteBuffer_allocate___int(JAVA_INT n1)168 JAVA_OBJECT java_nio_ByteBuffer_allocate___int(JAVA_INT n1)
169 {
170 XMLVM_CLASS_INIT(java_nio_ByteBuffer)
171 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_allocate___int]
172 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "allocate", "?")
173 XMLVMElem _r0;
174 XMLVMElem _r1;
175 _r1.i = n1;
176 XMLVM_SOURCE_POSITION("ByteBuffer.java", 49)
177 if (_r1.i >= 0) goto label8;
178 XMLVM_SOURCE_POSITION("ByteBuffer.java", 50)
179
180
181 // Red class access removed: java.lang.IllegalArgumentException::new-instance
182 XMLVM_RED_CLASS_DEPENDENCY();
183
184
185 // Red class access removed: java.lang.IllegalArgumentException::<init>
186 XMLVM_RED_CLASS_DEPENDENCY();
187 XMLVM_THROW_CUSTOM(_r0.o)
188 label8:;
189 XMLVM_SOURCE_POSITION("ByteBuffer.java", 52)
190 _r0.o = java_nio_BufferFactory_newByteBuffer___int(_r1.i);
191 XMLVM_EXIT_METHOD()
192 return _r0.o;
193 //XMLVM_END_WRAPPER
194 }
195
java_nio_ByteBuffer_allocateDirect___int(JAVA_INT n1)196 JAVA_OBJECT java_nio_ByteBuffer_allocateDirect___int(JAVA_INT n1)
197 {
198 XMLVM_CLASS_INIT(java_nio_ByteBuffer)
199 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_allocateDirect___int]
200 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "allocateDirect", "?")
201 XMLVMElem _r0;
202 XMLVMElem _r1;
203 _r1.i = n1;
204 XMLVM_SOURCE_POSITION("ByteBuffer.java", 65)
205 if (_r1.i >= 0) goto label8;
206 XMLVM_SOURCE_POSITION("ByteBuffer.java", 66)
207
208
209 // Red class access removed: java.lang.IllegalArgumentException::new-instance
210 XMLVM_RED_CLASS_DEPENDENCY();
211
212
213 // Red class access removed: java.lang.IllegalArgumentException::<init>
214 XMLVM_RED_CLASS_DEPENDENCY();
215 XMLVM_THROW_CUSTOM(_r0.o)
216 label8:;
217 XMLVM_SOURCE_POSITION("ByteBuffer.java", 68)
218 _r0.o = java_nio_BufferFactory_newDirectByteBuffer___int(_r1.i);
219 XMLVM_EXIT_METHOD()
220 return _r0.o;
221 //XMLVM_END_WRAPPER
222 }
223
java_nio_ByteBuffer_wrap___byte_1ARRAY(JAVA_OBJECT n1)224 JAVA_OBJECT java_nio_ByteBuffer_wrap___byte_1ARRAY(JAVA_OBJECT n1)
225 {
226 XMLVM_CLASS_INIT(java_nio_ByteBuffer)
227 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_wrap___byte_1ARRAY]
228 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "wrap", "?")
229 XMLVMElem _r0;
230 XMLVMElem _r1;
231 _r1.o = n1;
232 XMLVM_SOURCE_POSITION("ByteBuffer.java", 82)
233 _r0.o = java_nio_BufferFactory_newByteBuffer___byte_1ARRAY(_r1.o);
234 XMLVM_EXIT_METHOD()
235 return _r0.o;
236 //XMLVM_END_WRAPPER
237 }
238
java_nio_ByteBuffer_wrap___byte_1ARRAY_int_int(JAVA_OBJECT n1,JAVA_INT n2,JAVA_INT n3)239 JAVA_OBJECT java_nio_ByteBuffer_wrap___byte_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3)
240 {
241 XMLVM_CLASS_INIT(java_nio_ByteBuffer)
242 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_wrap___byte_1ARRAY_int_int]
243 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "wrap", "?")
244 XMLVMElem _r0;
245 XMLVMElem _r1;
246 XMLVMElem _r2;
247 XMLVMElem _r3;
248 XMLVMElem _r4;
249 XMLVMElem _r5;
250 XMLVMElem _r6;
251 XMLVMElem _r7;
252 _r5.o = n1;
253 _r6.i = n2;
254 _r7.i = n3;
255 XMLVM_SOURCE_POSITION("ByteBuffer.java", 104)
256 _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o));
257 XMLVM_SOURCE_POSITION("ByteBuffer.java", 105)
258 if (_r6.i < 0) goto label13;
259 if (_r7.i < 0) goto label13;
260 _r1.l = (JAVA_LONG) _r6.i;
261 _r3.l = (JAVA_LONG) _r7.i;
262 _r1.l = _r1.l + _r3.l;
263 _r3.l = (JAVA_LONG) _r0.i;
264 _r0.i = _r1.l > _r3.l ? 1 : (_r1.l == _r3.l ? 0 : -1);
265 if (_r0.i <= 0) goto label19;
266 label13:;
267 XMLVM_SOURCE_POSITION("ByteBuffer.java", 106)
268 _r0.o = __NEW_java_lang_IndexOutOfBoundsException();
269 XMLVM_CHECK_NPE(0)
270 java_lang_IndexOutOfBoundsException___INIT___(_r0.o);
271 XMLVM_THROW_CUSTOM(_r0.o)
272 label19:;
273 XMLVM_SOURCE_POSITION("ByteBuffer.java", 109)
274 _r0.o = java_nio_BufferFactory_newByteBuffer___byte_1ARRAY(_r5.o);
275 XMLVM_SOURCE_POSITION("ByteBuffer.java", 110)
276 XMLVM_CHECK_NPE(0)
277 ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.position_ = _r6.i;
278 XMLVM_SOURCE_POSITION("ByteBuffer.java", 111)
279 _r1.i = _r6.i + _r7.i;
280 XMLVM_CHECK_NPE(0)
281 ((java_nio_Buffer*) _r0.o)->fields.java_nio_Buffer.limit_ = _r1.i;
282 XMLVM_SOURCE_POSITION("ByteBuffer.java", 113)
283 XMLVM_EXIT_METHOD()
284 return _r0.o;
285 //XMLVM_END_WRAPPER
286 }
287
java_nio_ByteBuffer___INIT____int(JAVA_OBJECT me,JAVA_INT n1)288 void java_nio_ByteBuffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1)
289 {
290 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer___INIT____int]
291 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "<init>", "?")
292 XMLVMElem _r0;
293 XMLVMElem _r1;
294 XMLVMElem _r2;
295 _r1.o = me;
296 _r2.i = n1;
297 XMLVM_SOURCE_POSITION("ByteBuffer.java", 128)
298 XMLVM_CHECK_NPE(1)
299 java_nio_Buffer___INIT____int(_r1.o, _r2.i);
300 XMLVM_SOURCE_POSITION("ByteBuffer.java", 119)
301 _r0.o = org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN();
302 XMLVM_CHECK_NPE(1)
303 ((java_nio_ByteBuffer*) _r1.o)->fields.java_nio_ByteBuffer.order_ = _r0.o;
304 XMLVM_SOURCE_POSITION("ByteBuffer.java", 129)
305 XMLVM_EXIT_METHOD()
306 return;
307 //XMLVM_END_WRAPPER
308 }
309
java_nio_ByteBuffer_array__(JAVA_OBJECT me)310 JAVA_OBJECT java_nio_ByteBuffer_array__(JAVA_OBJECT me)
311 {
312 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_array__]
313 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "array", "?")
314 XMLVMElem _r0;
315 XMLVMElem _r1;
316 _r1.o = me;
317 XMLVM_SOURCE_POSITION("ByteBuffer.java", 141)
318 //java_nio_ByteBuffer_protectedArray__[37]
319 XMLVM_CHECK_NPE(1)
320 _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r1.o)->tib->vtable[37])(_r1.o);
321 XMLVM_EXIT_METHOD()
322 return _r0.o;
323 //XMLVM_END_WRAPPER
324 }
325
java_nio_ByteBuffer_arrayOffset__(JAVA_OBJECT me)326 JAVA_INT java_nio_ByteBuffer_arrayOffset__(JAVA_OBJECT me)
327 {
328 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_arrayOffset__]
329 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "arrayOffset", "?")
330 XMLVMElem _r0;
331 XMLVMElem _r1;
332 _r1.o = me;
333 XMLVM_SOURCE_POSITION("ByteBuffer.java", 158)
334 //java_nio_ByteBuffer_protectedArrayOffset__[36]
335 XMLVM_CHECK_NPE(1)
336 _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r1.o)->tib->vtable[36])(_r1.o);
337 XMLVM_EXIT_METHOD()
338 return _r0.i;
339 //XMLVM_END_WRAPPER
340 }
341
java_nio_ByteBuffer_compareTo___java_nio_ByteBuffer(JAVA_OBJECT me,JAVA_OBJECT n1)342 JAVA_INT java_nio_ByteBuffer_compareTo___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1)
343 {
344 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_compareTo___java_nio_ByteBuffer]
345 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "compareTo", "?")
346 XMLVMElem _r0;
347 XMLVMElem _r1;
348 XMLVMElem _r2;
349 XMLVMElem _r3;
350 XMLVMElem _r4;
351 XMLVMElem _r5;
352 XMLVMElem _r6;
353 XMLVMElem _r7;
354 _r6.o = me;
355 _r7.o = n1;
356 XMLVM_SOURCE_POSITION("ByteBuffer.java", 306)
357 XMLVM_CHECK_NPE(6)
358 _r0.i = java_nio_Buffer_remaining__(_r6.o);
359 XMLVM_CHECK_NPE(7)
360 _r1.i = java_nio_Buffer_remaining__(_r7.o);
361 if (_r0.i >= _r1.i) goto label33;
362 XMLVM_CHECK_NPE(6)
363 _r0.i = java_nio_Buffer_remaining__(_r6.o);
364 label14:;
365 XMLVM_SOURCE_POSITION("ByteBuffer.java", 308)
366 XMLVM_CHECK_NPE(6)
367 _r1.i = ((java_nio_Buffer*) _r6.o)->fields.java_nio_Buffer.position_;
368 XMLVM_SOURCE_POSITION("ByteBuffer.java", 309)
369 XMLVM_CHECK_NPE(7)
370 _r2.i = ((java_nio_Buffer*) _r7.o)->fields.java_nio_Buffer.position_;
371 _r5 = _r2;
372 _r2 = _r0;
373 _r0 = _r5;
374 label21:;
375 XMLVM_SOURCE_POSITION("ByteBuffer.java", 311)
376 if (_r2.i > 0) goto label38;
377 XMLVM_SOURCE_POSITION("ByteBuffer.java", 321)
378 XMLVM_CHECK_NPE(6)
379 _r0.i = java_nio_Buffer_remaining__(_r6.o);
380 XMLVM_CHECK_NPE(7)
381 _r1.i = java_nio_Buffer_remaining__(_r7.o);
382 _r0.i = _r0.i - _r1.i;
383 label32:;
384 XMLVM_EXIT_METHOD()
385 return _r0.i;
386 label33:;
387 XMLVM_SOURCE_POSITION("ByteBuffer.java", 307)
388 XMLVM_CHECK_NPE(7)
389 _r0.i = java_nio_Buffer_remaining__(_r7.o);
390 goto label14;
391 label38:;
392 XMLVM_SOURCE_POSITION("ByteBuffer.java", 312)
393 //java_nio_ByteBuffer_get___int[35]
394 XMLVM_CHECK_NPE(6)
395 _r3.i = (*(JAVA_BYTE (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_ByteBuffer*) _r6.o)->tib->vtable[35])(_r6.o, _r1.i);
396 XMLVM_SOURCE_POSITION("ByteBuffer.java", 313)
397 //java_nio_ByteBuffer_get___int[35]
398 XMLVM_CHECK_NPE(7)
399 _r4.i = (*(JAVA_BYTE (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_ByteBuffer*) _r7.o)->tib->vtable[35])(_r7.o, _r0.i);
400 XMLVM_SOURCE_POSITION("ByteBuffer.java", 314)
401 if (_r3.i == _r4.i) goto label54;
402 XMLVM_SOURCE_POSITION("ByteBuffer.java", 315)
403 if (_r3.i >= _r4.i) goto label52;
404 _r0.i = -1;
405 goto label32;
406 label52:;
407 _r0.i = 1;
408 goto label32;
409 label54:;
410 XMLVM_SOURCE_POSITION("ByteBuffer.java", 317)
411 _r1.i = _r1.i + 1;
412 _r0.i = _r0.i + 1;
413 _r2.i = _r2.i + -1;
414 XMLVM_SOURCE_POSITION("ByteBuffer.java", 319)
415 goto label21;
416 //XMLVM_END_WRAPPER
417 }
418
java_nio_ByteBuffer_equals___java_lang_Object(JAVA_OBJECT me,JAVA_OBJECT n1)419 JAVA_BOOLEAN java_nio_ByteBuffer_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)
420 {
421 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_equals___java_lang_Object]
422 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "equals", "?")
423 XMLVMElem _r0;
424 XMLVMElem _r1;
425 XMLVMElem _r2;
426 XMLVMElem _r3;
427 XMLVMElem _r4;
428 XMLVMElem _r5;
429 XMLVMElem _r6;
430 XMLVMElem _r7;
431 _r6.o = me;
432 _r7.o = n1;
433 _r5.i = 1;
434 _r4.i = 0;
435 XMLVM_SOURCE_POSITION("ByteBuffer.java", 353)
436 XMLVM_CLASS_INIT(java_nio_ByteBuffer)
437 _r0.i = XMLVM_ISA(_r7.o, __CLASS_java_nio_ByteBuffer);
438 if (_r0.i != 0) goto label8;
439 _r0 = _r4;
440 label7:;
441 XMLVM_SOURCE_POSITION("ByteBuffer.java", 354)
442 XMLVM_SOURCE_POSITION("ByteBuffer.java", 369)
443 XMLVM_EXIT_METHOD()
444 return _r0.i;
445 label8:;
446 XMLVM_SOURCE_POSITION("ByteBuffer.java", 356)
447 _r7.o = _r7.o;
448 XMLVM_SOURCE_POSITION("ByteBuffer.java", 358)
449 XMLVM_CHECK_NPE(6)
450 _r0.i = java_nio_Buffer_remaining__(_r6.o);
451 XMLVM_CHECK_NPE(7)
452 _r1.i = java_nio_Buffer_remaining__(_r7.o);
453 if (_r0.i == _r1.i) goto label22;
454 _r0 = _r4;
455 XMLVM_SOURCE_POSITION("ByteBuffer.java", 359)
456 goto label7;
457 label22:;
458 XMLVM_SOURCE_POSITION("ByteBuffer.java", 362)
459 XMLVM_CHECK_NPE(6)
460 _r0.i = ((java_nio_Buffer*) _r6.o)->fields.java_nio_Buffer.position_;
461 XMLVM_SOURCE_POSITION("ByteBuffer.java", 363)
462 XMLVM_CHECK_NPE(7)
463 _r1.i = ((java_nio_Buffer*) _r7.o)->fields.java_nio_Buffer.position_;
464 _r2 = _r0;
465 _r0 = _r5;
466 label28:;
467 XMLVM_SOURCE_POSITION("ByteBuffer.java", 365)
468 if (_r0.i == 0) goto label7;
469 XMLVM_CHECK_NPE(6)
470 _r3.i = ((java_nio_Buffer*) _r6.o)->fields.java_nio_Buffer.limit_;
471 if (_r2.i >= _r3.i) goto label7;
472 XMLVM_SOURCE_POSITION("ByteBuffer.java", 366)
473 _r0.i = _r2.i + 1;
474 //java_nio_ByteBuffer_get___int[35]
475 XMLVM_CHECK_NPE(6)
476 _r2.i = (*(JAVA_BYTE (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_ByteBuffer*) _r6.o)->tib->vtable[35])(_r6.o, _r2.i);
477 _r3.i = _r1.i + 1;
478 //java_nio_ByteBuffer_get___int[35]
479 XMLVM_CHECK_NPE(7)
480 _r1.i = (*(JAVA_BYTE (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_ByteBuffer*) _r7.o)->tib->vtable[35])(_r7.o, _r1.i);
481 if (_r2.i != _r1.i) goto label53;
482 _r1 = _r5;
483 label49:;
484 _r2 = _r0;
485 _r0 = _r1;
486 _r1 = _r3;
487 goto label28;
488 label53:;
489 _r1 = _r4;
490 goto label49;
491 //XMLVM_END_WRAPPER
492 }
493
java_nio_ByteBuffer_get___byte_1ARRAY(JAVA_OBJECT me,JAVA_OBJECT n1)494 JAVA_OBJECT java_nio_ByteBuffer_get___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)
495 {
496 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_get___byte_1ARRAY]
497 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "get", "?")
498 XMLVMElem _r0;
499 XMLVMElem _r1;
500 XMLVMElem _r2;
501 XMLVMElem _r3;
502 _r2.o = me;
503 _r3.o = n1;
504 XMLVM_SOURCE_POSITION("ByteBuffer.java", 395)
505 _r0.i = 0;
506 _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o));
507 //java_nio_ByteBuffer_get___byte_1ARRAY_int_int[34]
508 XMLVM_CHECK_NPE(2)
509 _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_INT, JAVA_INT)) ((java_nio_ByteBuffer*) _r2.o)->tib->vtable[34])(_r2.o, _r3.o, _r0.i, _r1.i);
510 XMLVM_EXIT_METHOD()
511 return _r0.o;
512 //XMLVM_END_WRAPPER
513 }
514
java_nio_ByteBuffer_get___byte_1ARRAY_int_int(JAVA_OBJECT me,JAVA_OBJECT n1,JAVA_INT n2,JAVA_INT n3)515 JAVA_OBJECT java_nio_ByteBuffer_get___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3)
516 {
517 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_get___byte_1ARRAY_int_int]
518 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "get", "?")
519 XMLVMElem _r0;
520 XMLVMElem _r1;
521 XMLVMElem _r2;
522 XMLVMElem _r3;
523 XMLVMElem _r4;
524 XMLVMElem _r5;
525 XMLVMElem _r6;
526 XMLVMElem _r7;
527 XMLVMElem _r8;
528 _r5.o = me;
529 _r6.o = n1;
530 _r7.i = n2;
531 _r8.i = n3;
532 XMLVM_SOURCE_POSITION("ByteBuffer.java", 418)
533 _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o));
534 XMLVM_SOURCE_POSITION("ByteBuffer.java", 419)
535 if (_r7.i < 0) goto label13;
536 if (_r8.i < 0) goto label13;
537 _r1.l = (JAVA_LONG) _r7.i;
538 _r3.l = (JAVA_LONG) _r8.i;
539 _r1.l = _r1.l + _r3.l;
540 _r3.l = (JAVA_LONG) _r0.i;
541 _r0.i = _r1.l > _r3.l ? 1 : (_r1.l == _r3.l ? 0 : -1);
542 if (_r0.i <= 0) goto label19;
543 label13:;
544 XMLVM_SOURCE_POSITION("ByteBuffer.java", 420)
545 _r0.o = __NEW_java_lang_IndexOutOfBoundsException();
546 XMLVM_CHECK_NPE(0)
547 java_lang_IndexOutOfBoundsException___INIT___(_r0.o);
548 XMLVM_THROW_CUSTOM(_r0.o)
549 label19:;
550 XMLVM_SOURCE_POSITION("ByteBuffer.java", 423)
551 XMLVM_CHECK_NPE(5)
552 _r0.i = java_nio_Buffer_remaining__(_r5.o);
553 if (_r8.i <= _r0.i) goto label31;
554 XMLVM_SOURCE_POSITION("ByteBuffer.java", 424)
555
556
557 // Red class access removed: java.nio.BufferUnderflowException::new-instance
558 XMLVM_RED_CLASS_DEPENDENCY();
559
560
561 // Red class access removed: java.nio.BufferUnderflowException::<init>
562 XMLVM_RED_CLASS_DEPENDENCY();
563 XMLVM_THROW_CUSTOM(_r0.o)
564 label31:;
565 _r0 = _r7;
566 label32:;
567 XMLVM_SOURCE_POSITION("ByteBuffer.java", 426)
568 _r1.i = _r7.i + _r8.i;
569 if (_r0.i < _r1.i) goto label37;
570 XMLVM_SOURCE_POSITION("ByteBuffer.java", 429)
571 XMLVM_EXIT_METHOD()
572 return _r5.o;
573 label37:;
574 XMLVM_SOURCE_POSITION("ByteBuffer.java", 427)
575 //java_nio_ByteBuffer_get__[33]
576 XMLVM_CHECK_NPE(5)
577 _r1.i = (*(JAVA_BYTE (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r5.o)->tib->vtable[33])(_r5.o);
578 XMLVM_CHECK_NPE(6)
579 XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r0.i);
580 ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r1.i;
581 _r0.i = _r0.i + 1;
582 goto label32;
583 //XMLVM_END_WRAPPER
584 }
585
java_nio_ByteBuffer_hasArray__(JAVA_OBJECT me)586 JAVA_BOOLEAN java_nio_ByteBuffer_hasArray__(JAVA_OBJECT me)
587 {
588 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_hasArray__]
589 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "hasArray", "?")
590 XMLVMElem _r0;
591 XMLVMElem _r1;
592 _r1.o = me;
593 XMLVM_SOURCE_POSITION("ByteBuffer.java", 621)
594 //java_nio_ByteBuffer_protectedHasArray__[38]
595 XMLVM_CHECK_NPE(1)
596 _r0.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT)) ((java_nio_ByteBuffer*) _r1.o)->tib->vtable[38])(_r1.o);
597 XMLVM_EXIT_METHOD()
598 return _r0.i;
599 //XMLVM_END_WRAPPER
600 }
601
java_nio_ByteBuffer_hashCode__(JAVA_OBJECT me)602 JAVA_INT java_nio_ByteBuffer_hashCode__(JAVA_OBJECT me)
603 {
604 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_hashCode__]
605 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "hashCode", "?")
606 XMLVMElem _r0;
607 XMLVMElem _r1;
608 XMLVMElem _r2;
609 XMLVMElem _r3;
610 XMLVMElem _r4;
611 _r4.o = me;
612 XMLVM_SOURCE_POSITION("ByteBuffer.java", 632)
613 XMLVM_CHECK_NPE(4)
614 _r0.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.position_;
615 XMLVM_SOURCE_POSITION("ByteBuffer.java", 633)
616 _r1.i = 0;
617 _r3 = _r1;
618 _r1 = _r0;
619 _r0 = _r3;
620 label6:;
621 XMLVM_SOURCE_POSITION("ByteBuffer.java", 634)
622 XMLVM_CHECK_NPE(4)
623 _r2.i = ((java_nio_Buffer*) _r4.o)->fields.java_nio_Buffer.limit_;
624 if (_r1.i < _r2.i) goto label11;
625 XMLVM_SOURCE_POSITION("ByteBuffer.java", 637)
626 XMLVM_EXIT_METHOD()
627 return _r0.i;
628 label11:;
629 XMLVM_SOURCE_POSITION("ByteBuffer.java", 635)
630 _r2.i = _r1.i + 1;
631 //java_nio_ByteBuffer_get___int[35]
632 XMLVM_CHECK_NPE(4)
633 _r1.i = (*(JAVA_BYTE (*)(JAVA_OBJECT, JAVA_INT)) ((java_nio_ByteBuffer*) _r4.o)->tib->vtable[35])(_r4.o, _r1.i);
634 _r0.i = _r0.i + _r1.i;
635 _r1 = _r2;
636 goto label6;
637 //XMLVM_END_WRAPPER
638 }
639
java_nio_ByteBuffer_order__(JAVA_OBJECT me)640 JAVA_OBJECT java_nio_ByteBuffer_order__(JAVA_OBJECT me)
641 {
642 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_order__]
643 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "order", "?")
644 XMLVMElem _r0;
645 XMLVMElem _r1;
646 XMLVMElem _r2;
647 _r2.o = me;
648 XMLVM_SOURCE_POSITION("ByteBuffer.java", 658)
649 XMLVM_CHECK_NPE(2)
650 _r0.o = ((java_nio_ByteBuffer*) _r2.o)->fields.java_nio_ByteBuffer.order_;
651 _r1.o = org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN();
652 if (_r0.o != _r1.o) goto label9;
653
654
655 // Red class access removed: java.nio.ByteOrder,java.nio.ByteOrder::BIG_ENDIAN
656 XMLVM_RED_CLASS_DEPENDENCY();
657 label8:;
658 XMLVM_EXIT_METHOD()
659 return _r0.o;
660 label9:;
661 XMLVM_SOURCE_POSITION("ByteBuffer.java", 659)
662
663
664 // Red class access removed: java.nio.ByteOrder,java.nio.ByteOrder::LITTLE_ENDIAN
665 XMLVM_RED_CLASS_DEPENDENCY();
666 goto label8;
667 //XMLVM_END_WRAPPER
668 }
669
java_nio_ByteBuffer_order___java_nio_ByteOrder(JAVA_OBJECT me,JAVA_OBJECT n1)670 JAVA_OBJECT java_nio_ByteBuffer_order___java_nio_ByteOrder(JAVA_OBJECT me, JAVA_OBJECT n1)
671 {
672 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_order___java_nio_ByteOrder]
673 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "order", "?")
674 XMLVMElem _r0;
675 XMLVMElem _r1;
676 XMLVMElem _r2;
677 _r1.o = me;
678 _r2.o = n1;
679 XMLVM_SOURCE_POSITION("ByteBuffer.java", 672)
680 XMLVM_CHECK_NPE(1)
681 _r0.o = java_nio_ByteBuffer_orderImpl___java_nio_ByteOrder(_r1.o, _r2.o);
682 XMLVM_EXIT_METHOD()
683 return _r0.o;
684 //XMLVM_END_WRAPPER
685 }
686
java_nio_ByteBuffer_orderImpl___java_nio_ByteOrder(JAVA_OBJECT me,JAVA_OBJECT n1)687 JAVA_OBJECT java_nio_ByteBuffer_orderImpl___java_nio_ByteOrder(JAVA_OBJECT me, JAVA_OBJECT n1)
688 {
689 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_orderImpl___java_nio_ByteOrder]
690 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "orderImpl", "?")
691 XMLVMElem _r0;
692 XMLVMElem _r1;
693 XMLVMElem _r2;
694 _r1.o = me;
695 _r2.o = n1;
696 XMLVM_SOURCE_POSITION("ByteBuffer.java", 676)
697
698
699 // Red class access removed: java.nio.ByteOrder,java.nio.ByteOrder::BIG_ENDIAN
700 XMLVM_RED_CLASS_DEPENDENCY();
701 if (_r2.o != _r0.o) goto label9;
702 _r0.o = org_apache_harmony_luni_platform_Endianness_GET_BIG_ENDIAN();
703 label6:;
704 XMLVM_CHECK_NPE(1)
705 ((java_nio_ByteBuffer*) _r1.o)->fields.java_nio_ByteBuffer.order_ = _r0.o;
706 XMLVM_SOURCE_POSITION("ByteBuffer.java", 678)
707 XMLVM_EXIT_METHOD()
708 return _r1.o;
709 label9:;
710 XMLVM_SOURCE_POSITION("ByteBuffer.java", 677)
711 _r0.o = org_apache_harmony_luni_platform_Endianness_GET_LITTLE_ENDIAN();
712 goto label6;
713 //XMLVM_END_WRAPPER
714 }
715
java_nio_ByteBuffer_put___byte_1ARRAY(JAVA_OBJECT me,JAVA_OBJECT n1)716 JAVA_OBJECT java_nio_ByteBuffer_put___byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)
717 {
718 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_put___byte_1ARRAY]
719 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "put", "?")
720 XMLVMElem _r0;
721 XMLVMElem _r1;
722 XMLVMElem _r2;
723 XMLVMElem _r3;
724 _r2.o = me;
725 _r3.o = n1;
726 XMLVM_SOURCE_POSITION("ByteBuffer.java", 732)
727 _r0.i = 0;
728 _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o));
729 //java_nio_ByteBuffer_put___byte_1ARRAY_int_int[52]
730 XMLVM_CHECK_NPE(2)
731 _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_OBJECT, JAVA_INT, JAVA_INT)) ((java_nio_ByteBuffer*) _r2.o)->tib->vtable[52])(_r2.o, _r3.o, _r0.i, _r1.i);
732 XMLVM_EXIT_METHOD()
733 return _r0.o;
734 //XMLVM_END_WRAPPER
735 }
736
java_nio_ByteBuffer_put___byte_1ARRAY_int_int(JAVA_OBJECT me,JAVA_OBJECT n1,JAVA_INT n2,JAVA_INT n3)737 JAVA_OBJECT java_nio_ByteBuffer_put___byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3)
738 {
739 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_put___byte_1ARRAY_int_int]
740 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "put", "?")
741 XMLVMElem _r0;
742 XMLVMElem _r1;
743 XMLVMElem _r2;
744 XMLVMElem _r3;
745 XMLVMElem _r4;
746 XMLVMElem _r5;
747 XMLVMElem _r6;
748 XMLVMElem _r7;
749 XMLVMElem _r8;
750 _r5.o = me;
751 _r6.o = n1;
752 _r7.i = n2;
753 _r8.i = n3;
754 XMLVM_SOURCE_POSITION("ByteBuffer.java", 757)
755 _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o));
756 XMLVM_SOURCE_POSITION("ByteBuffer.java", 758)
757 if (_r7.i < 0) goto label13;
758 if (_r8.i < 0) goto label13;
759 _r1.l = (JAVA_LONG) _r7.i;
760 _r3.l = (JAVA_LONG) _r8.i;
761 _r1.l = _r1.l + _r3.l;
762 _r3.l = (JAVA_LONG) _r0.i;
763 _r0.i = _r1.l > _r3.l ? 1 : (_r1.l == _r3.l ? 0 : -1);
764 if (_r0.i <= 0) goto label19;
765 label13:;
766 XMLVM_SOURCE_POSITION("ByteBuffer.java", 759)
767 _r0.o = __NEW_java_lang_IndexOutOfBoundsException();
768 XMLVM_CHECK_NPE(0)
769 java_lang_IndexOutOfBoundsException___INIT___(_r0.o);
770 XMLVM_THROW_CUSTOM(_r0.o)
771 label19:;
772 XMLVM_SOURCE_POSITION("ByteBuffer.java", 762)
773 XMLVM_CHECK_NPE(5)
774 _r0.i = java_nio_Buffer_remaining__(_r5.o);
775 if (_r8.i <= _r0.i) goto label31;
776 XMLVM_SOURCE_POSITION("ByteBuffer.java", 763)
777
778
779 // Red class access removed: java.nio.BufferOverflowException::new-instance
780 XMLVM_RED_CLASS_DEPENDENCY();
781
782
783 // Red class access removed: java.nio.BufferOverflowException::<init>
784 XMLVM_RED_CLASS_DEPENDENCY();
785 XMLVM_THROW_CUSTOM(_r0.o)
786 label31:;
787 _r0 = _r7;
788 label32:;
789 XMLVM_SOURCE_POSITION("ByteBuffer.java", 765)
790 _r1.i = _r7.i + _r8.i;
791 if (_r0.i < _r1.i) goto label37;
792 XMLVM_SOURCE_POSITION("ByteBuffer.java", 768)
793 XMLVM_EXIT_METHOD()
794 return _r5.o;
795 label37:;
796 XMLVM_SOURCE_POSITION("ByteBuffer.java", 766)
797 XMLVM_CHECK_NPE(6)
798 XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r0.i);
799 _r1.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i];
800 //java_nio_ByteBuffer_put___byte[51]
801 XMLVM_CHECK_NPE(5)
802 (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_BYTE)) ((java_nio_ByteBuffer*) _r5.o)->tib->vtable[51])(_r5.o, _r1.i);
803 _r0.i = _r0.i + 1;
804 goto label32;
805 //XMLVM_END_WRAPPER
806 }
807
java_nio_ByteBuffer_put___java_nio_ByteBuffer(JAVA_OBJECT me,JAVA_OBJECT n1)808 JAVA_OBJECT java_nio_ByteBuffer_put___java_nio_ByteBuffer(JAVA_OBJECT me, JAVA_OBJECT n1)
809 {
810 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_put___java_nio_ByteBuffer]
811 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "put", "?")
812 XMLVMElem _r0;
813 XMLVMElem _r1;
814 XMLVMElem _r2;
815 XMLVMElem _r3;
816 _r2.o = me;
817 _r3.o = n1;
818 XMLVM_SOURCE_POSITION("ByteBuffer.java", 788)
819 if (_r3.o != _r2.o) goto label8;
820 XMLVM_SOURCE_POSITION("ByteBuffer.java", 789)
821
822
823 // Red class access removed: java.lang.IllegalArgumentException::new-instance
824 XMLVM_RED_CLASS_DEPENDENCY();
825
826
827 // Red class access removed: java.lang.IllegalArgumentException::<init>
828 XMLVM_RED_CLASS_DEPENDENCY();
829 XMLVM_THROW_CUSTOM(_r0.o)
830 label8:;
831 XMLVM_SOURCE_POSITION("ByteBuffer.java", 791)
832 XMLVM_CHECK_NPE(3)
833 _r0.i = java_nio_Buffer_remaining__(_r3.o);
834 XMLVM_CHECK_NPE(2)
835 _r1.i = java_nio_Buffer_remaining__(_r2.o);
836 if (_r0.i <= _r1.i) goto label24;
837 XMLVM_SOURCE_POSITION("ByteBuffer.java", 792)
838
839
840 // Red class access removed: java.nio.BufferOverflowException::new-instance
841 XMLVM_RED_CLASS_DEPENDENCY();
842
843
844 // Red class access removed: java.nio.BufferOverflowException::<init>
845 XMLVM_RED_CLASS_DEPENDENCY();
846 XMLVM_THROW_CUSTOM(_r0.o)
847 label24:;
848 XMLVM_SOURCE_POSITION("ByteBuffer.java", 794)
849 XMLVM_CHECK_NPE(3)
850 _r0.i = java_nio_Buffer_remaining__(_r3.o);
851 XMLVM_CLASS_INIT(byte)
852 _r0.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r0.i);
853 XMLVM_SOURCE_POSITION("ByteBuffer.java", 795)
854 XMLVM_CHECK_NPE(3)
855 java_nio_ByteBuffer_get___byte_1ARRAY(_r3.o, _r0.o);
856 XMLVM_SOURCE_POSITION("ByteBuffer.java", 796)
857 XMLVM_CHECK_NPE(2)
858 java_nio_ByteBuffer_put___byte_1ARRAY(_r2.o, _r0.o);
859 XMLVM_SOURCE_POSITION("ByteBuffer.java", 797)
860 XMLVM_EXIT_METHOD()
861 return _r2.o;
862 //XMLVM_END_WRAPPER
863 }
864
java_nio_ByteBuffer_toString__(JAVA_OBJECT me)865 JAVA_OBJECT java_nio_ByteBuffer_toString__(JAVA_OBJECT me)
866 {
867 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_toString__]
868 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "toString", "?")
869 XMLVMElem _r0;
870 XMLVMElem _r1;
871 XMLVMElem _r2;
872 _r2.o = me;
873 XMLVM_SOURCE_POSITION("ByteBuffer.java", 1050)
874 _r0.o = __NEW_java_lang_StringBuilder();
875 XMLVM_CHECK_NPE(0)
876 java_lang_StringBuilder___INIT___(_r0.o);
877 XMLVM_SOURCE_POSITION("ByteBuffer.java", 1051)
878 //java_lang_Object_getClass__[3]
879 XMLVM_CHECK_NPE(2)
880 _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[3])(_r2.o);
881 XMLVM_CHECK_NPE(1)
882 _r1.o = java_lang_Class_getName__(_r1.o);
883 XMLVM_CHECK_NPE(0)
884 java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o);
885 XMLVM_SOURCE_POSITION("ByteBuffer.java", 1052)
886 // ", status: capacity="
887 _r1.o = xmlvm_create_java_string_from_pool(719);
888 XMLVM_CHECK_NPE(0)
889 java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o);
890 XMLVM_SOURCE_POSITION("ByteBuffer.java", 1053)
891 XMLVM_CHECK_NPE(2)
892 _r1.i = java_nio_Buffer_capacity__(_r2.o);
893 XMLVM_CHECK_NPE(0)
894 java_lang_StringBuilder_append___int(_r0.o, _r1.i);
895 XMLVM_SOURCE_POSITION("ByteBuffer.java", 1054)
896 // " position="
897 _r1.o = xmlvm_create_java_string_from_pool(720);
898 XMLVM_CHECK_NPE(0)
899 java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o);
900 XMLVM_SOURCE_POSITION("ByteBuffer.java", 1055)
901 XMLVM_CHECK_NPE(2)
902 _r1.i = java_nio_Buffer_position__(_r2.o);
903 XMLVM_CHECK_NPE(0)
904 java_lang_StringBuilder_append___int(_r0.o, _r1.i);
905 XMLVM_SOURCE_POSITION("ByteBuffer.java", 1056)
906 // " limit="
907 _r1.o = xmlvm_create_java_string_from_pool(721);
908 XMLVM_CHECK_NPE(0)
909 java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o);
910 XMLVM_SOURCE_POSITION("ByteBuffer.java", 1057)
911 XMLVM_CHECK_NPE(2)
912 _r1.i = java_nio_Buffer_limit__(_r2.o);
913 XMLVM_CHECK_NPE(0)
914 java_lang_StringBuilder_append___int(_r0.o, _r1.i);
915 XMLVM_SOURCE_POSITION("ByteBuffer.java", 1058)
916 //java_lang_StringBuilder_toString__[5]
917 XMLVM_CHECK_NPE(0)
918 _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o);
919 XMLVM_EXIT_METHOD()
920 return _r0.o;
921 //XMLVM_END_WRAPPER
922 }
923
java_nio_ByteBuffer_compareTo___java_lang_Object(JAVA_OBJECT me,JAVA_OBJECT n1)924 JAVA_INT java_nio_ByteBuffer_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)
925 {
926 //XMLVM_BEGIN_WRAPPER[java_nio_ByteBuffer_compareTo___java_lang_Object]
927 XMLVM_ENTER_METHOD("java.nio.ByteBuffer", "compareTo", "?")
928 XMLVMElem _r0;
929 XMLVMElem _r1;
930 XMLVMElem _r2;
931 _r1.o = me;
932 _r2.o = n1;
933 XMLVM_SOURCE_POSITION("ByteBuffer.java", 1)
934 _r2.o = _r2.o;
935 XMLVM_CHECK_NPE(1)
936 _r0.i = java_nio_ByteBuffer_compareTo___java_nio_ByteBuffer(_r1.o, _r2.o);
937 XMLVM_EXIT_METHOD()
938 return _r0.i;
939 //XMLVM_END_WRAPPER
940 }
941
942