~ubuntu-branches/ubuntu/vivid/emscripten/vivid

« back to all changes in this revision

Viewing changes to tests/nbody-java/java_nio_Buffer.c

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2013-06-11 15:45:24 UTC
  • mfrom: (1.2.1) (2.1.1 experimental)
  • Revision ID: package-import@ubuntu.com-20130611154524-rppb3w6tixlegv4n
Tags: 1.4.7~20130611~a1eb425-1
* New snapshot release
* Upload to unstable

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#include "xmlvm.h"
 
2
 
 
3
#include "java_nio_Buffer.h"
 
4
 
 
5
#define XMLVM_CURRENT_CLASS_NAME Buffer
 
6
#define XMLVM_CURRENT_PKG_CLASS_NAME java_nio_Buffer
 
7
 
 
8
__TIB_DEFINITION_java_nio_Buffer __TIB_java_nio_Buffer = {
 
9
    0, // classInitializationBegan
 
10
    0, // classInitialized
 
11
    -1, // initializerThreadId
 
12
    __INIT_java_nio_Buffer, // classInitializer
 
13
    "java.nio.Buffer", // className
 
14
    "java.nio", // package
 
15
    JAVA_NULL, // enclosingClassName
 
16
    JAVA_NULL, // enclosingMethodName
 
17
    JAVA_NULL, // signature
 
18
    (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends
 
19
    sizeof(java_nio_Buffer), // sizeInstance
 
20
    XMLVM_TYPE_CLASS};
 
21
 
 
22
JAVA_OBJECT __CLASS_java_nio_Buffer;
 
23
JAVA_OBJECT __CLASS_java_nio_Buffer_1ARRAY;
 
24
JAVA_OBJECT __CLASS_java_nio_Buffer_2ARRAY;
 
25
JAVA_OBJECT __CLASS_java_nio_Buffer_3ARRAY;
 
26
//XMLVM_BEGIN_IMPLEMENTATION
 
27
//XMLVM_END_IMPLEMENTATION
 
28
 
 
29
static JAVA_INT _STATIC_java_nio_Buffer_UNSET_MARK;
 
30
 
 
31
#include "xmlvm-reflection.h"
 
32
 
 
33
static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = {
 
34
};
 
35
 
 
36
static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = {
 
37
};
 
38
 
 
39
static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments)
 
40
{
 
41
    XMLVM_NOT_IMPLEMENTED();
 
42
}
 
43
 
 
44
static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = {
 
45
};
 
46
 
 
47
static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments)
 
48
{
 
49
    XMLVM_NOT_IMPLEMENTED();
 
50
}
 
51
 
 
52
void __INIT_java_nio_Buffer()
 
53
{
 
54
    staticInitializerLock(&__TIB_java_nio_Buffer);
 
55
 
 
56
    // While the static initializer mutex is locked, locally store the value of
 
57
    // whether class initialization began or not
 
58
    int initBegan = __TIB_java_nio_Buffer.classInitializationBegan;
 
59
 
 
60
    // Whether or not class initialization had already began, it has begun now
 
61
    __TIB_java_nio_Buffer.classInitializationBegan = 1;
 
62
 
 
63
    staticInitializerUnlock(&__TIB_java_nio_Buffer);
 
64
 
 
65
    JAVA_LONG curThreadId = (JAVA_LONG)pthread_self();
 
66
    if (initBegan) {
 
67
        if (__TIB_java_nio_Buffer.initializerThreadId != curThreadId) {
 
68
            // Busy wait until the other thread finishes initializing this class
 
69
            while (!__TIB_java_nio_Buffer.classInitialized) {
 
70
                // do nothing
 
71
            }
 
72
        }
 
73
    } else {
 
74
        __TIB_java_nio_Buffer.initializerThreadId = curThreadId;
 
75
        XMLVM_CLASS_USED("java.nio.Buffer")
 
76
        __INIT_IMPL_java_nio_Buffer();
 
77
    }
 
78
}
 
