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

« back to all changes in this revision

Viewing changes to tests/nbody-java/java_lang_Class.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
#include "java_io_File.h"
 
3
#include "java_io_IOException.h"
 
4
#include "java_lang_ClassLoader.h"
 
5
#include "java_lang_RuntimeException.h"
 
6
#include "java_lang_String.h"
 
7
#include "java_lang_StringBuilder.h"
 
8
#include "java_lang_System.h"
 
9
#include "java_lang_Throwable.h"
 
10
#include "java_lang_reflect_Constructor.h"
 
11
#include "java_lang_reflect_Field.h"
 
12
#include "java_lang_reflect_Method.h"
 
13
#include "org_xmlvm_runtime_XMLVMClassLoader.h"
 
14
 
 
15
#include "java_lang_Class.h"
 
16
 
 
17
#define XMLVM_CURRENT_CLASS_NAME Class
 
18
#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_Class
 
19
 
 
20
__TIB_DEFINITION_java_lang_Class __TIB_java_lang_Class = {
 
21
    0, // classInitializationBegan
 
22
    0, // classInitialized
 
23
    -1, // initializerThreadId
 
24
    __INIT_java_lang_Class, // classInitializer
 
25
    "java.lang.Class", // className
 
26
    "java.lang", // package
 
27
    JAVA_NULL, // enclosingClassName
 
28
    JAVA_NULL, // enclosingMethodName
 
29
    "<T:Ljava/lang/Object;>Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/reflect/AnnotatedElement;Ljava/lang/reflect/GenericDeclaration;Ljava/lang/reflect/Type;", // signature
 
30
    (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends
 
31
    sizeof(java_lang_Class), // sizeInstance
 
32
    XMLVM_TYPE_CLASS};
 
33
 
 
34
JAVA_OBJECT __CLASS_java_lang_Class;
 
35
JAVA_OBJECT __CLASS_java_lang_Class_1ARRAY;
 
36
JAVA_OBJECT __CLASS_java_lang_Class_2ARRAY;
 
37
JAVA_OBJECT __CLASS_java_lang_Class_3ARRAY;
 
38
//XMLVM_BEGIN_IMPLEMENTATION
 
39
//XMLVM_END_IMPLEMENTATION
 
40
 
 
41
static JAVA_LONG _STATIC_java_lang_Class_serialVersionUID;
 
42
static JAVA_OBJECT _STATIC_java_lang_Class_classLoader;
 
43
 
 
44
#include "xmlvm-reflection.h"
 
45
 
 
46
static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = {
 
47
};
 
48
 
 
49
static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = {
 
50
};
 
51
 
 
52
static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments)
 
53
{
 
54
    XMLVM_NOT_IMPLEMENTED();
 
55
}
 
56
 
 
57
static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = {
 
58
};
 
59
 
 
60
static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments)
 
61
{
 
62
    XMLVM_NOT_IMPLEMENTED();
 
63
}
 
64
 
 
65
void __INIT_java_lang_Class()
 
66
{
 
67
    staticInitializerLock(&__TIB_java_lang_Class);
 
68
 
 
69
    // While the static initializer mutex is locked, locally store the value of
 
70
    // whether class initialization began or not
 
71
    int initBegan = __TIB_java_lang_Class.classInitializationBegan;
 
72
 
 
73
    // Whether or not class initialization had already began, it has begun now
 
74
    __TIB_java_lang_Class.classInitializationBegan = 1;
 
75
 
 
76
    staticInitializerUnlock(&__TIB_java_lang_Class);
 
77
 
 
78
    JAVA_LONG curThreadId = (JAVA_LONG)pthread_self();
 
79
    if (initBegan) {
 
80
        if (__TIB_java_lang_Class.initializerThreadId != curThreadId) {
 
81
            // Busy wait until the other thread finishes initializing this class
 
82
            while (!__TIB_java_lang_Class.classInitialized) {
 
83
                // do nothing
 
84
            }
 
85
        }
 
86
    } else {
 
87
        __TIB_java_lang_Class.initializerThreadId = curThreadId;
 
88
        XMLVM_CLASS_USED("java.lang.Class")
 
89
        __INIT_IMPL_java_lang_Class();
 
90
    }
 
91
}
 
92
 
 
93
void __INIT_IMPL_java_lang_Class()
 
94
{
 
95
    // Initialize base class if necessary
 
96
    XMLVM_CLASS_INIT(java_lang_Object)
 
97
    __TIB_java_lang_Class.newInstanceFunc = __NEW_INSTANCE_java_lang_Class;
 
98
    // Copy vtable from base class
 
99
    XMLVM_MEMCPY(__TIB_java_lang_Class.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable));
 
100
    // Initialize vtable for this class
 
101
    __TIB_java_lang_Class.vtable[6] = (VTABLE_PTR) &xmlvm_unimplemented_native_method;
 
102
    __TIB_java_lang_Class.vtable[7] = (VTABLE_PTR) &xmlvm_unimplemented_native_method;
 
103
    __TIB_java_lang_Class.vtable[8] = (VTABLE_PTR) &xmlvm_unimplemented_native_method;
 
104
    __TIB_java_lang_Class.vtable[9] = (VTABLE_PTR) &java_lang_Class_getMethod___java_lang_String_java_lang_Class_1ARRAY;
 
105
    __TIB_java_lang_Class.vtable[10] = (VTABLE_PTR) &java_lang_Class_getTypeParameters__;
 
106
    __TIB_java_lang_Class.vtable[11] = (VTABLE_PTR) &xmlvm_unimplemented_native_method;
 
107
    __TIB_java_lang_Class.vtable[12] = (VTABLE_PTR) &xmlvm_unimplemented_native_method;
 
108
    __TIB_java_lang_Class.vtable[5] = (VTABLE_PTR) &java_lang_Class_toString__;
 
109
    xmlvm_init_native_java_lang_Class();
 
110
    // Initialize interface information
 
111
    __TIB_java_lang_Class.numImplementedInterfaces = 4;
 
112
    __TIB_java_lang_Class.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 4);
 
113
 
 
114
    // Initialize interfaces if necessary and assign tib to implementedInterfaces
 
115
 
 
116
    XMLVM_CLASS_INIT(java_io_Serializable)
 
117
 
 
118
    __TIB_java_lang_Class.implementedInterfaces[0][0] = &__TIB_java_io_Serializable;
 
119
 
 
120
    XMLVM_CLASS_INIT(java_lang_reflect_AnnotatedElement)
 
121
 
 
122
    __TIB_java_lang_Class.implementedInterfaces[0][1] = &__TIB_java_lang_reflect_AnnotatedElement;
 
123
 
 
124
    XMLVM_CLASS_INIT(java_lang_reflect_GenericDeclaration)
 
125
 
 
126
    __TIB_java_lang_Class.implementedInterfaces[0][2] = &__TIB_java_lang_reflect_GenericDeclaration;
 
127
 
 
128
    XMLVM_CLASS_INIT(java_lang_reflect_Type)
 
129
 
 
130
    __TIB_java_lang_Class.implementedInterfaces[0][3] = &__TIB_java_lang_reflect_Type;
 
131
    // Initialize itable for this class
 
132
    __TIB_java_lang_Class.itableBegin = &__TIB_java_lang_Class.itable[0];
 
133
    __TIB_java_lang_Class.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotation___java_lang_Class] = __TIB_java_lang_Class.vtable[6];
 
134
    __TIB_java_lang_Class.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getAnnotations__] = __TIB_java_lang_Class.vtable[7];
 
135
    __TIB_java_lang_Class.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_getDeclaredAnnotations__] = __TIB_java_lang_Class.vtable[8];
 
136
    __TIB_java_lang_Class.itable[XMLVM_ITABLE_IDX_java_lang_reflect_AnnotatedElement_isAnnotationPresent___java_lang_Class] = __TIB_java_lang_Class.vtable[11];
 
137
    __TIB_java_lang_Class.itable[XMLVM_ITABLE_IDX_java_lang_reflect_GenericDeclaration_getTypeParameters__] = __TIB_java_lang_Class.vtable[10];
 
138
 
 
139
    _STATIC_java_lang_Class_serialVersionUID = 3206093459760846163;
 
140
    _STATIC_java_lang_Class_classLoader = (java_lang_ClassLoader*) JAVA_NULL;
 
141
 
 
142
    __TIB_java_lang_Class.declaredFields = &__field_reflection_data[0];
 
143
    __TIB_java_lang_Class.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA);
 
144
    __TIB_java_lang_Class.constructorDispatcherFunc = constructor_dispatcher;
 