79
 
 
80
void __INIT_IMPL_java_nio_Buffer()
 
81
{
 
82
    // Initialize base class if necessary
 
83
    XMLVM_CLASS_INIT(java_lang_Object)
 
84
    __TIB_java_nio_Buffer.newInstanceFunc = __NEW_INSTANCE_java_nio_Buffer;
 
85
    // Copy vtable from base class
 
86
    XMLVM_MEMCPY(__TIB_java_nio_Buffer.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable));
 
87
    // Initialize vtable for this class
 
88
    // Initialize interface information
 
89
    __TIB_java_nio_Buffer.numImplementedInterfaces = 0;
 
90
    __TIB_java_nio_Buffer.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 0);
 
91
 
 
92
    // Initialize interfaces if necessary and assign tib to implementedInterfaces
 
93
    _STATIC_java_nio_Buffer_UNSET_MARK = -1;
 
94
 
 
95
    __TIB_java_nio_Buffer.declaredFields = &__field_reflection_data[0];
 
96
    __TIB_java_nio_Buffer.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA);
 
97
    __TIB_java_nio_Buffer.constructorDispatcherFunc = constructor_dispatcher;
 
98
    __TIB_java_nio_Buffer.declaredConstructors = &__constructor_reflection_data[0];
 
99
    __TIB_java_nio_Buffer.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA);
 
100
    __TIB_java_nio_Buffer.methodDispatcherFunc = method_dispatcher;
 
101
    __TIB_java_nio_Buffer.declaredMethods = &__method_reflection_data[0];
 
102
    __TIB_java_nio_Buffer.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA);
 
103
    __CLASS_java_nio_Buffer = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_nio_Buffer);
 
104
    __TIB_java_nio_Buffer.clazz = __CLASS_java_nio_Buffer;
 
105
    __TIB_java_nio_Buffer.baseType = JAVA_NULL;
 
106
    __CLASS_java_nio_Buffer_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_Buffer);
 
107
    __CLASS_java_nio_Buffer_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_Buffer_1ARRAY);
 
108
    __CLASS_java_nio_Buffer_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_nio_Buffer_2ARRAY);
 
109
    //XMLVM_BEGIN_WRAPPER[__INIT_java_nio_Buffer]
 
110
    //XMLVM_END_WRAPPER
 
111
 
 
112
    __TIB_java_nio_Buffer.classInitialized = 1;
 
113
}
 
114
 
 
115
void __DELETE_java_nio_Buffer(void* me, void* client_data)
 
116
{
 
117
    //XMLVM_BEGIN_WRAPPER[__DELETE_java_nio_Buffer]
 
118
    //XMLVM_END_WRAPPER
 
119
}
 
120
 
 
121
void __INIT_INSTANCE_MEMBERS_java_nio_Buffer(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer)
 
122
{
 
123
    __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer);
 
124
    ((java_nio_Buffer*) me)->fields.java_nio_Buffer.capacity_ = 0;
 
125
    ((java_nio_Buffer*) me)->fields.java_nio_Buffer.limit_ = 0;
 
126
    ((java_nio_Buffer*) me)->fields.java_nio_Buffer.mark_ = 0;
 
127
    ((java_nio_Buffer*) me)->fields.java_nio_Buffer.position_ = 0;
 
128
    //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_nio_Buffer]
 
129
    //XMLVM_END_WRAPPER
 
130
}
 
131
 
 
132
JAVA_OBJECT __NEW_java_nio_Buffer()
 
133
{    XMLVM_CLASS_INIT(java_nio_Buffer)
 
134
java_nio_Buffer* me = (java_nio_Buffer*) XMLVM_MALLOC(sizeof(java_nio_Buffer));
 
135
    me->tib = &__TIB_java_nio_Buffer;
 
136
    __INIT_INSTANCE_MEMBERS_java_nio_Buffer(me, 0);
 
137
    //XMLVM_BEGIN_WRAPPER[__NEW_java_nio_Buffer]
 
138
    //XMLVM_END_WRAPPER
 
139
    return me;
 
140
}
 