145
    __TIB_java_lang_Class.declaredConstructors = &__constructor_reflection_data[0];
 
146
    __TIB_java_lang_Class.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA);
 
147
    __TIB_java_lang_Class.methodDispatcherFunc = method_dispatcher;
 
148
    __TIB_java_lang_Class.declaredMethods = &__method_reflection_data[0];
 
149
    __TIB_java_lang_Class.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA);
 
150
    __CLASS_java_lang_Class = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_Class);
 
151
    __TIB_java_lang_Class.clazz = __CLASS_java_lang_Class;
 
152
    __TIB_java_lang_Class.baseType = JAVA_NULL;
 
153
    __CLASS_java_lang_Class_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Class);
 
154
    __CLASS_java_lang_Class_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Class_1ARRAY);
 
155
    __CLASS_java_lang_Class_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_Class_2ARRAY);
 
156
    java_lang_Class___CLINIT_();
 
157
    //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_Class]
 
158
    //XMLVM_END_WRAPPER
 
159
 
 
160
    __TIB_java_lang_Class.classInitialized = 1;
 
161
}
 
162
 
 
163
void __DELETE_java_lang_Class(void* me, void* client_data)
 
164
{
 
165
    //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_Class]
 
166
    //XMLVM_END_WRAPPER
 
167
}
 
168
 
 
169
void __INIT_INSTANCE_MEMBERS_java_lang_Class(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer)
 
170
{
 
171
    __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer);
 
172
    ((java_lang_Class*) me)->fields.java_lang_Class.tib_ = (java_lang_Object*) JAVA_NULL;
 
173
    //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_Class]
 
174
    //XMLVM_END_WRAPPER
 
175
}
 
176
 
 
177
JAVA_OBJECT __NEW_java_lang_Class()
 
178
{    XMLVM_CLASS_INIT(java_lang_Class)
 
179
java_lang_Class* me = (java_lang_Class*) XMLVM_MALLOC(sizeof(java_lang_Class));
 
180
    me->tib = &__TIB_java_lang_Class;
 
181
    __INIT_INSTANCE_MEMBERS_java_lang_Class(me, 0);
 
182
    //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_Class]
 
183
    //XMLVM_END_WRAPPER
 
184
    return me;
 
185
}
 
186
 
 
187
JAVA_OBJECT __NEW_INSTANCE_java_lang_Class()
 
188
{
 
189
    JAVA_OBJECT me = JAVA_NULL;
 
190
    return me;
 
191
}
 
192
 
 
193
JAVA_LONG java_lang_Class_GET_serialVersionUID()
 
194
{
 
195
    XMLVM_CLASS_INIT(java_lang_Class)
 
196
    return _STATIC_java_lang_Class_serialVersionUID;
 
197
}
 
198
 
 
199
void java_lang_Class_PUT_serialVersionUID(JAVA_LONG v)
 
200
{
 
201
    XMLVM_CLASS_INIT(java_lang_Class)
 
202
_STATIC_java_lang_Class_serialVersionUID = v;
 
203
}
 
204
 
 
205
JAVA_OBJECT java_lang_Class_GET_classLoader()
 
206
{
 
207
    XMLVM_CLASS_INIT(java_lang_Class)
 
208
    return _STATIC_java_lang_Class_classLoader;
 
209
}
 
210
 
 
211
void java_lang_Class_PUT_classLoader(JAVA_OBJECT v)
 
212
{
 
213
    XMLVM_CLASS_INIT(java_lang_Class)
 
214
_STATIC_java_lang_Class_classLoader = v;
 
215
}
 
216
 
 
217
//XMLVM_NATIVE[void java_lang_Class_initNativeLayer__()]
 
218
 
 
219
void java_lang_Class___INIT____java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)
 
220
{
 
221
    //XMLVM_BEGIN_WRAPPER[java_lang_Class___INIT____java_lang_Object]
 
222
    XMLVM_ENTER_METHOD("java.lang.Class", "<init>", "?")
 
223
    XMLVMElem _r0;
 
224
    XMLVMElem _r1;
 
225
    _r0.o = me;
 
226
    _r1.o = n1;
 
227
    XMLVM_SOURCE_POSITION("Class.java", 127)
 
228
    XMLVM_CHECK_NPE(0)
 
229
    java_lang_Object___INIT___(_r0.o);
 
230
    XMLVM_SOURCE_POSITION("Class.java", 128)
 
231
    XMLVM_CHECK_NPE(0)
 
232
    ((java_lang_Class*) _r0.o)->fields.java_lang_Class.tib_ = _r1.o;
 
233
    XMLVM_SOURCE_POSITION("Class.java", 129)
 
234
    XMLVM_EXIT_METHOD()
 
235
    return;
 
236
    //XMLVM_END_WRAPPER
 
237
}
 
238
 
 
239
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getStackClasses___int_boolean(JAVA_INT n1, JAVA_BOOLEAN n2)]
 
240
 
 
241
JAVA_OBJECT java_lang_Class_forName___java_lang_String(JAVA_OBJECT n1)
 
242
{
 
243
    XMLVM_CLASS_INIT(java_lang_Class)
 
244
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_forName___java_lang_String]
 
245
    XMLVM_ENTER_METHOD("java.lang.Class", "forName", "?")
 
246
    XMLVMElem _r0;
 
247
    XMLVMElem _r1;
 
248
    XMLVMElem _r2;
 
249
    _r2.o = n1;
 
250
    XMLVM_SOURCE_POSITION("Class.java", 189)
 
251
    _r0.i = 1;
 
252
    _r1.o = JAVA_NULL;
 
253
    _r0.o = java_lang_Class_forName___java_lang_String_boolean_java_lang_ClassLoader(_r2.o, _r0.i, _r1.o);
 
254
    XMLVM_EXIT_METHOD()
 
255
    return _r0.o;
 
256
    //XMLVM_END_WRAPPER
 
257
}
 
258
 
 
259
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_forName___java_lang_String_boolean_java_lang_ClassLoader(JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_OBJECT n3)]
 
260
 
 
261
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getClasses__(JAVA_OBJECT me)]
 
262
 
 
263
//XMLVM_NATIVE[void java_lang_Class_verify__(JAVA_OBJECT me)]
 
264
 
 
265
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getAnnotation___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1)]
 
266
 
 
267
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getAnnotations__(JAVA_OBJECT me)]
 
268
 
 
269
JAVA_OBJECT java_lang_Class_getCanonicalName__(JAVA_OBJECT me)
 
270
{
 
271
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getCanonicalName__]
 
272
    XMLVM_ENTER_METHOD("java.lang.Class", "getCanonicalName", "?")
 
273
    XMLVMElem _r0;
 
274
    XMLVMElem _r1;
 
275
    XMLVMElem _r2;
 
276
    XMLVMElem _r3;
 
277
    _r3.o = me;
 
278
    XMLVM_SOURCE_POSITION("Class.java", 277)
 
279
    XMLVM_CHECK_NPE(3)
 
280
    _r0.i = java_lang_Class_isAnonymousClass__(_r3.o);
 
281
    if (_r0.i != 0) goto label12;
 
282
    XMLVM_CHECK_NPE(3)
 
283
    _r0.i = java_lang_Class_isLocalClass__(_r3.o);
 
284
    if (_r0.i == 0) goto label14;
 
285
    label12:;
 
286
    XMLVM_SOURCE_POSITION("Class.java", 279)
 
287
    _r0.o = JAVA_NULL;
 
288
    label13:;
 
289
    XMLVM_SOURCE_POSITION("Class.java", 284)
 
290
    XMLVM_EXIT_METHOD()
 
291
    return _r0.o;
 
292
    label14:;
 
293
    XMLVM_SOURCE_POSITION("Class.java", 281)
 
294
    XMLVM_CHECK_NPE(3)
 
295
    _r0.i = java_lang_Class_isPrimitive__(_r3.o);
 
296
    if (_r0.i == 0) goto label25;
 
297
    XMLVM_SOURCE_POSITION("Class.java", 282)
 
298
    XMLVM_CHECK_NPE(3)
 
299
    _r0.o = java_lang_Class_getSimpleName__(_r3.o);
 
300
    goto label13;
 
301
    label25:;
 
302
    XMLVM_CHECK_NPE(3)
 
303
    _r0.o = java_lang_Class_getPackage__(_r3.o);
 
304
    if (_r0.o != JAVA_NULL) goto label42;
 
305
    // ""
 
306
    _r0.o = xmlvm_create_java_string_from_pool(21);
 
307
    label33:;
 
308
    _r1.i = 36;
 
309
    _r2.i = 46;
 
310
    XMLVM_CHECK_NPE(0)
 
311
    _r0.o = java_lang_String_replace___char_char(_r0.o, _r1.i, _r2.i);
 
312
    goto label13;
 
313
    label42:;
 
314
    _r0.o = __NEW_java_lang_StringBuilder();
 
315
    XMLVM_CHECK_NPE(0)
 
316
    java_lang_StringBuilder___INIT___(_r0.o);
 
317
    XMLVM_CHECK_NPE(3)
 
318
    _r1.o = java_lang_Class_getPackage__(_r3.o);
 
319
 
 
320
    
 
321
    // Red class access removed: java.lang.Package::getName
 
322
    XMLVM_RED_CLASS_DEPENDENCY();
 
323
    XMLVM_CHECK_NPE(0)
 
324
    _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o);
 
325
    // "."
 
326
    _r1.o = xmlvm_create_java_string_from_pool(52);
 
327
    XMLVM_CHECK_NPE(0)
 
328
    _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o);
 
329
    XMLVM_CHECK_NPE(3)
 
330
    _r1.o = java_lang_Class_getSimpleName__(_r3.o);
 
331
    XMLVM_CHECK_NPE(0)
 
332
    _r0.o = java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o);
 
333
    //java_lang_StringBuilder_toString__[5]
 
334
    XMLVM_CHECK_NPE(0)
 
335
    _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o);
 
336
    goto label33;
 
337
    //XMLVM_END_WRAPPER
 
338
}
 
339
 
 
340
JAVA_OBJECT java_lang_Class_getClassLoader__(JAVA_OBJECT me)
 
341
{
 
342
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getClassLoader__]
 
343
    XMLVM_ENTER_METHOD("java.lang.Class", "getClassLoader", "?")
 
344
    XMLVMElem _r0;
 
345
    XMLVMElem _r1;
 
346
    _r1.o = me;
 
347
    XMLVM_SOURCE_POSITION("Class.java", 301)
 
348
    _r0.o = java_lang_Class_GET_classLoader();
 
349
    XMLVM_EXIT_METHOD()
 
350
    return _r0.o;
 
351
    //XMLVM_END_WRAPPER
 
352
}
 
353
 
 
354
JAVA_OBJECT java_lang_Class_getClassLoaderImpl__(JAVA_OBJECT me)
 
355
{
 
356
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getClassLoaderImpl__]
 
357
    XMLVM_ENTER_METHOD("java.lang.Class", "getClassLoaderImpl", "?")
 
358
    XMLVMElem _r0;
 
359
    XMLVMElem _r1;
 
360
    _r1.o = me;
 
361
    XMLVM_SOURCE_POSITION("Class.java", 317)
 
362
    _r0.o = java_lang_Class_GET_classLoader();
 
363
    XMLVM_EXIT_METHOD()
 
364
    return _r0.o;
 
365
    //XMLVM_END_WRAPPER
 
366
}
 
367
 
 
368
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getComponentType__(JAVA_OBJECT me)]
 
369
 
 
370
JAVA_OBJECT java_lang_Class_getConstructor___java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)
 
371
{
 
372
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getConstructor___java_lang_Class_1ARRAY]
 
373
    XMLVM_ENTER_METHOD("java.lang.Class", "getConstructor", "?")
 
374
    XMLVMElem _r0;
 
375
    XMLVMElem _r1;
 
376
    XMLVMElem _r2;
 
377
    _r1.o = me;
 
378
    _r2.o = n1;
 
379
    XMLVM_SOURCE_POSITION("Class.java", 347)
 
380
    XMLVM_CHECK_NPE(1)
 
381
    _r0.o = java_lang_Class_getDeclaredConstructor___java_lang_Class_1ARRAY(_r1.o, _r2.o);
 
382
    XMLVM_EXIT_METHOD()
 
383
    return _r0.o;
 
384
    //XMLVM_END_WRAPPER
 
385
}
 
386
 
 
387
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getConstructors__(JAVA_OBJECT me)]
 
388
 
 
389
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getDeclaredAnnotations__(JAVA_OBJECT me)]
 
390
 
 
391
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getDeclaredClasses__(JAVA_OBJECT me)]
 
392
 
 
393
JAVA_OBJECT java_lang_Class_getDeclaredConstructor___java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)
 
394
{
 
395
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getDeclaredConstructor___java_lang_Class_1ARRAY]
 
396
    XMLVM_ENTER_METHOD("java.lang.Class", "getDeclaredConstructor", "?")
 
397
    XMLVMElem _r0;
 
398
    XMLVMElem _r1;
 
399
    XMLVMElem _r2;
 
400
    XMLVMElem _r3;
 
401
    XMLVMElem _r4;
 
402
    XMLVMElem _r5;
 
403
    XMLVMElem _r6;
 
404
    _r5.o = me;
 
405
    _r6.o = n1;
 
406
    XMLVM_SOURCE_POSITION("Class.java", 409)
 
407
    XMLVM_CHECK_NPE(5)
 
408
    _r0.o = java_lang_Class_getDeclaredConstructors__(_r5.o);
 
409
    _r1.i = 0;
 
410
    label5:;
 
411
    XMLVM_SOURCE_POSITION("Class.java", 410)
 
412
    _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o));
 
413
    if (_r1.i >= _r2.i) goto label26;
 
414
    XMLVM_SOURCE_POSITION("Class.java", 411)
 
415
    XMLVM_CHECK_NPE(0)
 
416
    XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i);
 
417
    _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i];
 
418
    XMLVM_CHECK_NPE(2)
 
419
    _r2.o = java_lang_reflect_Constructor_getParameterTypes__(_r2.o);
 
420
    _r2.i = java_lang_Class_arrayEqual___java_lang_Object_1ARRAY_java_lang_Object_1ARRAY(_r6.o, _r2.o);
 
421
    if (_r2.i == 0) goto label23;
 
422
    XMLVM_SOURCE_POSITION("Class.java", 412)
 
423
    XMLVM_CHECK_NPE(0)
 
424
    XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i);
 
425
    _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i];
 
426
    XMLVM_EXIT_METHOD()
 
427
    return _r2.o;
 
428
    label23:;
 
429
    _r1.i = _r1.i + 1;
 
430
    goto label5;
 
431
    label26:;
 
432
    XMLVM_SOURCE_POSITION("Class.java", 415)
 
433
 
 
434
    
 
435
    // Red class access removed: java.lang.NoSuchMethodException::new-instance
 
436
    XMLVM_RED_CLASS_DEPENDENCY();
 
437
    _r3.o = __NEW_java_lang_StringBuilder();
 
438
    XMLVM_CHECK_NPE(3)
 
439
    java_lang_StringBuilder___INIT___(_r3.o);
 
440
    XMLVM_CHECK_NPE(5)
 
441
    _r4.o = java_lang_Class_getName__(_r5.o);
 
442
    XMLVM_CHECK_NPE(3)
 
443
    _r3.o = java_lang_StringBuilder_append___java_lang_String(_r3.o, _r4.o);
 
444
    // ".<init>"
 
445
    _r4.o = xmlvm_create_java_string_from_pool(53);
 
446
    XMLVM_CHECK_NPE(3)
 
447
    _r3.o = java_lang_StringBuilder_append___java_lang_String(_r3.o, _r4.o);
 
448
    //java_lang_StringBuilder_toString__[5]
 
449
    XMLVM_CHECK_NPE(3)
 
450
    _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r3.o)->tib->vtable[5])(_r3.o);
 
451
 
 
452
    
 
453
    // Red class access removed: java.lang.NoSuchMethodException::<init>
 
454
    XMLVM_RED_CLASS_DEPENDENCY();
 
455
    XMLVM_THROW_CUSTOM(_r2.o)
 
456
    //XMLVM_END_WRAPPER
 
457
}
 
458
 
 
459
JAVA_BOOLEAN java_lang_Class_arrayEqual___java_lang_Object_1ARRAY_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2)
 
460
{
 
461
    XMLVM_CLASS_INIT(java_lang_Class)
 
462
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_arrayEqual___java_lang_Object_1ARRAY_java_lang_Object_1ARRAY]
 
463
    XMLVM_ENTER_METHOD("java.lang.Class", "arrayEqual", "?")
 
464
    XMLVMElem _r0;
 
465
    XMLVMElem _r1;
 
466
    XMLVMElem _r2;
 
467
    XMLVMElem _r3;
 
468
    XMLVMElem _r4;
 
469
    XMLVMElem _r5;
 
470
    XMLVMElem _r6;
 
471
    _r5.o = n1;
 
472
    _r6.o = n2;
 