141
 
 
142
JAVA_OBJECT __NEW_INSTANCE_java_nio_Buffer()
 
143
{
 
144
    JAVA_OBJECT me = JAVA_NULL;
 
145
    return me;
 
146
}
 
147
 
 
148
JAVA_INT java_nio_Buffer_GET_UNSET_MARK()
 
149
{
 
150
    XMLVM_CLASS_INIT(java_nio_Buffer)
 
151
    return _STATIC_java_nio_Buffer_UNSET_MARK;
 
152
}
 
153
 
 
154
void java_nio_Buffer_PUT_UNSET_MARK(JAVA_INT v)
 
155
{
 
156
    XMLVM_CLASS_INIT(java_nio_Buffer)
 
157
_STATIC_java_nio_Buffer_UNSET_MARK = v;
 
158
}
 
159
 
 
160
void java_nio_Buffer___INIT____int(JAVA_OBJECT me, JAVA_INT n1)
 
161
{
 
162
    //XMLVM_BEGIN_WRAPPER[java_nio_Buffer___INIT____int]
 
163
    XMLVM_ENTER_METHOD("java.nio.Buffer", "<init>", "?")
 
164
    XMLVMElem _r0;
 
165
    XMLVMElem _r1;
 
166
    XMLVMElem _r2;
 
167
    _r1.o = me;
 
168
    _r2.i = n1;
 
169
    XMLVM_SOURCE_POSITION("Buffer.java", 85)
 
170
    XMLVM_CHECK_NPE(1)
 
171
    java_lang_Object___INIT___(_r1.o);
 
172
    XMLVM_SOURCE_POSITION("Buffer.java", 70)
 
173
    _r0.i = -1;
 
174
    XMLVM_CHECK_NPE(1)
 
175
    ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i;
 
176
    XMLVM_SOURCE_POSITION("Buffer.java", 76)
 
177
    _r0.i = 0;
 
178
    XMLVM_CHECK_NPE(1)
 
179
    ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_ = _r0.i;
 
180
    XMLVM_SOURCE_POSITION("Buffer.java", 86)
 
181
    if (_r2.i >= 0) goto label17;
 
182
    XMLVM_SOURCE_POSITION("Buffer.java", 87)
 
183
 
 
184
    
 
185
    // Red class access removed: java.lang.IllegalArgumentException::new-instance
 
186
    XMLVM_RED_CLASS_DEPENDENCY();
 
187
 
 
188
    
 
189
    // Red class access removed: java.lang.IllegalArgumentException::<init>
 
190
    XMLVM_RED_CLASS_DEPENDENCY();
 
191
    XMLVM_THROW_CUSTOM(_r0.o)
 
192
    label17:;
 
193
    XMLVM_SOURCE_POSITION("Buffer.java", 89)
 
194
    XMLVM_CHECK_NPE(1)
 
195
    ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.limit_ = _r2.i;
 
196
    XMLVM_CHECK_NPE(1)
 
197
    ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.capacity_ = _r2.i;
 
198
    XMLVM_SOURCE_POSITION("Buffer.java", 90)
 
199
    XMLVM_EXIT_METHOD()
 
200
    return;
 
201
    //XMLVM_END_WRAPPER
 
202
}
 
203
 
 
204
JAVA_INT java_nio_Buffer_capacity__(JAVA_OBJECT me)
 
205
{
 
206
    //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_capacity__]
 
207
    XMLVM_ENTER_METHOD("java.nio.Buffer", "capacity", "?")
 
208
    XMLVMElem _r0;
 
209
    XMLVMElem _r1;
 
210
    _r1.o = me;
 
211
    XMLVM_SOURCE_POSITION("Buffer.java", 145)
 
212
    XMLVM_CHECK_NPE(1)
 
213
    _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.capacity_;
 
214
    XMLVM_EXIT_METHOD()
 
215
    return _r0.i;
 
216
    //XMLVM_END_WRAPPER
 
217
}
 
218
 
 
219
JAVA_OBJECT java_nio_Buffer_clear__(JAVA_OBJECT me)
 
220
{
 
221
    //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_clear__]
 
222
    XMLVM_ENTER_METHOD("java.nio.Buffer", "clear", "?")
 
223
    XMLVMElem _r0;
 
224
    XMLVMElem _r1;
 
225
    _r1.o = me;
 
226
    XMLVM_SOURCE_POSITION("Buffer.java", 159)
 
227
    _r0.i = 0;
 
228
    XMLVM_CHECK_NPE(1)
 
229
    ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_ = _r0.i;
 
230
    XMLVM_SOURCE_POSITION("Buffer.java", 160)
 
231
    _r0.i = -1;
 
232
    XMLVM_CHECK_NPE(1)
 
233
    ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i;
 
234
    XMLVM_SOURCE_POSITION("Buffer.java", 161)
 
235
    XMLVM_CHECK_NPE(1)
 
236
    _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.capacity_;
 
237
    XMLVM_CHECK_NPE(1)
 
238
    ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.limit_ = _r0.i;
 
239
    XMLVM_SOURCE_POSITION("Buffer.java", 162)
 
240
    XMLVM_EXIT_METHOD()
 
241
    return _r1.o;
 
242
    //XMLVM_END_WRAPPER
 
243
}
 
244
 
 
245
JAVA_OBJECT java_nio_Buffer_flip__(JAVA_OBJECT me)
 
246
{
 
247
    //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_flip__]
 
248
    XMLVM_ENTER_METHOD("java.nio.Buffer", "flip", "?")
 
249
    XMLVMElem _r0;
 
250
    XMLVMElem _r1;
 
251
    _r1.o = me;
 
252
    XMLVM_SOURCE_POSITION("Buffer.java", 176)
 
253
    XMLVM_CHECK_NPE(1)
 
254
    _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_;
 
255
    XMLVM_CHECK_NPE(1)
 
256
    ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.limit_ = _r0.i;
 
257
    XMLVM_SOURCE_POSITION("Buffer.java", 177)
 
258
    _r0.i = 0;
 
259
    XMLVM_CHECK_NPE(1)
 
260
    ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_ = _r0.i;
 
261
    XMLVM_SOURCE_POSITION("Buffer.java", 178)
 
262
    _r0.i = -1;
 
263
    XMLVM_CHECK_NPE(1)
 
264
    ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i;
 
265
    XMLVM_SOURCE_POSITION("Buffer.java", 179)
 
266
    XMLVM_EXIT_METHOD()
 
267
    return _r1.o;
 
268
    //XMLVM_END_WRAPPER
 
269
}
 
270
 
 
271
JAVA_BOOLEAN java_nio_Buffer_hasRemaining__(JAVA_OBJECT me)
 
272
{
 
273
    //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_hasRemaining__]
 
274
    XMLVM_ENTER_METHOD("java.nio.Buffer", "hasRemaining", "?")
 
275
    XMLVMElem _r0;
 
276
    XMLVMElem _r1;
 
277
    XMLVMElem _r2;
 
278
    _r2.o = me;
 
279
    XMLVM_SOURCE_POSITION("Buffer.java", 205)
 
280
    XMLVM_CHECK_NPE(2)
 
281
    _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_;
 
282
    XMLVM_CHECK_NPE(2)
 
283
    _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_;
 
284
    if (_r0.i >= _r1.i) goto label8;
 
285
    _r0.i = 1;
 
286
    label7:;
 
287
    XMLVM_EXIT_METHOD()
 
288
    return _r0.i;
 
289
    label8:;
 
290
    _r0.i = 0;
 
291
    goto label7;
 
292
    //XMLVM_END_WRAPPER
 
293
}
 
294
 
 
295
JAVA_INT java_nio_Buffer_limit__(JAVA_OBJECT me)
 