473
    _r4.i = 1;
 
474
    _r3.i = 0;
 
475
    XMLVM_SOURCE_POSITION("Class.java", 419)
 
476
    if (_r5.o != JAVA_NULL) goto label13;
 
477
    XMLVM_SOURCE_POSITION("Class.java", 420)
 
478
    if (_r6.o == JAVA_NULL) goto label9;
 
479
    _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o));
 
480
    if (_r1.i != 0) goto label11;
 
481
    label9:;
 
482
    _r1 = _r4;
 
483
    label10:;
 
484
    XMLVM_SOURCE_POSITION("Class.java", 437)
 
485
    XMLVM_EXIT_METHOD()
 
486
    return _r1.i;
 
487
    label11:;
 
488
    _r1 = _r3;
 
489
    goto label10;
 
490
    label13:;
 
491
    XMLVM_SOURCE_POSITION("Class.java", 423)
 
492
    if (_r6.o != JAVA_NULL) goto label22;
 
493
    XMLVM_SOURCE_POSITION("Class.java", 424)
 
494
    _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o));
 
495
    if (_r1.i != 0) goto label20;
 
496
    _r1 = _r4;
 
497
    goto label10;
 
498
    label20:;
 
499
    _r1 = _r3;
 
500
    goto label10;
 
501
    label22:;
 
502
    XMLVM_SOURCE_POSITION("Class.java", 427)
 
503
    _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o));
 
504
    _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o));
 
505
    if (_r1.i == _r2.i) goto label28;
 
506
    _r1 = _r3;
 
507
    XMLVM_SOURCE_POSITION("Class.java", 428)
 
508
    goto label10;
 
509
    label28:;
 
510
    XMLVM_SOURCE_POSITION("Class.java", 431)
 
511
    _r0.i = 0;
 
512
    label29:;
 
513
    _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o));
 
514
    if (_r0.i >= _r1.i) goto label43;
 
515
    XMLVM_SOURCE_POSITION("Class.java", 432)
 
516
    XMLVM_CHECK_NPE(5)
 
517
    XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r0.i);
 
518
    _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i];
 
519
    XMLVM_CHECK_NPE(6)
 
520
    XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r0.i);
 
521
    _r2.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i];
 
522
    if (_r1.o == _r2.o) goto label40;
 
523
    _r1 = _r3;
 
524
    XMLVM_SOURCE_POSITION("Class.java", 433)
 
525
    goto label10;
 
526
    label40:;
 
527
    _r0.i = _r0.i + 1;
 
528
    goto label29;
 
529
    label43:;
 
530
    _r1 = _r4;
 
531
    goto label10;
 
532
    //XMLVM_END_WRAPPER
 
533
}
 
534
 
 
535
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getDeclaredConstructors__(JAVA_OBJECT me)]
 
536
 
 
537
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getDeclaredField___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)]
 
538
 
 
539
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getDeclaredFields__(JAVA_OBJECT me)]
 
540
 
 
541
JAVA_OBJECT java_lang_Class_getDeclaredMethod___java_lang_String_java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2)
 
542
{
 
543
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getDeclaredMethod___java_lang_String_java_lang_Class_1ARRAY]
 
544
    XMLVM_ENTER_METHOD("java.lang.Class", "getDeclaredMethod", "?")
 
545
    XMLVMElem _r0;
 
546
    XMLVMElem _r1;
 
547
    XMLVMElem _r2;
 
548
    XMLVMElem _r3;
 
549
    XMLVMElem _r4;
 
550
    XMLVMElem _r5;
 
551
    XMLVMElem _r6;
 
552
    XMLVMElem _r7;
 
553
    XMLVMElem _r8;
 
554
    _r6.o = me;
 
555
    _r7.o = n1;
 
556
    _r8.o = n2;
 
557
    XMLVM_SOURCE_POSITION("Class.java", 509)
 
558
    XMLVM_CHECK_NPE(6)
 
559
    _r2.o = java_lang_Class_getDeclaredMethods__(_r6.o);
 
560
    _r0.i = 0;
 
561
    label5:;
 
562
    XMLVM_SOURCE_POSITION("Class.java", 510)
 
563
    _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o));
 
564
    if (_r0.i >= _r3.i) goto label34;
 
565
    XMLVM_SOURCE_POSITION("Class.java", 511)
 
566
    XMLVM_CHECK_NPE(2)
 
567
    XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i);
 
568
    _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i];
 
569
    XMLVM_SOURCE_POSITION("Class.java", 512)
 
570
    //java_lang_reflect_Method_getName__[13]
 
571
    XMLVM_CHECK_NPE(1)
 
572
    _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_reflect_Method*) _r1.o)->tib->vtable[13])(_r1.o);
 
573
    //java_lang_String_equals___java_lang_Object[1]
 
574
    XMLVM_CHECK_NPE(7)
 
575
    _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r7.o)->tib->vtable[1])(_r7.o, _r3.o);
 
576
    if (_r3.i == 0) goto label31;
 
577
    XMLVM_CHECK_NPE(1)
 
578
    _r3.o = java_lang_reflect_Method_getParameterTypes__(_r1.o);
 
579
    _r3.i = java_lang_Class_arrayEqual___java_lang_Object_1ARRAY_java_lang_Object_1ARRAY(_r8.o, _r3.o);
 
580
    if (_r3.i == 0) goto label31;
 
581
    XMLVM_SOURCE_POSITION("Class.java", 514)
 
582
    XMLVM_EXIT_METHOD()
 
583
    return _r1.o;
 
584
    label31:;
 
585
    _r0.i = _r0.i + 1;
 
586
    goto label5;
 
587
    label34:;
 
588
    XMLVM_SOURCE_POSITION("Class.java", 517)
 
589
 
 
590
    
 
591
    // Red class access removed: java.lang.NoSuchMethodException::new-instance
 
592
    XMLVM_RED_CLASS_DEPENDENCY();
 
593
    _r4.o = __NEW_java_lang_StringBuilder();
 
594
    XMLVM_CHECK_NPE(4)
 
595
    java_lang_StringBuilder___INIT___(_r4.o);
 
596
    XMLVM_CHECK_NPE(6)
 
597
    _r5.o = java_lang_Class_getName__(_r6.o);
 
598
    XMLVM_CHECK_NPE(4)
 
599
    _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r5.o);
 
600
    // "."
 
601
    _r5.o = xmlvm_create_java_string_from_pool(52);
 
602
    XMLVM_CHECK_NPE(4)
 
603
    _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r5.o);
 
604
    XMLVM_CHECK_NPE(4)
 
605
    _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r7.o);
 
606
    //java_lang_StringBuilder_toString__[5]
 
607
    XMLVM_CHECK_NPE(4)
 
608
    _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r4.o)->tib->vtable[5])(_r4.o);
 
609
 
 
610
    
 
611
    // Red class access removed: java.lang.NoSuchMethodException::<init>
 
612
    XMLVM_RED_CLASS_DEPENDENCY();
 
613
    XMLVM_THROW_CUSTOM(_r3.o)
 
614
    //XMLVM_END_WRAPPER
 
615
}
 
616
 
 
617
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getDeclaredMethods__(JAVA_OBJECT me)]
 
618
 
 
619
JAVA_OBJECT java_lang_Class_getDeclaringClass__(JAVA_OBJECT me)
 
620
{
 
621
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getDeclaringClass__]
 
622
    XMLVM_ENTER_METHOD("java.lang.Class", "getDeclaringClass", "?")
 
623
    XMLVMElem _r0;
 
624
    XMLVMElem _r1;
 
625
    _r1.o = me;
 
626
    XMLVM_SOURCE_POSITION("Class.java", 543)
 
627
    XMLVM_CHECK_NPE(1)
 
628
    _r0.i = java_lang_Class_isArray__(_r1.o);
 
629
    if (_r0.i != 0) goto label12;
 
630
    XMLVM_CHECK_NPE(1)
 
631
    _r0.i = java_lang_Class_isPrimitive__(_r1.o);
 
632
    if (_r0.i == 0) goto label14;
 
633
    label12:;
 
634
    XMLVM_SOURCE_POSITION("Class.java", 544)
 
635
    _r0.o = JAVA_NULL;
 
636
    label13:;
 
637
    XMLVM_SOURCE_POSITION("Class.java", 546)
 
638
    XMLVM_EXIT_METHOD()
 
639
    return _r0.o;
 
640
    label14:;
 
641
    XMLVM_CHECK_NPE(1)
 
642
    _r0.o = java_lang_Class_getEnclosingClass__(_r1.o);
 
643
    goto label13;
 
644
    //XMLVM_END_WRAPPER
 
645
}
 
646
 
 
647
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getEnclosingClass__(JAVA_OBJECT me)]
 
648
 
 
649
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getEnclosingConstructor__(JAVA_OBJECT me)]
 
650
 
 
651
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getEnclosingMethod__(JAVA_OBJECT me)]
 
652
 
 
653
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getEnumConstants__(JAVA_OBJECT me)]
 
654
 
 
655
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getField___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)]
 
656
 
 
657
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getFields__(JAVA_OBJECT me)]
 
658
 
 
659
JAVA_OBJECT java_lang_Class_getGenericInterfaces__(JAVA_OBJECT me)
 
660
{
 
661
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getGenericInterfaces__]
 
662
    XMLVM_ENTER_METHOD("java.lang.Class", "getGenericInterfaces", "?")
 
663
    XMLVMElem _r0;
 
664
    XMLVMElem _r1;
 
665
    XMLVMElem _r2;
 
666
    _r2.o = me;
 
667
    XMLVM_SOURCE_POSITION("Class.java", 632)
 
668
 
 
669
    
 
670
    // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::new-instance
 
671
    XMLVM_RED_CLASS_DEPENDENCY();
 
672
    _r1.o = JAVA_NULL;
 
673
 
 
674
    
 
675
    // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::<init>
 
676
    XMLVM_RED_CLASS_DEPENDENCY();
 
677
    XMLVM_SOURCE_POSITION("Class.java", 633)
 
678
    XMLVM_CHECK_NPE(2)
 
679
    _r1.o = java_lang_Class_getSignatureAttribute__(_r2.o);
 
680
 
 
681
    
 
682
    // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::parseForClass
 
683
    XMLVM_RED_CLASS_DEPENDENCY();
 
684
    XMLVM_SOURCE_POSITION("Class.java", 634)
 
685
 
 
686
    
 
687
    // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser,org.apache.harmony.luni.lang.reflect.ListOfTypes::interfaceTypes
 
688
    XMLVM_RED_CLASS_DEPENDENCY();
 
689
 
 
690
    
 
691
    // Red class access removed: org.apache.harmony.luni.lang.reflect.Types::getClonedTypeArray
 
692
    XMLVM_RED_CLASS_DEPENDENCY();
 
693
    XMLVM_EXIT_METHOD()
 
694
    return _r1.o;
 
695
    //XMLVM_END_WRAPPER
 
696
}
 
697
 
 
698
JAVA_OBJECT java_lang_Class_getGenericSuperclass__(JAVA_OBJECT me)
 
699
{
 
700
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getGenericSuperclass__]
 
701
    XMLVM_ENTER_METHOD("java.lang.Class", "getGenericSuperclass", "?")
 
702
    XMLVMElem _r0;
 
703
    XMLVMElem _r1;
 
704
    XMLVMElem _r2;
 
705
    _r2.o = me;
 
706
    XMLVM_SOURCE_POSITION("Class.java", 646)
 
707
 
 
708
    
 
709
    // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::new-instance
 
710
    XMLVM_RED_CLASS_DEPENDENCY();
 
711
    _r1.o = JAVA_NULL;
 
712
 
 
713
    
 
714
    // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::<init>
 
715
    XMLVM_RED_CLASS_DEPENDENCY();
 
716
    XMLVM_SOURCE_POSITION("Class.java", 647)
 
717
    XMLVM_CHECK_NPE(2)
 
718
    _r1.o = java_lang_Class_getSignatureAttribute__(_r2.o);
 
719
 
 
720
    
 
721
    // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::parseForClass
 
722
    XMLVM_RED_CLASS_DEPENDENCY();
 
723
    XMLVM_SOURCE_POSITION("Class.java", 648)
 
724
 
 
725
    
 
726
    // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser,java.lang.reflect.Type::superclassType
 
727
    XMLVM_RED_CLASS_DEPENDENCY();
 
728
 
 
729
    
 
730
    // Red class access removed: org.apache.harmony.luni.lang.reflect.Types::getType
 
731
    XMLVM_RED_CLASS_DEPENDENCY();
 
732
    XMLVM_EXIT_METHOD()
 
733
    return _r1.o;
 
734
    //XMLVM_END_WRAPPER
 
735
}
 
736
 
 
737
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getInterfaces__(JAVA_OBJECT me)]
 
738
 
 
739
JAVA_OBJECT java_lang_Class_getMethod___java_lang_String_java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2)
 
740
{
 
741
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getMethod___java_lang_String_java_lang_Class_1ARRAY]
 
742
    XMLVM_ENTER_METHOD("java.lang.Class", "getMethod", "?")
 
743
    XMLVMElem _r0;
 
744
    XMLVMElem _r1;
 
745
    XMLVMElem _r2;
 
746
    XMLVMElem _r3;
 
747
    XMLVMElem _r4;
 
748
    XMLVMElem _r5;
 
749
    XMLVMElem _r6;
 
750
    XMLVMElem _r7;
 
751
    XMLVMElem _r8;
 
752
    _r6.o = me;
 
753
    _r7.o = n1;
 
754
    _r8.o = n2;
 
755
    XMLVM_SOURCE_POSITION("Class.java", 684)
 
756
    XMLVM_CHECK_NPE(6)
 
757
    _r2.o = java_lang_Class_getMethods__(_r6.o);
 
758
    _r0.i = 0;
 
759
    label5:;
 
760
    XMLVM_SOURCE_POSITION("Class.java", 685)
 
761
    _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o));
 
762
    if (_r0.i >= _r3.i) goto label34;
 
763
    XMLVM_SOURCE_POSITION("Class.java", 686)
 
764
    XMLVM_CHECK_NPE(2)
 
765
    XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i);
 
766
    _r1.o = ((JAVA_ARRAY_OBJECT*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i];
 
767
    XMLVM_SOURCE_POSITION("Class.java", 687)
 
768
    //java_lang_reflect_Method_getName__[13]
 
769
    XMLVM_CHECK_NPE(1)
 
770
    _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_reflect_Method*) _r1.o)->tib->vtable[13])(_r1.o);
 
771
    //java_lang_String_equals___java_lang_Object[1]
 
772
    XMLVM_CHECK_NPE(7)
 
773
    _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r7.o)->tib->vtable[1])(_r7.o, _r3.o);
 
774
    if (_r3.i == 0) goto label31;
 
775
    XMLVM_CHECK_NPE(1)
 
776
    _r3.o = java_lang_reflect_Method_getParameterTypes__(_r1.o);
 
777
    _r3.i = java_lang_Class_arrayEqual___java_lang_Object_1ARRAY_java_lang_Object_1ARRAY(_r8.o, _r3.o);
 
778
    if (_r3.i == 0) goto label31;
 
779
    XMLVM_SOURCE_POSITION("Class.java", 689)
 
780
    XMLVM_EXIT_METHOD()
 
781
    return _r1.o;
 
782
    label31:;
 
783
    _r0.i = _r0.i + 1;
 
784
    goto label5;
 
785
    label34:;
 
786
    XMLVM_SOURCE_POSITION("Class.java", 692)
 
787
 
 
788
    
 
789
    // Red class access removed: java.lang.NoSuchMethodException::new-instance
 
790
    XMLVM_RED_CLASS_DEPENDENCY();
 
791
    _r4.o = __NEW_java_lang_StringBuilder();
 
792
    XMLVM_CHECK_NPE(4)
 
793
    java_lang_StringBuilder___INIT___(_r4.o);
 
794
    XMLVM_CHECK_NPE(6)
 
795
    _r5.o = java_lang_Class_getName__(_r6.o);
 
796
    XMLVM_CHECK_NPE(4)
 
797
    _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r5.o);
 
798
    // "."
 
799
    _r5.o = xmlvm_create_java_string_from_pool(52);
 
800
    XMLVM_CHECK_NPE(4)
 
801
    _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r5.o);
 
802
    XMLVM_CHECK_NPE(4)
 
803
    _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r7.o);
 
804
    //java_lang_StringBuilder_toString__[5]
 
805
    XMLVM_CHECK_NPE(4)
 
806
    _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r4.o)->tib->vtable[5])(_r4.o);
 
807
 
 
808
    
 
809
    // Red class access removed: java.lang.NoSuchMethodException::<init>
 
810
    XMLVM_RED_CLASS_DEPENDENCY();
 
811
    XMLVM_THROW_CUSTOM(_r3.o)
 
812
    //XMLVM_END_WRAPPER
 
813
}
 
814
 
 
815
JAVA_OBJECT java_lang_Class_getMethods__(JAVA_OBJECT me)
 