296
{
 
297
    //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_limit__]
 
298
    XMLVM_ENTER_METHOD("java.nio.Buffer", "limit", "?")
 
299
    XMLVMElem _r0;
 
300
    XMLVMElem _r1;
 
301
    _r1.o = me;
 
302
    XMLVM_SOURCE_POSITION("Buffer.java", 231)
 
303
    XMLVM_CHECK_NPE(1)
 
304
    _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.limit_;
 
305
    XMLVM_EXIT_METHOD()
 
306
    return _r0.i;
 
307
    //XMLVM_END_WRAPPER
 
308
}
 
309
 
 
310
JAVA_OBJECT java_nio_Buffer_limit___int(JAVA_OBJECT me, JAVA_INT n1)
 
311
{
 
312
    //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_limit___int]
 
313
    XMLVM_ENTER_METHOD("java.nio.Buffer", "limit", "?")
 
314
    XMLVMElem _r0;
 
315
    XMLVMElem _r1;
 
316
    XMLVMElem _r2;
 
317
    XMLVMElem _r3;
 
318
    _r2.o = me;
 
319
    _r3.i = n1;
 
320
    _r1.i = -1;
 
321
    XMLVM_SOURCE_POSITION("Buffer.java", 250)
 
322
    if (_r3.i < 0) goto label7;
 
323
    XMLVM_CHECK_NPE(2)
 
324
    _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.capacity_;
 
325
    if (_r3.i <= _r0.i) goto label13;
 
326
    label7:;
 
327
    XMLVM_SOURCE_POSITION("Buffer.java", 251)
 
328
 
 
329
    
 
330
    // Red class access removed: java.lang.IllegalArgumentException::new-instance
 
331
    XMLVM_RED_CLASS_DEPENDENCY();
 
332
 
 
333
    
 
334
    // Red class access removed: java.lang.IllegalArgumentException::<init>
 
335
    XMLVM_RED_CLASS_DEPENDENCY();
 
336
    XMLVM_THROW_CUSTOM(_r0.o)
 
337
    label13:;
 
338
    XMLVM_SOURCE_POSITION("Buffer.java", 254)
 
339
    XMLVM_CHECK_NPE(2)
 
340
    ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_ = _r3.i;
 
341
    XMLVM_SOURCE_POSITION("Buffer.java", 255)
 
342
    XMLVM_CHECK_NPE(2)
 
343
    _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_;
 
344
    if (_r0.i <= _r3.i) goto label21;
 
345
    XMLVM_SOURCE_POSITION("Buffer.java", 256)
 
346
    XMLVM_CHECK_NPE(2)
 
347
    ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_ = _r3.i;
 
348
    label21:;
 
349
    XMLVM_SOURCE_POSITION("Buffer.java", 258)
 
350
    XMLVM_CHECK_NPE(2)
 
351
    _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_;
 
352
    if (_r0.i == _r1.i) goto label31;
 
353
    XMLVM_CHECK_NPE(2)
 
354
    _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_;
 
355
    if (_r0.i <= _r3.i) goto label31;
 
356
    XMLVM_SOURCE_POSITION("Buffer.java", 259)
 
357
    XMLVM_CHECK_NPE(2)
 
358
    ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_ = _r1.i;
 
359
    label31:;
 
360
    XMLVM_SOURCE_POSITION("Buffer.java", 261)
 
361
    XMLVM_EXIT_METHOD()
 
362
    return _r2.o;
 
363
    //XMLVM_END_WRAPPER
 
364
}
 
365
 
 
366
JAVA_OBJECT java_nio_Buffer_mark__(JAVA_OBJECT me)
 
367
{
 
368
    //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_mark__]
 
369
    XMLVM_ENTER_METHOD("java.nio.Buffer", "mark", "?")
 
370
    XMLVMElem _r0;
 
371
    XMLVMElem _r1;
 
372
    _r1.o = me;
 
373
    XMLVM_SOURCE_POSITION("Buffer.java", 271)
 
374
    XMLVM_CHECK_NPE(1)
 
375
    _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_;
 
376
    XMLVM_CHECK_NPE(1)
 
377
    ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i;
 
378
    XMLVM_SOURCE_POSITION("Buffer.java", 272)
 
379
    XMLVM_EXIT_METHOD()
 
380
    return _r1.o;
 
381
    //XMLVM_END_WRAPPER
 
382
}
 
383
 
 
384
JAVA_INT java_nio_Buffer_position__(JAVA_OBJECT me)
 
385
{
 
386
    //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_position__]
 
387
    XMLVM_ENTER_METHOD("java.nio.Buffer", "position", "?")
 
388
    XMLVMElem _r0;
 
389
    XMLVMElem _r1;
 
390
    _r1.o = me;
 
391
    XMLVM_SOURCE_POSITION("Buffer.java", 281)
 
392
    XMLVM_CHECK_NPE(1)
 
393
    _r0.i = ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_;
 
394
    XMLVM_EXIT_METHOD()
 
395
    return _r0.i;
 
396
    //XMLVM_END_WRAPPER
 
397
}
 
398
 
 
399
JAVA_OBJECT java_nio_Buffer_position___int(JAVA_OBJECT me, JAVA_INT n1)
 
400
{
 
401
    //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_position___int]
 
402
    XMLVM_ENTER_METHOD("java.nio.Buffer", "position", "?")
 
403
    XMLVMElem _r0;
 
404
    XMLVMElem _r1;
 
405
    XMLVMElem _r2;
 
406
    XMLVMElem _r3;
 
407
    XMLVMElem _r4;
 
408
    _r3.o = me;
 
409
    _r4.i = n1;
 
410
    _r2.i = -1;
 
411
    XMLVM_SOURCE_POSITION("Buffer.java", 298)
 
412
    if (_r4.i < 0) goto label7;
 
413
    XMLVM_CHECK_NPE(3)
 
414
    _r0.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.limit_;
 
415
    if (_r4.i <= _r0.i) goto label13;
 
416
    label7:;
 
417
    XMLVM_SOURCE_POSITION("Buffer.java", 299)
 
418
 
 
419
    
 
420
    // Red class access removed: java.lang.IllegalArgumentException::new-instance
 
421
    XMLVM_RED_CLASS_DEPENDENCY();
 
422
 
 
423
    
 
424
    // Red class access removed: java.lang.IllegalArgumentException::<init>
 
425
    XMLVM_RED_CLASS_DEPENDENCY();
 
426
    XMLVM_THROW_CUSTOM(_r0.o)
 
427
    label13:;
 
428
    XMLVM_SOURCE_POSITION("Buffer.java", 302)
 
429
    XMLVM_CHECK_NPE(3)
 
430
    ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.position_ = _r4.i;
 
431
    XMLVM_SOURCE_POSITION("Buffer.java", 303)
 
432
    XMLVM_CHECK_NPE(3)
 
433
    _r0.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.mark_;
 
434
    if (_r0.i == _r2.i) goto label27;
 
435
    XMLVM_CHECK_NPE(3)
 
436
    _r0.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.mark_;
 
437
    XMLVM_CHECK_NPE(3)
 
438
    _r1.i = ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.position_;
 
439
    if (_r0.i <= _r1.i) goto label27;
 
440
    XMLVM_SOURCE_POSITION("Buffer.java", 304)
 
441
    XMLVM_CHECK_NPE(3)
 
442
    ((java_nio_Buffer*) _r3.o)->fields.java_nio_Buffer.mark_ = _r2.i;
 
443
    label27:;
 
444
    XMLVM_SOURCE_POSITION("Buffer.java", 306)
 
445
    XMLVM_EXIT_METHOD()
 
446
    return _r3.o;
 
447
    //XMLVM_END_WRAPPER
 
448
}
 