816
{
 
817
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getMethods__]
 
818
    XMLVM_ENTER_METHOD("java.lang.Class", "getMethods", "?")
 
819
    XMLVMElem _r0;
 
820
    XMLVMElem _r1;
 
821
    XMLVMElem _r2;
 
822
    XMLVMElem _r3;
 
823
    XMLVMElem _r4;
 
824
    XMLVMElem _r5;
 
825
    XMLVMElem _r6;
 
826
    XMLVMElem _r7;
 
827
    _r7.o = me;
 
828
    _r6.i = 0;
 
829
    XMLVM_SOURCE_POSITION("Class.java", 713)
 
830
    XMLVM_CHECK_NPE(7)
 
831
    _r3.o = java_lang_Class_getDeclaredMethods__(_r7.o);
 
832
    XMLVM_SOURCE_POSITION("Class.java", 714)
 
833
    XMLVM_CHECK_NPE(7)
 
834
    _r1.o = java_lang_Class_getSuperclass__(_r7.o);
 
835
    if (_r1.o != JAVA_NULL) goto label13;
 
836
    XMLVM_SOURCE_POSITION("Class.java", 715)
 
837
    _r4 = _r3;
 
838
    label12:;
 
839
    XMLVM_SOURCE_POSITION("Class.java", 716)
 
840
    XMLVM_SOURCE_POSITION("Class.java", 722)
 
841
    XMLVM_EXIT_METHOD()
 
842
    return _r4.o;
 
843
    label13:;
 
844
    XMLVM_SOURCE_POSITION("Class.java", 718)
 
845
    XMLVM_CHECK_NPE(1)
 
846
    _r2.o = java_lang_Class_getMethods__(_r1.o);
 
847
    XMLVM_SOURCE_POSITION("Class.java", 719)
 
848
    _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o));
 
849
    _r5.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o));
 
850
    _r4.i = _r4.i + _r5.i;
 
851
    XMLVM_CLASS_INIT(java_lang_reflect_Method)
 
852
    _r0.o = XMLVMArray_createSingleDimension(__CLASS_java_lang_reflect_Method, _r4.i);
 
853
    XMLVM_SOURCE_POSITION("Class.java", 720)
 
854
    _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o));
 
855
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r3.o, _r6.i, _r0.o, _r6.i, _r4.i);
 
856
    XMLVM_SOURCE_POSITION("Class.java", 721)
 
857
    _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o));
 
858
    _r5.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r2.o));
 
859
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r6.i, _r0.o, _r4.i, _r5.i);
 
860
    _r4 = _r0;
 
861
    goto label12;
 
862
    //XMLVM_END_WRAPPER
 
863
}
 
864
 
 
865
//XMLVM_NATIVE[JAVA_INT java_lang_Class_getModifiers__(JAVA_OBJECT me)]
 
866
 
 
867
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getName__(JAVA_OBJECT me)]
 
868
 
 
869
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getSimpleName__(JAVA_OBJECT me)]
 
870
 
 
871
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getProtectionDomain__(JAVA_OBJECT me)]
 
872
 
 
873
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getPDImpl__(JAVA_OBJECT me)]
 
874
 
 
875
JAVA_OBJECT java_lang_Class_getResource___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
876
{
 
877
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getResource___java_lang_String]
 
878
    XMLVM_ENTER_METHOD("java.lang.Class", "getResource", "?")
 
879
    volatile XMLVMElem _r0;
 
880
    volatile XMLVMElem _r1;
 
881
    volatile XMLVMElem _r2;
 
882
    volatile XMLVMElem _r3;
 
883
    volatile XMLVMElem _r4;
 
884
    volatile XMLVMElem _r5;
 
885
    volatile XMLVMElem _r6;
 
886
    volatile XMLVMElem _r7;
 
887
    volatile XMLVMElem _r8;
 
888
    volatile XMLVMElem _r9;
 
889
    _r8.o = me;
 
890
    _r9.o = n1;
 
891
    _r6.i = 46;
 
892
    // "/"
 
893
    _r7.o = xmlvm_create_java_string_from_pool(54);
 
894
    XMLVM_SOURCE_POSITION("Class.java", 796)
 
895
    _r2.o = __NEW_java_io_File();
 
896
    XMLVM_CHECK_NPE(2)
 
897
    java_io_File___INIT____java_lang_String(_r2.o, _r9.o);
 
898
    XMLVM_SOURCE_POSITION("Class.java", 798)
 
899
    XMLVM_CHECK_NPE(2)
 
900
    _r4.i = java_io_File_exists__(_r2.o);
 
901
    if (_r4.i != 0) goto label33;
 
902
    XMLVM_SOURCE_POSITION("Class.java", 800)
 
903
    // "/"
 
904
    _r4.o = xmlvm_create_java_string_from_pool(54);
 
905
    XMLVM_CHECK_NPE(9)
 
906
    _r4.i = java_lang_String_startsWith___java_lang_String(_r9.o, _r7.o);
 
907
    if (_r4.i == 0) goto label68;
 
908
    XMLVM_SOURCE_POSITION("Class.java", 801)
 
909
    _r4.i = 1;
 
910
    XMLVM_CHECK_NPE(9)
 
911
    _r9.o = java_lang_String_substring___int(_r9.o, _r4.i);
 
912
    label28:;
 
913
    XMLVM_SOURCE_POSITION("Class.java", 813)
 
914
    _r2.o = __NEW_java_io_File();
 
915
    XMLVM_CHECK_NPE(2)
 
916
    java_io_File___INIT____java_lang_String(_r2.o, _r9.o);
 
917
    label33:;
 
918
    XMLVM_SOURCE_POSITION("Class.java", 816)
 
919
    XMLVM_CHECK_NPE(2)
 
920
    _r4.i = java_io_File_exists__(_r2.o);
 
921
    if (_r4.i == 0) goto label125;
 
922
    XMLVM_TRY_BEGIN(w556aaac44b1c26)
 
923
    // Begin try
 
924
    XMLVM_SOURCE_POSITION("Class.java", 818)
 
925
 
 
926
    
 
927
    // Red class access removed: java.net.URL::new-instance
 
928
    XMLVM_RED_CLASS_DEPENDENCY();
 
929
    _r5.o = __NEW_java_lang_StringBuilder();
 
930
    XMLVM_CHECK_NPE(5)
 
931
    java_lang_StringBuilder___INIT___(_r5.o);
 
932
    // "file://"
 
933
    _r6.o = xmlvm_create_java_string_from_pool(55);
 
934
    XMLVM_CHECK_NPE(5)
 
935
    _r5.o = java_lang_StringBuilder_append___java_lang_String(_r5.o, _r6.o);
 
936
    XMLVM_CHECK_NPE(2)
 
937
    _r6.o = java_io_File_getAbsolutePath__(_r2.o);
 
938
    XMLVM_CHECK_NPE(5)
 
939
    _r5.o = java_lang_StringBuilder_append___java_lang_String(_r5.o, _r6.o);
 
940
    //java_lang_StringBuilder_toString__[5]
 
941
    XMLVM_CHECK_NPE(5)
 
942
    _r5.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r5.o)->tib->vtable[5])(_r5.o);
 
943
 
 
944
    
 
945
    // Red class access removed: java.net.URL::<init>
 
946
    XMLVM_RED_CLASS_DEPENDENCY();
 
947
    // End try
 
948
    XMLVM_TRY_END
 
949
    XMLVM_CATCH_BEGIN(w556aaac44b1c26)
 
950
    XMLVM_CATCH_END(w556aaac44b1c26)
 
951
    XMLVM_RESTORE_EXCEPTION_ENV(w556aaac44b1c26)
 
952
    label67:;
 
953
    XMLVM_SOURCE_POSITION("Class.java", 823)
 
954
    XMLVM_EXIT_METHOD()
 
955
    return _r4.o;
 
956
    label68:;
 
957
    XMLVM_SOURCE_POSITION("Class.java", 803)
 
958
    XMLVM_CHECK_NPE(8)
 
959
    _r3.o = java_lang_Class_getName__(_r8.o);
 
960
    XMLVM_SOURCE_POSITION("Class.java", 804)
 
961
    XMLVM_CHECK_NPE(3)
 
962
    _r0.i = java_lang_String_lastIndexOf___int(_r3.o, _r6.i);
 
963
    _r4.i = -1;
 
964
    if (_r0.i == _r4.i) goto label114;
 
965
    XMLVM_SOURCE_POSITION("Class.java", 805)
 
966
    XMLVM_SOURCE_POSITION("Class.java", 806)
 
967
    _r4.i = 0;
 
968
    XMLVM_CHECK_NPE(3)
 
969
    _r4.o = java_lang_String_substring___int_int(_r3.o, _r4.i, _r0.i);
 
970
    _r5.i = 47;
 
971
    XMLVM_CHECK_NPE(4)
 
972
    _r3.o = java_lang_String_replace___char_char(_r4.o, _r6.i, _r5.i);
 
973
    label90:;
 
974
    XMLVM_SOURCE_POSITION("Class.java", 811)
 
975
    _r4.o = __NEW_java_lang_StringBuilder();
 
976
    XMLVM_CHECK_NPE(4)
 
977
    java_lang_StringBuilder___INIT___(_r4.o);
 
978
    XMLVM_CHECK_NPE(4)
 
979
    _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r3.o);
 
980
    // "/"
 
981
    _r5.o = xmlvm_create_java_string_from_pool(54);
 
982
    XMLVM_CHECK_NPE(4)
 
983
    _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r7.o);
 
984
    XMLVM_CHECK_NPE(4)
 
985
    _r4.o = java_lang_StringBuilder_append___java_lang_String(_r4.o, _r9.o);
 
986
    //java_lang_StringBuilder_toString__[5]
 
987
    XMLVM_CHECK_NPE(4)
 
988
    _r9.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r4.o)->tib->vtable[5])(_r4.o);
 
989
    goto label28;
 
990
    label114:;
 
991
    XMLVM_SOURCE_POSITION("Class.java", 808)
 
992
    // ""
 
993
    _r3.o = xmlvm_create_java_string_from_pool(21);
 
994
    goto label90;
 
995
    label117:;
 
996
    XMLVM_SOURCE_POSITION("Class.java", 819)
 
997
    java_lang_Thread* curThread_w556aaac44b1c59 = (java_lang_Thread*)java_lang_Thread_currentThread__();
 
998
    _r4.o = curThread_w556aaac44b1c59->fields.java_lang_Thread.xmlvmException_;
 
999
    _r1 = _r4;
 
1000
    XMLVM_SOURCE_POSITION("Class.java", 820)
 
1001
    _r4.o = __NEW_java_lang_RuntimeException();
 
1002
    XMLVM_CHECK_NPE(4)
 
1003
    java_lang_RuntimeException___INIT____java_lang_Throwable(_r4.o, _r1.o);
 
1004
    XMLVM_THROW_CUSTOM(_r4.o)
 
1005
    label125:;
 
1006
    _r4.o = JAVA_NULL;
 
1007
    goto label67;
 
1008
    //XMLVM_END_WRAPPER
 
1009
}
 
1010
 
 
1011
JAVA_OBJECT java_lang_Class_getResourceAsStream___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
1012
{
 
1013
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getResourceAsStream___java_lang_String]
 
1014
    XMLVM_ENTER_METHOD("java.lang.Class", "getResourceAsStream", "?")
 
1015
    volatile XMLVMElem _r0;
 
1016
    volatile XMLVMElem _r1;
 
1017
    volatile XMLVMElem _r2;
 
1018
    volatile XMLVMElem _r3;
 
1019
    volatile XMLVMElem _r4;
 
1020
    _r3.o = me;
 
1021
    _r4.o = n1;
 
1022
    _r2.o = JAVA_NULL;
 
1023
    XMLVM_SOURCE_POSITION("Class.java", 842)
 
1024
    XMLVM_CHECK_NPE(3)
 
1025
    _r1.o = java_lang_Class_getResource___java_lang_String(_r3.o, _r4.o);
 
1026
    if (_r1.o != JAVA_NULL) goto label8;
 
1027
    label7:;
 
1028
    XMLVM_SOURCE_POSITION("Class.java", 843)
 
1029
    XMLVM_SOURCE_POSITION("Class.java", 849)
 
1030
    XMLVM_EXIT_METHOD()
 
1031
    return _r2.o;
 
1032
    label8:;
 
1033
    XMLVM_TRY_BEGIN(w556aaac45b1c12)
 
1034
    // Begin try
 
1035
    XMLVM_SOURCE_POSITION("Class.java", 847)
 
1036
 
 
1037
    
 
1038
    // Red class access removed: java.net.URL::openStream
 
1039
    XMLVM_RED_CLASS_DEPENDENCY();
 
1040
    // End try
 
1041
    XMLVM_TRY_END
 
1042
    XMLVM_CATCH_BEGIN(w556aaac45b1c12)
 
1043
        XMLVM_CATCH_SPECIFIC(w556aaac45b1c12,java_io_IOException,13)
 
1044
    XMLVM_CATCH_END(w556aaac45b1c12)
 
1045
    XMLVM_RESTORE_EXCEPTION_ENV(w556aaac45b1c12)
 
1046
    goto label7;
 
1047
    label13:;
 
1048
    XMLVM_SOURCE_POSITION("Class.java", 848)
 
1049
    java_lang_Thread* curThread_w556aaac45b1c16 = (java_lang_Thread*)java_lang_Thread_currentThread__();
 
1050
    _r0.o = curThread_w556aaac45b1c16->fields.java_lang_Thread.xmlvmException_;
 
1051
    goto label7;
 
1052
    //XMLVM_END_WRAPPER
 
1053
}
 
1054
 
 
1055
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getSigners__(JAVA_OBJECT me)]
 
1056
 
 
1057
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getSuperclass__(JAVA_OBJECT me)]
 
1058
 
 
1059
JAVA_OBJECT java_lang_Class_getTypeParameters__(JAVA_OBJECT me)
 
1060
{
 
1061
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getTypeParameters__]
 
1062
    XMLVM_ENTER_METHOD("java.lang.Class", "getTypeParameters", "?")
 
1063
    volatile XMLVMElem _r0;
 
1064
    volatile XMLVMElem _r1;
 
1065
    volatile XMLVMElem _r2;
 
1066
    _r2.o = me;
 
1067
    XMLVM_SOURCE_POSITION("Class.java", 885)
 
1068
    java_lang_Object_acquireLockRecursive__(_r2.o);
 
1069
    XMLVM_TRY_BEGIN(w556aaac48b1b4)
 
1070
    // Begin try
 
1071
 
 
1072
    
 
1073
    // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::new-instance
 
1074
    XMLVM_RED_CLASS_DEPENDENCY();
 
1075
    _r1.o = JAVA_NULL;
 
1076
 
 
1077
    
 
1078
    // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::<init>
 
1079
    XMLVM_RED_CLASS_DEPENDENCY();
 
1080
    XMLVM_SOURCE_POSITION("Class.java", 886)
 
1081
    XMLVM_CHECK_NPE(2)
 
1082
    _r1.o = java_lang_Class_getSignatureAttribute__(_r2.o);
 
1083
 
 
1084
    
 
1085
    // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser::parseForClass
 
1086
    XMLVM_RED_CLASS_DEPENDENCY();
 
1087
    XMLVM_SOURCE_POSITION("Class.java", 887)
 
1088
 
 
1089
    
 
1090
    // Red class access removed: org.apache.harmony.luni.lang.reflect.GenericSignatureParser,java.lang.reflect.TypeVariable[]::formalTypeParameters
 
1091
    XMLVM_RED_CLASS_DEPENDENCY();
 
1092
 
 
1093
    
 
1094
    // Red class access removed: java.lang.reflect.TypeVariable[]::clone
 
1095
    XMLVM_RED_CLASS_DEPENDENCY();
 
1096
 
 
1097
    
 
1098
    // Red class access removed: java.lang.reflect.TypeVariable[]::check-cast
 
1099
    XMLVM_RED_CLASS_DEPENDENCY();
 
1100
    // End try
 
1101
    XMLVM_TRY_END
 
1102
    XMLVM_CATCH_BEGIN(w556aaac48b1b4)
 
1103
        XMLVM_CATCH_SPECIFIC(w556aaac48b1b4,java_lang_Object,24)
 
1104
    XMLVM_CATCH_END(w556aaac48b1b4)
 
1105
    XMLVM_RESTORE_EXCEPTION_ENV(w556aaac48b1b4)
 
1106
    java_lang_Object_releaseLockRecursive__(_r2.o);
 
1107
    XMLVM_EXIT_METHOD()
 
1108
    return _r1.o;
 
1109
    label24:;
 
1110
    java_lang_Thread* curThread_w556aaac48b1b8 = (java_lang_Thread*)java_lang_Thread_currentThread__();
 
1111
    _r1.o = curThread_w556aaac48b1b8->fields.java_lang_Thread.xmlvmException_;
 
1112
    java_lang_Object_releaseLockRecursive__(_r2.o);
 