449
 
 
450
JAVA_INT java_nio_Buffer_remaining__(JAVA_OBJECT me)
 
451
{
 
452
    //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_remaining__]
 
453
    XMLVM_ENTER_METHOD("java.nio.Buffer", "remaining", "?")
 
454
    XMLVMElem _r0;
 
455
    XMLVMElem _r1;
 
456
    XMLVMElem _r2;
 
457
    _r2.o = me;
 
458
    XMLVM_SOURCE_POSITION("Buffer.java", 316)
 
459
    XMLVM_CHECK_NPE(2)
 
460
    _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.limit_;
 
461
    XMLVM_CHECK_NPE(2)
 
462
    _r1.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_;
 
463
    _r0.i = _r0.i - _r1.i;
 
464
    XMLVM_EXIT_METHOD()
 
465
    return _r0.i;
 
466
    //XMLVM_END_WRAPPER
 
467
}
 
468
 
 
469
JAVA_OBJECT java_nio_Buffer_reset__(JAVA_OBJECT me)
 
470
{
 
471
    //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_reset__]
 
472
    XMLVM_ENTER_METHOD("java.nio.Buffer", "reset", "?")
 
473
    XMLVMElem _r0;
 
474
    XMLVMElem _r1;
 
475
    XMLVMElem _r2;
 
476
    _r2.o = me;
 
477
    XMLVM_SOURCE_POSITION("Buffer.java", 327)
 
478
    XMLVM_CHECK_NPE(2)
 
479
    _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_;
 
480
    _r1.i = -1;
 
481
    if (_r0.i != _r1.i) goto label11;
 
482
    XMLVM_SOURCE_POSITION("Buffer.java", 328)
 
483
 
 
484
    
 
485
    // Red class access removed: java.nio.InvalidMarkException::new-instance
 
486
    XMLVM_RED_CLASS_DEPENDENCY();
 
487
 
 
488
    
 
489
    // Red class access removed: java.nio.InvalidMarkException::<init>
 
490
    XMLVM_RED_CLASS_DEPENDENCY();
 
491
    XMLVM_THROW_CUSTOM(_r0.o)
 
492
    label11:;
 
493
    XMLVM_SOURCE_POSITION("Buffer.java", 330)
 
494
    XMLVM_CHECK_NPE(2)
 
495
    _r0.i = ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.mark_;
 
496
    XMLVM_CHECK_NPE(2)
 
497
    ((java_nio_Buffer*) _r2.o)->fields.java_nio_Buffer.position_ = _r0.i;
 
498
    XMLVM_SOURCE_POSITION("Buffer.java", 331)
 
499
    XMLVM_EXIT_METHOD()
 
500
    return _r2.o;
 
501
    //XMLVM_END_WRAPPER
 
502
}
 
503
 
 
504
JAVA_OBJECT java_nio_Buffer_rewind__(JAVA_OBJECT me)
 
505
{
 
506
    //XMLVM_BEGIN_WRAPPER[java_nio_Buffer_rewind__]
 
507
    XMLVM_ENTER_METHOD("java.nio.Buffer", "rewind", "?")
 
508
    XMLVMElem _r0;
 
509
    XMLVMElem _r1;
 
510
    _r1.o = me;
 
511
    XMLVM_SOURCE_POSITION("Buffer.java", 343)
 
512
    _r0.i = 0;
 
513
    XMLVM_CHECK_NPE(1)
 
514
    ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.position_ = _r0.i;
 
515
    XMLVM_SOURCE_POSITION("Buffer.java", 344)
 
516
    _r0.i = -1;
 
517
    XMLVM_CHECK_NPE(1)
 
518
    ((java_nio_Buffer*) _r1.o)->fields.java_nio_Buffer.mark_ = _r0.i;
 
519
    XMLVM_SOURCE_POSITION("Buffer.java", 345)
 
520
    XMLVM_EXIT_METHOD()
 
521
    return _r1.o;
 
522
    //XMLVM_END_WRAPPER
 
523
}
 
524