1113
    XMLVM_THROW_CUSTOM(_r1.o)
 
1114
    //XMLVM_END_WRAPPER
 
1115
}
 
1116
 
 
1117
//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isAnnotation__(JAVA_OBJECT me)]
 
1118
 
 
1119
//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isAnnotationPresent___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1)]
 
1120
 
 
1121
//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isAnonymousClass__(JAVA_OBJECT me)]
 
1122
 
 
1123
//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isArray__(JAVA_OBJECT me)]
 
1124
 
 
1125
//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isAssignableFrom___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1)]
 
1126
 
 
1127
//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isEnum__(JAVA_OBJECT me)]
 
1128
 
 
1129
//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isInstance___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)]
 
1130
 
 
1131
//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isInterface__(JAVA_OBJECT me)]
 
1132
 
 
1133
//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isLocalClass__(JAVA_OBJECT me)]
 
1134
 
 
1135
//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isMemberClass__(JAVA_OBJECT me)]
 
1136
 
 
1137
//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isPrimitive__(JAVA_OBJECT me)]
 
1138
 
 
1139
//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_isSynthetic__(JAVA_OBJECT me)]
 
1140
 
 
1141
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_newInstance__(JAVA_OBJECT me)]
 
1142
 
 
1143
JAVA_OBJECT java_lang_Class_toString__(JAVA_OBJECT me)
 
1144
{
 
1145
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_toString__]
 
1146
    XMLVM_ENTER_METHOD("java.lang.Class", "toString", "?")
 
1147
    XMLVMElem _r0;
 
1148
    XMLVMElem _r1;
 
1149
    XMLVMElem _r2;
 
1150
    _r2.o = me;
 
1151
    XMLVM_SOURCE_POSITION("Class.java", 1031)
 
1152
    _r0.o = __NEW_java_lang_StringBuilder();
 
1153
    XMLVM_CHECK_NPE(0)
 
1154
    java_lang_StringBuilder___INIT___(_r0.o);
 
1155
    XMLVM_SOURCE_POSITION("Class.java", 1032)
 
1156
    XMLVM_CHECK_NPE(2)
 
1157
    _r1.i = java_lang_Class_isPrimitive__(_r2.o);
 
1158
    if (_r1.i != 0) goto label27;
 
1159
    XMLVM_SOURCE_POSITION("Class.java", 1033)
 
1160
    XMLVM_CHECK_NPE(2)
 
1161
    _r1.i = java_lang_Class_isInterface__(_r2.o);
 
1162
    if (_r1.i == 0) goto label39;
 
1163
    XMLVM_SOURCE_POSITION("Class.java", 1034)
 
1164
    // "interface"
 
1165
    _r1.o = xmlvm_create_java_string_from_pool(56);
 
1166
    XMLVM_CHECK_NPE(0)
 
1167
    java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o);
 
1168
    label22:;
 
1169
    XMLVM_SOURCE_POSITION("Class.java", 1038)
 
1170
    // " "
 
1171
    _r1.o = xmlvm_create_java_string_from_pool(57);
 
1172
    XMLVM_CHECK_NPE(0)
 
1173
    java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o);
 
1174
    label27:;
 
1175
    XMLVM_SOURCE_POSITION("Class.java", 1040)
 
1176
    XMLVM_CHECK_NPE(2)
 
1177
    _r1.o = java_lang_Class_getName__(_r2.o);
 
1178
    XMLVM_CHECK_NPE(0)
 
1179
    java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o);
 
1180
    XMLVM_SOURCE_POSITION("Class.java", 1041)
 
1181
    //java_lang_StringBuilder_toString__[5]
 
1182
    XMLVM_CHECK_NPE(0)
 
1183
    _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o);
 
1184
    XMLVM_EXIT_METHOD()
 
1185
    return _r1.o;
 
1186
    label39:;
 
1187
    XMLVM_SOURCE_POSITION("Class.java", 1036)
 
1188
    // "class"
 
1189
    _r1.o = xmlvm_create_java_string_from_pool(58);
 
1190
    XMLVM_CHECK_NPE(0)
 
1191
    java_lang_StringBuilder_append___java_lang_String(_r0.o, _r1.o);
 
1192
    goto label22;
 
1193
    //XMLVM_END_WRAPPER
 
1194
}
 
1195
 
 
1196
JAVA_OBJECT java_lang_Class_getPackage__(JAVA_OBJECT me)
 
1197
{
 
1198
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_getPackage__]
 
1199
    XMLVM_ENTER_METHOD("java.lang.Class", "getPackage", "?")
 
1200
    XMLVMElem _r0;
 
1201
    XMLVMElem _r1;
 
1202
    _r1.o = me;
 
1203
    XMLVM_SOURCE_POSITION("Class.java", 1053)
 
1204
    XMLVM_CHECK_NPE(1)
 
1205
    _r0.o = java_lang_Class_getPackageString__(_r1.o);
 
1206
 
 
1207
    
 
1208
    // Red class access removed: java.lang.Package::getPackage
 
1209
    XMLVM_RED_CLASS_DEPENDENCY();
 
1210
    XMLVM_EXIT_METHOD()
 
1211
    return _r0.o;
 
1212
    //XMLVM_END_WRAPPER
 
1213
}
 
1214
 
 
1215
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getPackageString__(JAVA_OBJECT me)]
 
1216
 
 
1217
//XMLVM_NATIVE[JAVA_BOOLEAN java_lang_Class_desiredAssertionStatus__(JAVA_OBJECT me)]
 
1218
 
 
1219
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_asSubclass___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1)]
 
1220
 
 
1221
JAVA_OBJECT java_lang_Class_cast___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)
 
1222
{
 
1223
    //XMLVM_BEGIN_WRAPPER[java_lang_Class_cast___java_lang_Object]
 
1224
    XMLVM_ENTER_METHOD("java.lang.Class", "cast", "?")
 
1225
    XMLVMElem _r0;
 
1226
    XMLVMElem _r1;
 
1227
    XMLVMElem _r2;
 
1228
    _r1.o = me;
 
1229
    _r2.o = n1;
 
1230
    XMLVM_SOURCE_POSITION("Class.java", 1092)
 
1231
    if (_r2.o == JAVA_NULL) goto label12;
 
1232
    //java_lang_Object_getClass__[3]
 
1233
    XMLVM_CHECK_NPE(2)
 
1234
    _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[3])(_r2.o);
 
1235
    XMLVM_CHECK_NPE(1)
 
1236
    _r0.i = java_lang_Class_isAssignableFrom___java_lang_Class(_r1.o, _r0.o);
 
1237
    if (_r0.i == 0) goto label13;
 
1238
    label12:;
 
1239
    XMLVM_SOURCE_POSITION("Class.java", 1093)
 
1240
    XMLVM_EXIT_METHOD()
 
1241
    return _r2.o;
 
1242
    label13:;
 
1243
    XMLVM_SOURCE_POSITION("Class.java", 1095)
 
1244
 
 
1245
    
 
1246
    // Red class access removed: java.lang.ClassCastException::new-instance
 
1247
    XMLVM_RED_CLASS_DEPENDENCY();
 
1248
 
 
1249
    
 
1250
    // Red class access removed: java.lang.ClassCastException::<init>
 
1251
    XMLVM_RED_CLASS_DEPENDENCY();
 
1252
    XMLVM_THROW_CUSTOM(_r0.o)
 
1253
    //XMLVM_END_WRAPPER
 
1254
}
 
1255
 
 
1256
//XMLVM_NATIVE[JAVA_OBJECT java_lang_Class_getSignatureAttribute__(JAVA_OBJECT me)]
 
1257
 
 
1258
void java_lang_Class___CLINIT_()
 
1259
{
 
1260
    //XMLVM_BEGIN_WRAPPER[java_lang_Class___CLINIT___]
 
1261
    XMLVM_ENTER_METHOD("java.lang.Class", "<clinit>", "?")
 
1262
    XMLVMElem _r0;
 
1263
    XMLVM_SOURCE_POSITION("Class.java", 118)
 
1264
    _r0.o = __NEW_org_xmlvm_runtime_XMLVMClassLoader();
 
1265
    XMLVM_CHECK_NPE(0)
 
1266
    org_xmlvm_runtime_XMLVMClassLoader___INIT___(_r0.o);
 
1267
    java_lang_Class_PUT_classLoader( _r0.o);
 
1268
    XMLVM_SOURCE_POSITION("Class.java", 124)
 
1269
    XMLVM_EXIT_METHOD()
 
1270
    return;
 
1271
    //XMLVM_END_WRAPPER
 
1272
}
 
1273