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

« back to all changes in this revision

Viewing changes to tests/nbody-java/java_lang_String.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_lang_Character.h"
 
3
#include "java_lang_Class.h"
 
4
#include "java_lang_Double.h"
 
5
#include "java_lang_Exception.h"
 
6
#include "java_lang_Float.h"
 
7
#include "java_lang_IndexOutOfBoundsException.h"
 
8
#include "java_lang_Integer.h"
 
9
#include "java_lang_Long.h"
 
10
#include "java_lang_Math.h"
 
11
#include "java_lang_NullPointerException.h"
 
12
#include "java_lang_String_CaseInsensitiveComparator.h"
 
13
#include "java_lang_StringBuilder.h"
 
14
#include "java_lang_System.h"
 
15
#include "java_lang_Throwable.h"
 
16
#include "java_nio_ByteBuffer.h"
 
17
#include "java_nio_CharBuffer.h"
 
18
#include "java_nio_charset_Charset.h"
 
19
#include "java_security_AccessController.h"
 
20
#include "java_util_Comparator.h"
 
21
#include "java_util_Locale.h"
 
22
#include "org_apache_harmony_luni_util_PriviAction.h"
 
23
#include "org_apache_harmony_niochar_charset_UTF_8.h"
 
24
 
 
25
#include "java_lang_String.h"
 
26
 
 
27
#define XMLVM_CURRENT_CLASS_NAME String
 
28
#define XMLVM_CURRENT_PKG_CLASS_NAME java_lang_String
 
29
 
 
30
__TIB_DEFINITION_java_lang_String __TIB_java_lang_String = {
 
31
    0, // classInitializationBegan
 
32
    0, // classInitialized
 
33
    -1, // initializerThreadId
 
34
    __INIT_java_lang_String, // classInitializer
 
35
    "java.lang.String", // className
 
36
    "java.lang", // package
 
37
    JAVA_NULL, // enclosingClassName
 
38
    JAVA_NULL, // enclosingMethodName
 
39
    "Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/Comparable<Ljava/lang/String;>;Ljava/lang/CharSequence;", // signature
 
40
    (__TIB_DEFINITION_TEMPLATE*) &__TIB_java_lang_Object, // extends
 
41
    sizeof(java_lang_String), // sizeInstance
 
42
    XMLVM_TYPE_CLASS};
 
43
 
 
44
JAVA_OBJECT __CLASS_java_lang_String;
 
45
JAVA_OBJECT __CLASS_java_lang_String_1ARRAY;
 
46
JAVA_OBJECT __CLASS_java_lang_String_2ARRAY;
 
47
JAVA_OBJECT __CLASS_java_lang_String_3ARRAY;
 
48
//XMLVM_BEGIN_IMPLEMENTATION
 
49
//XMLVM_END_IMPLEMENTATION
 
50
 
 
51
static JAVA_LONG _STATIC_java_lang_String_serialVersionUID;
 
52
static JAVA_OBJECT _STATIC_java_lang_String_CASE_INSENSITIVE_ORDER;
 
53
static JAVA_OBJECT _STATIC_java_lang_String_ascii;
 
54
static JAVA_OBJECT _STATIC_java_lang_String_DefaultCharset;
 
55
static JAVA_OBJECT _STATIC_java_lang_String_lastCharset;
 
56
 
 
57
#include "xmlvm-reflection.h"
 
58
 
 
59
static XMLVM_FIELD_REFLECTION_DATA __field_reflection_data[] = {
 
60
};
 
61
 
 
62
static XMLVM_CONSTRUCTOR_REFLECTION_DATA __constructor_reflection_data[] = {
 
63
};
 
64
 
 
65
static JAVA_OBJECT constructor_dispatcher(JAVA_OBJECT constructor, JAVA_OBJECT arguments)
 
66
{
 
67
    XMLVM_NOT_IMPLEMENTED();
 
68
}
 
69
 
 
70
static XMLVM_METHOD_REFLECTION_DATA __method_reflection_data[] = {
 
71
};
 
72
 
 
73
static JAVA_OBJECT method_dispatcher(JAVA_OBJECT method, JAVA_OBJECT receiver, JAVA_OBJECT arguments)
 
74
{
 
75
    XMLVM_NOT_IMPLEMENTED();
 
76
}
 
77
 
 
78
void __INIT_java_lang_String()
 
79
{
 
80
    staticInitializerLock(&__TIB_java_lang_String);
 
81
 
 
82
    // While the static initializer mutex is locked, locally store the value of
 
83
    // whether class initialization began or not
 
84
    int initBegan = __TIB_java_lang_String.classInitializationBegan;
 
85
 
 
86
    // Whether or not class initialization had already began, it has begun now
 
87
    __TIB_java_lang_String.classInitializationBegan = 1;
 
88
 
 
89
    staticInitializerUnlock(&__TIB_java_lang_String);
 
90
 
 
91
    JAVA_LONG curThreadId = (JAVA_LONG)pthread_self();
 
92
    if (initBegan) {
 
93
        if (__TIB_java_lang_String.initializerThreadId != curThreadId) {
 
94
            // Busy wait until the other thread finishes initializing this class
 
95
            while (!__TIB_java_lang_String.classInitialized) {
 
96
                // do nothing
 
97
            }
 
98
        }
 
99
    } else {
 
100
        __TIB_java_lang_String.initializerThreadId = curThreadId;
 
101
        XMLVM_CLASS_USED("java.lang.String")
 
102
        __INIT_IMPL_java_lang_String();
 
103
    }
 
104
}
 
105
 
 
106
void __INIT_IMPL_java_lang_String()
 
107
{
 
108
    // Initialize base class if necessary
 
109
    XMLVM_CLASS_INIT(java_lang_Object)
 
110
    __TIB_java_lang_String.newInstanceFunc = __NEW_INSTANCE_java_lang_String;
 
111
    // Copy vtable from base class
 
112
    XMLVM_MEMCPY(__TIB_java_lang_String.vtable, __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable));
 
113
    // Initialize vtable for this class
 
114
    __TIB_java_lang_String.vtable[6] = (VTABLE_PTR) &java_lang_String_charAt___int;
 
115
    __TIB_java_lang_String.vtable[1] = (VTABLE_PTR) &java_lang_String_equals___java_lang_Object;
 
116
    __TIB_java_lang_String.vtable[4] = (VTABLE_PTR) &java_lang_String_hashCode__;
 
117
    __TIB_java_lang_String.vtable[8] = (VTABLE_PTR) &java_lang_String_length__;
 
118
    __TIB_java_lang_String.vtable[5] = (VTABLE_PTR) &java_lang_String_toString__;
 
119
    __TIB_java_lang_String.vtable[9] = (VTABLE_PTR) &java_lang_String_subSequence___int_int;
 
120
    __TIB_java_lang_String.vtable[7] = (VTABLE_PTR) &java_lang_String_compareTo___java_lang_Object;
 
121
    xmlvm_init_native_java_lang_String();
 
122
    // Initialize interface information
 
123
    __TIB_java_lang_String.numImplementedInterfaces = 3;
 
124
    __TIB_java_lang_String.implementedInterfaces = (__TIB_DEFINITION_TEMPLATE* (*)[1]) XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 3);
 
125
 
 
126
    // Initialize interfaces if necessary and assign tib to implementedInterfaces
 
127
 
 
128
    XMLVM_CLASS_INIT(java_io_Serializable)
 
129
 
 
130
    __TIB_java_lang_String.implementedInterfaces[0][0] = &__TIB_java_io_Serializable;
 
131
 
 
132
    XMLVM_CLASS_INIT(java_lang_CharSequence)
 
133
 
 
134
    __TIB_java_lang_String.implementedInterfaces[0][1] = &__TIB_java_lang_CharSequence;
 
135
 
 
136
    XMLVM_CLASS_INIT(java_lang_Comparable)
 
137
 
 
138
    __TIB_java_lang_String.implementedInterfaces[0][2] = &__TIB_java_lang_Comparable;
 
139
    // Initialize itable for this class
 
140
    __TIB_java_lang_String.itableBegin = &__TIB_java_lang_String.itable[0];
 
141
    __TIB_java_lang_String.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_charAt___int] = __TIB_java_lang_String.vtable[6];
 
142
    __TIB_java_lang_String.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__] = __TIB_java_lang_String.vtable[8];
 
143
    __TIB_java_lang_String.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_subSequence___int_int] = __TIB_java_lang_String.vtable[9];
 
144
    __TIB_java_lang_String.itable[XMLVM_ITABLE_IDX_java_lang_CharSequence_toString__] = __TIB_java_lang_String.vtable[5];
 
145
    __TIB_java_lang_String.itable[XMLVM_ITABLE_IDX_java_lang_Comparable_compareTo___java_lang_Object] = __TIB_java_lang_String.vtable[7];
 
146
 
 
147
    _STATIC_java_lang_String_serialVersionUID = -6849794470754667710;
 
148
    _STATIC_java_lang_String_CASE_INSENSITIVE_ORDER = (java_util_Comparator*) JAVA_NULL;
 
149
    _STATIC_java_lang_String_ascii = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL;
 
150
    _STATIC_java_lang_String_DefaultCharset = (java_nio_charset_Charset*) JAVA_NULL;
 
151
    _STATIC_java_lang_String_lastCharset = (java_nio_charset_Charset*) JAVA_NULL;
 
152
 
 
153
    __TIB_java_lang_String.declaredFields = &__field_reflection_data[0];
 
154
    __TIB_java_lang_String.numDeclaredFields = sizeof(__field_reflection_data) / sizeof(XMLVM_FIELD_REFLECTION_DATA);
 
155
    __TIB_java_lang_String.constructorDispatcherFunc = constructor_dispatcher;
 
156
    __TIB_java_lang_String.declaredConstructors = &__constructor_reflection_data[0];
 
157
    __TIB_java_lang_String.numDeclaredConstructors = sizeof(__constructor_reflection_data) / sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA);
 
158
    __TIB_java_lang_String.methodDispatcherFunc = method_dispatcher;
 
159
    __TIB_java_lang_String.declaredMethods = &__method_reflection_data[0];
 
160
    __TIB_java_lang_String.numDeclaredMethods = sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA);
 
161
    __CLASS_java_lang_String = XMLVM_CREATE_CLASS_OBJECT(&__TIB_java_lang_String);
 
162
    __TIB_java_lang_String.clazz = __CLASS_java_lang_String;
 
163
    __TIB_java_lang_String.baseType = JAVA_NULL;
 
164
    __CLASS_java_lang_String_1ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_String);
 
165
    __CLASS_java_lang_String_2ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_String_1ARRAY);
 
166
    __CLASS_java_lang_String_3ARRAY = XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_java_lang_String_2ARRAY);
 
167
    java_lang_String___CLINIT_();
 
168
    //XMLVM_BEGIN_WRAPPER[__INIT_java_lang_String]
 
169
    //XMLVM_END_WRAPPER
 
170
 
 
171
    __TIB_java_lang_String.classInitialized = 1;
 
172
}
 
173
 
 
174
void __DELETE_java_lang_String(void* me, void* client_data)
 
175
{
 
176
    //XMLVM_BEGIN_WRAPPER[__DELETE_java_lang_String]
 
177
    //XMLVM_END_WRAPPER
 
178
}
 
179
 
 
180
void __INIT_INSTANCE_MEMBERS_java_lang_String(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer)
 
181
{
 
182
    __INIT_INSTANCE_MEMBERS_java_lang_Object(me, 0 || derivedClassWillRegisterFinalizer);
 
183
    ((java_lang_String*) me)->fields.java_lang_String.charset_ = (org_apache_harmony_niochar_charset_UTF_8*) JAVA_NULL;
 
184
    ((java_lang_String*) me)->fields.java_lang_String.charset2_ = (java_lang_Object*) JAVA_NULL;
 
185
    ((java_lang_String*) me)->fields.java_lang_String.charset3_ = (java_lang_Object*) JAVA_NULL;
 
186
    ((java_lang_String*) me)->fields.java_lang_String.value_ = (org_xmlvm_runtime_XMLVMArray*) JAVA_NULL;
 
187
    ((java_lang_String*) me)->fields.java_lang_String.offset_ = 0;
 
188
    ((java_lang_String*) me)->fields.java_lang_String.count_ = 0;
 
189
    ((java_lang_String*) me)->fields.java_lang_String.hashCode_ = 0;
 
190
    //XMLVM_BEGIN_WRAPPER[__INIT_INSTANCE_MEMBERS_java_lang_String]
 
191
    //XMLVM_END_WRAPPER
 
192
}
 
193
 
 
194
JAVA_OBJECT __NEW_java_lang_String()
 
195
{    XMLVM_CLASS_INIT(java_lang_String)
 
196
java_lang_String* me = (java_lang_String*) XMLVM_MALLOC(sizeof(java_lang_String));
 
197
    me->tib = &__TIB_java_lang_String;
 
198
    __INIT_INSTANCE_MEMBERS_java_lang_String(me, 0);
 
199
    //XMLVM_BEGIN_WRAPPER[__NEW_java_lang_String]
 
200
    //XMLVM_END_WRAPPER
 
201
    return me;
 
202
}
 
203
 
 
204
JAVA_OBJECT __NEW_INSTANCE_java_lang_String()
 
205
{
 
206
    JAVA_OBJECT me = JAVA_NULL;
 
207
    me = __NEW_java_lang_String();
 
208
    java_lang_String___INIT___(me);
 
209
    return me;
 
210
}
 
211
 
 
212
JAVA_LONG java_lang_String_GET_serialVersionUID()
 
213
{
 
214
    XMLVM_CLASS_INIT(java_lang_String)
 
215
    return _STATIC_java_lang_String_serialVersionUID;
 
216
}
 
217
 
 
218
void java_lang_String_PUT_serialVersionUID(JAVA_LONG v)
 
219
{
 
220
    XMLVM_CLASS_INIT(java_lang_String)
 
221
_STATIC_java_lang_String_serialVersionUID = v;
 
222
}
 
223
 
 
224
JAVA_OBJECT java_lang_String_GET_CASE_INSENSITIVE_ORDER()
 
225
{
 
226
    XMLVM_CLASS_INIT(java_lang_String)
 
227
    return _STATIC_java_lang_String_CASE_INSENSITIVE_ORDER;
 
228
}
 
229
 
 
230
void java_lang_String_PUT_CASE_INSENSITIVE_ORDER(JAVA_OBJECT v)
 
231
{
 
232
    XMLVM_CLASS_INIT(java_lang_String)
 
233
_STATIC_java_lang_String_CASE_INSENSITIVE_ORDER = v;
 
234
}
 
235
 
 
236
JAVA_OBJECT java_lang_String_GET_ascii()
 
237
{
 
238
    XMLVM_CLASS_INIT(java_lang_String)
 
239
    return _STATIC_java_lang_String_ascii;
 
240
}
 
241
 
 
242
void java_lang_String_PUT_ascii(JAVA_OBJECT v)
 
243
{
 
244
    XMLVM_CLASS_INIT(java_lang_String)
 
245
_STATIC_java_lang_String_ascii = v;
 
246
}
 
247
 
 
248
JAVA_OBJECT java_lang_String_GET_DefaultCharset()
 
249
{
 
250
    XMLVM_CLASS_INIT(java_lang_String)
 
251
    return _STATIC_java_lang_String_DefaultCharset;
 
252
}
 
253
 
 
254
void java_lang_String_PUT_DefaultCharset(JAVA_OBJECT v)
 
255
{
 
256
    XMLVM_CLASS_INIT(java_lang_String)
 
257
_STATIC_java_lang_String_DefaultCharset = v;
 
258
}
 
259
 
 
260
JAVA_OBJECT java_lang_String_GET_lastCharset()
 
261
{
 
262
    XMLVM_CLASS_INIT(java_lang_String)
 
263
    return _STATIC_java_lang_String_lastCharset;
 
264
}
 
265
 
 
266
void java_lang_String_PUT_lastCharset(JAVA_OBJECT v)
 
267
{
 
268
    XMLVM_CLASS_INIT(java_lang_String)
 
269
_STATIC_java_lang_String_lastCharset = v;
 
270
}
 
271
 
 
272
void java_lang_String___INIT___(JAVA_OBJECT me)
 
273
{
 
274
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT___]
 
275
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
276
    XMLVMElem _r0;
 
277
    XMLVMElem _r1;
 
278
    XMLVMElem _r2;
 
279
    _r2.o = me;
 
280
    _r0.o = JAVA_NULL;
 
281
    _r1.i = 0;
 
282
    XMLVM_SOURCE_POSITION("String.java", 166)
 
283
    XMLVM_CHECK_NPE(2)
 
284
    java_lang_Object___INIT___(_r2.o);
 
285
    XMLVM_SOURCE_POSITION("String.java", 58)
 
286
    XMLVM_CHECK_NPE(2)
 
287
    ((java_lang_String*) _r2.o)->fields.java_lang_String.charset_ = _r0.o;
 
288
    XMLVM_SOURCE_POSITION("String.java", 59)
 
289
    XMLVM_CHECK_NPE(2)
 
290
    ((java_lang_String*) _r2.o)->fields.java_lang_String.charset2_ = _r0.o;
 
291
    XMLVM_SOURCE_POSITION("String.java", 60)
 
292
    XMLVM_CHECK_NPE(2)
 
293
    ((java_lang_String*) _r2.o)->fields.java_lang_String.charset3_ = _r0.o;
 
294
    XMLVM_SOURCE_POSITION("String.java", 167)
 
295
    XMLVM_CLASS_INIT(char)
 
296
    _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r1.i);
 
297
    XMLVM_CHECK_NPE(2)
 
298
    ((java_lang_String*) _r2.o)->fields.java_lang_String.value_ = _r0.o;
 
299
    XMLVM_SOURCE_POSITION("String.java", 168)
 
300
    XMLVM_CHECK_NPE(2)
 
301
    ((java_lang_String*) _r2.o)->fields.java_lang_String.offset_ = _r1.i;
 
302
    XMLVM_SOURCE_POSITION("String.java", 169)
 
303
    XMLVM_CHECK_NPE(2)
 
304
    ((java_lang_String*) _r2.o)->fields.java_lang_String.count_ = _r1.i;
 
305
    XMLVM_SOURCE_POSITION("String.java", 170)
 
306
    XMLVM_EXIT_METHOD()
 
307
    return;
 
308
    //XMLVM_END_WRAPPER
 
309
}
 
310
 
 
311
void java_lang_String___INIT____java_lang_String_char(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_CHAR n2)
 
312
{
 
313
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_String_char]
 
314
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
315
    XMLVMElem _r0;
 
316
    XMLVMElem _r1;
 
317
    XMLVMElem _r2;
 
318
    XMLVMElem _r3;
 
319
    XMLVMElem _r4;
 
320
    XMLVMElem _r5;
 
321
    XMLVMElem _r6;
 
322
    XMLVMElem _r7;
 
323
    _r5.o = me;
 
324
    _r6.o = n1;
 
325
    _r7.i = n2;
 
326
    _r4.i = 0;
 
327
    _r0.o = JAVA_NULL;
 
328
    XMLVM_SOURCE_POSITION("String.java", 176)
 
329
    XMLVM_CHECK_NPE(5)
 
330
    java_lang_Object___INIT___(_r5.o);
 
331
    XMLVM_SOURCE_POSITION("String.java", 58)
 
332
    XMLVM_CHECK_NPE(5)
 
333
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset_ = _r0.o;
 
334
    XMLVM_SOURCE_POSITION("String.java", 59)
 
335
    XMLVM_CHECK_NPE(5)
 
336
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset2_ = _r0.o;
 
337
    XMLVM_SOURCE_POSITION("String.java", 60)
 
338
    XMLVM_CHECK_NPE(5)
 
339
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset3_ = _r0.o;
 
340
    XMLVM_SOURCE_POSITION("String.java", 177)
 
341
    XMLVM_CHECK_NPE(5)
 
342
    ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_ = _r4.i;
 
343
    XMLVM_SOURCE_POSITION("String.java", 178)
 
344
    XMLVM_CHECK_NPE(6)
 
345
    _r0.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
346
    _r0.i = _r0.i + 1;
 
347
    XMLVM_CLASS_INIT(char)
 
348
    _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i);
 
349
    XMLVM_CHECK_NPE(5)
 
350
    ((java_lang_String*) _r5.o)->fields.java_lang_String.value_ = _r0.o;
 
351
    XMLVM_SOURCE_POSITION("String.java", 179)
 
352
    XMLVM_CHECK_NPE(6)
 
353
    _r0.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
354
    _r0.i = _r0.i + 1;
 
355
    XMLVM_CHECK_NPE(5)
 
356
    ((java_lang_String*) _r5.o)->fields.java_lang_String.count_ = _r0.i;
 
357
    XMLVM_SOURCE_POSITION("String.java", 180)
 
358
    XMLVM_CHECK_NPE(6)
 
359
    _r0.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_;
 
360
    XMLVM_CHECK_NPE(6)
 
361
    _r1.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_;
 
362
    XMLVM_CHECK_NPE(5)
 
363
    _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
364
    XMLVM_CHECK_NPE(6)
 
365
    _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
366
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r4.i, _r3.i);
 
367
    XMLVM_SOURCE_POSITION("String.java", 181)
 
368
    XMLVM_CHECK_NPE(5)
 
369
    _r0.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
370
    XMLVM_CHECK_NPE(6)
 
371
    _r1.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
372
    XMLVM_CHECK_NPE(0)
 
373
    XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i);
 
374
    ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r7.i;
 
375
    XMLVM_SOURCE_POSITION("String.java", 182)
 
376
    XMLVM_EXIT_METHOD()
 
377
    return;
 
378
    //XMLVM_END_WRAPPER
 
379
}
 
380
 
 
381
void java_lang_String___INIT____byte_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)
 
382
{
 
383
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____byte_1ARRAY]
 
384
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
385
    XMLVMElem _r0;
 
386
    XMLVMElem _r1;
 
387
    XMLVMElem _r2;
 
388
    XMLVMElem _r3;
 
389
    _r2.o = me;
 
390
    _r3.o = n1;
 
391
    XMLVM_SOURCE_POSITION("String.java", 194)
 
392
    _r0.i = 0;
 
393
    _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o));
 
394
    XMLVM_CHECK_NPE(2)
 
395
    java_lang_String___INIT____byte_1ARRAY_int_int(_r2.o, _r3.o, _r0.i, _r1.i);
 
396
    XMLVM_SOURCE_POSITION("String.java", 195)
 
397
    XMLVM_EXIT_METHOD()
 
398
    return;
 
399
    //XMLVM_END_WRAPPER
 
400
}
 
401
 
 
402
void java_lang_String___INIT____byte_1ARRAY_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2)
 
403
{
 
404
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____byte_1ARRAY_int]
 
405
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
406
    XMLVMElem _r0;
 
407
    XMLVMElem _r1;
 
408
    XMLVMElem _r2;
 
409
    XMLVMElem _r3;
 
410
    XMLVMElem _r4;
 
411
    _r2.o = me;
 
412
    _r3.o = n1;
 
413
    _r4.i = n2;
 
414
    XMLVM_SOURCE_POSITION("String.java", 212)
 
415
    _r0.i = 0;
 
416
    _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o));
 
417
    XMLVM_CHECK_NPE(2)
 
418
    java_lang_String___INIT____byte_1ARRAY_int_int_int(_r2.o, _r3.o, _r4.i, _r0.i, _r1.i);
 
419
    XMLVM_SOURCE_POSITION("String.java", 213)
 
420
    XMLVM_EXIT_METHOD()
 
421
    return;
 
422
    //XMLVM_END_WRAPPER
 
423
}
 
424
 
 
425
void java_lang_String___INIT____byte_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3)
 
426
{
 
427
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____byte_1ARRAY_int_int]
 
428
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
429
    XMLVMElem _r0;
 
430
    XMLVMElem _r1;
 
431
    XMLVMElem _r2;
 
432
    XMLVMElem _r3;
 
433
    XMLVMElem _r4;
 
434
    XMLVMElem _r5;
 
435
    XMLVMElem _r6;
 
436
    XMLVMElem _r7;
 
437
    XMLVMElem _r8;
 
438
    _r5.o = me;
 
439
    _r6.o = n1;
 
440
    _r7.i = n2;
 
441
    _r8.i = n3;
 
442
    _r3.o = JAVA_NULL;
 
443
    _r4.i = 0;
 
444
    XMLVM_SOURCE_POSITION("String.java", 233)
 
445
    XMLVM_CHECK_NPE(5)
 
446
    java_lang_Object___INIT___(_r5.o);
 
447
    XMLVM_SOURCE_POSITION("String.java", 58)
 
448
    XMLVM_CHECK_NPE(5)
 
449
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset_ = _r3.o;
 
450
    XMLVM_SOURCE_POSITION("String.java", 59)
 
451
    XMLVM_CHECK_NPE(5)
 
452
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset2_ = _r3.o;
 
453
    XMLVM_SOURCE_POSITION("String.java", 60)
 
454
    XMLVM_CHECK_NPE(5)
 
455
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset3_ = _r3.o;
 
456
    XMLVM_SOURCE_POSITION("String.java", 235)
 
457
    if (_r7.i < 0) goto label55;
 
458
    if (_r8.i < 0) goto label55;
 
459
    _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o));
 
460
    _r3.i = _r3.i - _r7.i;
 
461
    if (_r8.i > _r3.i) goto label55;
 
462
    XMLVM_SOURCE_POSITION("String.java", 236)
 
463
    XMLVM_CHECK_NPE(5)
 
464
    ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_ = _r4.i;
 
465
    XMLVM_SOURCE_POSITION("String.java", 237)
 
466
    XMLVM_CHECK_NPE(5)
 
467
    _r1.o = java_lang_String_defaultCharset__(_r5.o);
 
468
    XMLVM_SOURCE_POSITION("String.java", 239)
 
469
    _r3.o = java_nio_ByteBuffer_wrap___byte_1ARRAY_int_int(_r6.o, _r7.i, _r8.i);
 
470
    XMLVM_CHECK_NPE(1)
 
471
    _r0.o = java_nio_charset_Charset_decode___java_nio_ByteBuffer(_r1.o, _r3.o);
 
472
    XMLVM_SOURCE_POSITION("String.java", 241)
 
473
    //java_nio_CharBuffer_length__[22]
 
474
    XMLVM_CHECK_NPE(0)
 
475
    _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r0.o)->tib->vtable[22])(_r0.o);
 
476
    if (_r2.i <= 0) goto label48;
 
477
    XMLVM_SOURCE_POSITION("String.java", 242)
 
478
    //java_nio_CharBuffer_array__[7]
 
479
    XMLVM_CHECK_NPE(0)
 
480
    _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r0.o)->tib->vtable[7])(_r0.o);
 
481
    XMLVM_CHECK_NPE(5)
 
482
    ((java_lang_String*) _r5.o)->fields.java_lang_String.value_ = _r3.o;
 
483
    XMLVM_SOURCE_POSITION("String.java", 243)
 
484
    XMLVM_CHECK_NPE(5)
 
485
    ((java_lang_String*) _r5.o)->fields.java_lang_String.count_ = _r2.i;
 
486
    label47:;
 
487
    XMLVM_SOURCE_POSITION("String.java", 251)
 
488
    XMLVM_EXIT_METHOD()
 
489
    return;
 
490
    label48:;
 
491
    XMLVM_SOURCE_POSITION("String.java", 245)
 
492
    XMLVM_CHECK_NPE(5)
 
493
    ((java_lang_String*) _r5.o)->fields.java_lang_String.count_ = _r4.i;
 
494
    XMLVM_SOURCE_POSITION("String.java", 246)
 
495
    XMLVM_CLASS_INIT(char)
 
496
    _r3.o = XMLVMArray_createSingleDimension(__CLASS_char, _r4.i);
 
497
    XMLVM_CHECK_NPE(5)
 
498
    ((java_lang_String*) _r5.o)->fields.java_lang_String.value_ = _r3.o;
 
499
    goto label47;
 
500
    label55:;
 
501
    XMLVM_SOURCE_POSITION("String.java", 249)
 
502
 
 
503
    
 
504
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
505
    XMLVM_RED_CLASS_DEPENDENCY();
 
506
 
 
507
    
 
508
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
509
    XMLVM_RED_CLASS_DEPENDENCY();
 
510
    XMLVM_THROW_CUSTOM(_r3.o)
 
511
    //XMLVM_END_WRAPPER
 
512
}
 
513
 
 
514
void java_lang_String___INIT____byte_1ARRAY_int_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_INT n4)
 
515
{
 
516
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____byte_1ARRAY_int_int_int]
 
517
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
518
    XMLVMElem _r0;
 
519
    XMLVMElem _r1;
 
520
    XMLVMElem _r2;
 
521
    XMLVMElem _r3;
 
522
    XMLVMElem _r4;
 
523
    XMLVMElem _r5;
 
524
    XMLVMElem _r6;
 
525
    XMLVMElem _r7;
 
526
    XMLVMElem _r8;
 
527
    _r4.o = me;
 
528
    _r5.o = n1;
 
529
    _r6.i = n2;
 
530
    _r7.i = n3;
 
531
    _r8.i = n4;
 
532
    _r2.o = JAVA_NULL;
 
533
    XMLVM_SOURCE_POSITION("String.java", 274)
 
534
    XMLVM_CHECK_NPE(4)
 
535
    java_lang_Object___INIT___(_r4.o);
 
536
    XMLVM_SOURCE_POSITION("String.java", 58)
 
537
    XMLVM_CHECK_NPE(4)
 
538
    ((java_lang_String*) _r4.o)->fields.java_lang_String.charset_ = _r2.o;
 
539
    XMLVM_SOURCE_POSITION("String.java", 59)
 
540
    XMLVM_CHECK_NPE(4)
 
541
    ((java_lang_String*) _r4.o)->fields.java_lang_String.charset2_ = _r2.o;
 
542
    XMLVM_SOURCE_POSITION("String.java", 60)
 
543
    XMLVM_CHECK_NPE(4)
 
544
    ((java_lang_String*) _r4.o)->fields.java_lang_String.charset3_ = _r2.o;
 
545
    XMLVM_SOURCE_POSITION("String.java", 277)
 
546
    _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r5.o));
 
547
    _r2.i = _r2.i - _r7.i;
 
548
    if (_r8.i > _r2.i) goto label50;
 
549
    if (_r7.i < 0) goto label50;
 
550
    if (_r8.i < 0) goto label50;
 
551
    XMLVM_SOURCE_POSITION("String.java", 278)
 
552
    _r2.i = 0;
 
553
    XMLVM_CHECK_NPE(4)
 
554
    ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_ = _r2.i;
 
555
    XMLVM_SOURCE_POSITION("String.java", 279)
 
556
    XMLVM_CLASS_INIT(char)
 
557
    _r2.o = XMLVMArray_createSingleDimension(__CLASS_char, _r8.i);
 
558
    XMLVM_CHECK_NPE(4)
 
559
    ((java_lang_String*) _r4.o)->fields.java_lang_String.value_ = _r2.o;
 
560
    XMLVM_SOURCE_POSITION("String.java", 280)
 
561
    XMLVM_CHECK_NPE(4)
 
562
    ((java_lang_String*) _r4.o)->fields.java_lang_String.count_ = _r8.i;
 
563
    XMLVM_SOURCE_POSITION("String.java", 281)
 
564
    _r6.i = _r6.i << 8;
 
565
    _r0.i = 0;
 
566
    label30:;
 
567
    XMLVM_SOURCE_POSITION("String.java", 282)
 
568
    XMLVM_CHECK_NPE(4)
 
569
    _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
570
    if (_r0.i >= _r2.i) goto label56;
 
571
    XMLVM_SOURCE_POSITION("String.java", 283)
 
572
    XMLVM_CHECK_NPE(4)
 
573
    _r2.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_;
 
574
    _r1.i = _r7.i + 1;
 
575
    XMLVM_CHECK_NPE(5)
 
576
    XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r7.i);
 
577
    _r3.i = ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i];
 
578
    _r3.i = _r3.i & 255;
 
579
    _r3.i = _r3.i + _r6.i;
 
580
    _r3.i = _r3.i & 0xffff;
 
581
    XMLVM_CHECK_NPE(2)
 
582
    XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r0.i);
 
583
    ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r3.i;
 
584
    _r0.i = _r0.i + 1;
 
585
    _r7 = _r1;
 
586
    goto label30;
 
587
    label50:;
 
588
    XMLVM_SOURCE_POSITION("String.java", 286)
 
589
 
 
590
    
 
591
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
592
    XMLVM_RED_CLASS_DEPENDENCY();
 
593
 
 
594
    
 
595
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
596
    XMLVM_RED_CLASS_DEPENDENCY();
 
597
    XMLVM_THROW_CUSTOM(_r2.o)
 
598
    label56:;
 
599
    XMLVM_SOURCE_POSITION("String.java", 288)
 
600
    XMLVM_EXIT_METHOD()
 
601
    return;
 
602
    //XMLVM_END_WRAPPER
 
603
}
 
604
 
 
605
void java_lang_String___INIT____byte_1ARRAY_int_int_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_OBJECT n4)
 
606
{
 
607
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____byte_1ARRAY_int_int_java_lang_String]
 
608
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
609
    volatile XMLVMElem _r0;
 
610
    volatile XMLVMElem _r1;
 
611
    volatile XMLVMElem _r2;
 
612
    volatile XMLVMElem _r3;
 
613
    volatile XMLVMElem _r4;
 
614
    volatile XMLVMElem _r5;
 
615
    volatile XMLVMElem _r6;
 
616
    volatile XMLVMElem _r7;
 
617
    volatile XMLVMElem _r8;
 
618
    volatile XMLVMElem _r9;
 
619
    volatile XMLVMElem _r10;
 
620
    _r6.o = me;
 
621
    _r7.o = n1;
 
622
    _r8.i = n2;
 
623
    _r9.i = n3;
 
624
    _r10.o = n4;
 
625
    _r4.o = JAVA_NULL;
 
626
    _r5.i = 0;
 
627
    XMLVM_SOURCE_POSITION("String.java", 310)
 
628
    XMLVM_CHECK_NPE(6)
 
629
    java_lang_Object___INIT___(_r6.o);
 
630
    XMLVM_SOURCE_POSITION("String.java", 58)
 
631
    XMLVM_CHECK_NPE(6)
 
632
    ((java_lang_String*) _r6.o)->fields.java_lang_String.charset_ = _r4.o;
 
633
    XMLVM_SOURCE_POSITION("String.java", 59)
 
634
    XMLVM_CHECK_NPE(6)
 
635
    ((java_lang_String*) _r6.o)->fields.java_lang_String.charset2_ = _r4.o;
 
636
    XMLVM_SOURCE_POSITION("String.java", 60)
 
637
    XMLVM_CHECK_NPE(6)
 
638
    ((java_lang_String*) _r6.o)->fields.java_lang_String.charset3_ = _r4.o;
 
639
    XMLVM_SOURCE_POSITION("String.java", 311)
 
640
    if (_r10.o != JAVA_NULL) goto label19;
 
641
    XMLVM_SOURCE_POSITION("String.java", 312)
 
642
    _r4.o = __NEW_java_lang_NullPointerException();
 
643
    XMLVM_CHECK_NPE(4)
 
644
    java_lang_NullPointerException___INIT___(_r4.o);
 
645
    XMLVM_THROW_CUSTOM(_r4.o)
 
646
    label19:;
 
647
    XMLVM_SOURCE_POSITION("String.java", 315)
 
648
    if (_r8.i < 0) goto label76;
 
649
    if (_r9.i < 0) goto label76;
 
650
    _r4.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r7.o));
 
651
    _r4.i = _r4.i - _r8.i;
 
652
    if (_r9.i > _r4.i) goto label76;
 
653
    XMLVM_SOURCE_POSITION("String.java", 316)
 
654
    XMLVM_CHECK_NPE(6)
 
655
    ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_ = _r5.i;
 
656
    XMLVM_SOURCE_POSITION("String.java", 317)
 
657
    XMLVM_CHECK_NPE(6)
 
658
    _r1.o = java_lang_String_getCharset___java_lang_String(_r6.o, _r10.o);
 
659
    XMLVM_TRY_BEGIN(w3113aaac18b1c33)
 
660
    // Begin try
 
661
    XMLVM_SOURCE_POSITION("String.java", 322)
 
662
    _r4.o = java_nio_ByteBuffer_wrap___byte_1ARRAY_int_int(_r7.o, _r8.i, _r9.i);
 
663
    XMLVM_CHECK_NPE(1)
 
664
    _r0.o = java_nio_charset_Charset_decode___java_nio_ByteBuffer(_r1.o, _r4.o);
 
665
    // End try
 
666
    XMLVM_TRY_END
 
667
    XMLVM_CATCH_BEGIN(w3113aaac18b1c33)
 
668
        XMLVM_CATCH_SPECIFIC(w3113aaac18b1c33,java_lang_Exception,56)
 
669
    XMLVM_CATCH_END(w3113aaac18b1c33)
 
670
    XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac18b1c33)
 
671
    label41:;
 
672
    XMLVM_SOURCE_POSITION("String.java", 328)
 
673
    //java_nio_CharBuffer_length__[22]
 
674
    XMLVM_CHECK_NPE(0)
 
675
    _r3.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r0.o)->tib->vtable[22])(_r0.o);
 
676
    if (_r3.i <= 0) goto label69;
 
677
    XMLVM_SOURCE_POSITION("String.java", 329)
 
678
    //java_nio_CharBuffer_array__[7]
 
679
    XMLVM_CHECK_NPE(0)
 
680
    _r4.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_nio_CharBuffer*) _r0.o)->tib->vtable[7])(_r0.o);
 
681
    XMLVM_CHECK_NPE(6)
 
682
    ((java_lang_String*) _r6.o)->fields.java_lang_String.value_ = _r4.o;
 
683
    XMLVM_SOURCE_POSITION("String.java", 330)
 
684
    XMLVM_CHECK_NPE(6)
 
685
    ((java_lang_String*) _r6.o)->fields.java_lang_String.count_ = _r3.i;
 
686
    label55:;
 
687
    XMLVM_SOURCE_POSITION("String.java", 338)
 
688
    XMLVM_EXIT_METHOD()
 
689
    return;
 
690
    label56:;
 
691
    XMLVM_SOURCE_POSITION("String.java", 323)
 
692
    java_lang_Thread* curThread_w3113aaac18b1c48 = (java_lang_Thread*)java_lang_Thread_currentThread__();
 
693
    _r4.o = curThread_w3113aaac18b1c48->fields.java_lang_Thread.xmlvmException_;
 
694
    _r2 = _r4;
 
695
    XMLVM_SOURCE_POSITION("String.java", 326)
 
696
    // "?"
 
697
    _r4.o = xmlvm_create_java_string_from_pool(170);
 
698
    XMLVM_CHECK_NPE(4)
 
699
    _r4.o = java_lang_String_toCharArray__(_r4.o);
 
700
    _r0.o = java_nio_CharBuffer_wrap___char_1ARRAY(_r4.o);
 
701
    goto label41;
 
702
    label69:;
 
703
    XMLVM_SOURCE_POSITION("String.java", 332)
 
704
    XMLVM_CHECK_NPE(6)
 
705
    ((java_lang_String*) _r6.o)->fields.java_lang_String.count_ = _r5.i;
 
706
    XMLVM_SOURCE_POSITION("String.java", 333)
 
707
    XMLVM_CLASS_INIT(char)
 
708
    _r4.o = XMLVMArray_createSingleDimension(__CLASS_char, _r5.i);
 
709
    XMLVM_CHECK_NPE(6)
 
710
    ((java_lang_String*) _r6.o)->fields.java_lang_String.value_ = _r4.o;
 
711
    goto label55;
 
712
    label76:;
 
713
    XMLVM_SOURCE_POSITION("String.java", 336)
 
714
 
 
715
    
 
716
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
717
    XMLVM_RED_CLASS_DEPENDENCY();
 
718
 
 
719
    
 
720
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
721
    XMLVM_RED_CLASS_DEPENDENCY();
 
722
    XMLVM_THROW_CUSTOM(_r4.o)
 
723
    //XMLVM_END_WRAPPER
 
724
}
 
725
 
 
726
void java_lang_String___INIT____byte_1ARRAY_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2)
 
727
{
 
728
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____byte_1ARRAY_java_lang_String]
 
729
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
730
    XMLVMElem _r0;
 
731
    XMLVMElem _r1;
 
732
    XMLVMElem _r2;
 
733
    XMLVMElem _r3;
 
734
    XMLVMElem _r4;
 
735
    _r2.o = me;
 
736
    _r3.o = n1;
 
737
    _r4.o = n2;
 
738
    XMLVM_SOURCE_POSITION("String.java", 353)
 
739
    _r0.i = 0;
 
740
    _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o));
 
741
    XMLVM_CHECK_NPE(2)
 
742
    java_lang_String___INIT____byte_1ARRAY_int_int_java_lang_String(_r2.o, _r3.o, _r0.i, _r1.i, _r4.o);
 
743
    XMLVM_SOURCE_POSITION("String.java", 354)
 
744
    XMLVM_EXIT_METHOD()
 
745
    return;
 
746
    //XMLVM_END_WRAPPER
 
747
}
 
748
 
 
749
void java_lang_String___INIT____char_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1)
 
750
{
 
751
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____char_1ARRAY]
 
752
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
753
    XMLVMElem _r0;
 
754
    XMLVMElem _r1;
 
755
    XMLVMElem _r2;
 
756
    XMLVMElem _r3;
 
757
    _r2.o = me;
 
758
    _r3.o = n1;
 
759
    XMLVM_SOURCE_POSITION("String.java", 367)
 
760
    _r0.i = 0;
 
761
    _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o));
 
762
    XMLVM_CHECK_NPE(2)
 
763
    java_lang_String___INIT____char_1ARRAY_int_int(_r2.o, _r3.o, _r0.i, _r1.i);
 
764
    XMLVM_SOURCE_POSITION("String.java", 368)
 
765
    XMLVM_EXIT_METHOD()
 
766
    return;
 
767
    //XMLVM_END_WRAPPER
 
768
}
 
769
 
 
770
void java_lang_String___INIT____char_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3)
 
771
{
 
772
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____char_1ARRAY_int_int]
 
773
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
774
    XMLVMElem _r0;
 
775
    XMLVMElem _r1;
 
776
    XMLVMElem _r2;
 
777
    XMLVMElem _r3;
 
778
    XMLVMElem _r4;
 
779
    XMLVMElem _r5;
 
780
    XMLVMElem _r6;
 
781
    _r3.o = me;
 
782
    _r4.o = n1;
 
783
    _r5.i = n2;
 
784
    _r6.i = n3;
 
785
    _r2.i = 0;
 
786
    _r0.o = JAVA_NULL;
 
787
    XMLVM_SOURCE_POSITION("String.java", 387)
 
788
    XMLVM_CHECK_NPE(3)
 
789
    java_lang_Object___INIT___(_r3.o);
 
790
    XMLVM_SOURCE_POSITION("String.java", 58)
 
791
    XMLVM_CHECK_NPE(3)
 
792
    ((java_lang_String*) _r3.o)->fields.java_lang_String.charset_ = _r0.o;
 
793
    XMLVM_SOURCE_POSITION("String.java", 59)
 
794
    XMLVM_CHECK_NPE(3)
 
795
    ((java_lang_String*) _r3.o)->fields.java_lang_String.charset2_ = _r0.o;
 
796
    XMLVM_SOURCE_POSITION("String.java", 60)
 
797
    XMLVM_CHECK_NPE(3)
 
798
    ((java_lang_String*) _r3.o)->fields.java_lang_String.charset3_ = _r0.o;
 
799
    XMLVM_SOURCE_POSITION("String.java", 390)
 
800
    if (_r5.i < 0) goto label35;
 
801
    if (_r6.i < 0) goto label35;
 
802
    _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o));
 
803
    _r0.i = _r0.i - _r5.i;
 
804
    if (_r6.i > _r0.i) goto label35;
 
805
    XMLVM_SOURCE_POSITION("String.java", 391)
 
806
    XMLVM_CHECK_NPE(3)
 
807
    ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_ = _r2.i;
 
808
    XMLVM_SOURCE_POSITION("String.java", 392)
 
809
    XMLVM_CLASS_INIT(char)
 
810
    _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r6.i);
 
811
    XMLVM_CHECK_NPE(3)
 
812
    ((java_lang_String*) _r3.o)->fields.java_lang_String.value_ = _r0.o;
 
813
    XMLVM_SOURCE_POSITION("String.java", 393)
 
814
    XMLVM_CHECK_NPE(3)
 
815
    ((java_lang_String*) _r3.o)->fields.java_lang_String.count_ = _r6.i;
 
816
    XMLVM_SOURCE_POSITION("String.java", 394)
 
817
    XMLVM_CHECK_NPE(3)
 
818
    _r0.o = ((java_lang_String*) _r3.o)->fields.java_lang_String.value_;
 
819
    XMLVM_CHECK_NPE(3)
 
820
    _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_;
 
821
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r4.o, _r5.i, _r0.o, _r2.i, _r1.i);
 
822
    XMLVM_SOURCE_POSITION("String.java", 398)
 
823
    XMLVM_EXIT_METHOD()
 
824
    return;
 
825
    label35:;
 
826
    XMLVM_SOURCE_POSITION("String.java", 396)
 
827
 
 
828
    
 
829
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
830
    XMLVM_RED_CLASS_DEPENDENCY();
 
831
 
 
832
    
 
833
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
834
    XMLVM_RED_CLASS_DEPENDENCY();
 
835
    XMLVM_THROW_CUSTOM(_r0.o)
 
836
    //XMLVM_END_WRAPPER
 
837
}
 
838
 
 
839
void java_lang_String___INIT____int_int_char_1ARRAY(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2, JAVA_OBJECT n3)
 
840
{
 
841
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____int_int_char_1ARRAY]
 
842
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
843
    XMLVMElem _r0;
 
844
    XMLVMElem _r1;
 
845
    XMLVMElem _r2;
 
846
    XMLVMElem _r3;
 
847
    XMLVMElem _r4;
 
848
    _r1.o = me;
 
849
    _r2.i = n1;
 
850
    _r3.i = n2;
 
851
    _r4.o = n3;
 
852
    _r0.o = JAVA_NULL;
 
853
    XMLVM_SOURCE_POSITION("String.java", 404)
 
854
    XMLVM_CHECK_NPE(1)
 
855
    java_lang_Object___INIT___(_r1.o);
 
856
    XMLVM_SOURCE_POSITION("String.java", 58)
 
857
    XMLVM_CHECK_NPE(1)
 
858
    ((java_lang_String*) _r1.o)->fields.java_lang_String.charset_ = _r0.o;
 
859
    XMLVM_SOURCE_POSITION("String.java", 59)
 
860
    XMLVM_CHECK_NPE(1)
 
861
    ((java_lang_String*) _r1.o)->fields.java_lang_String.charset2_ = _r0.o;
 
862
    XMLVM_SOURCE_POSITION("String.java", 60)
 
863
    XMLVM_CHECK_NPE(1)
 
864
    ((java_lang_String*) _r1.o)->fields.java_lang_String.charset3_ = _r0.o;
 
865
    XMLVM_SOURCE_POSITION("String.java", 405)
 
866
    XMLVM_CHECK_NPE(1)
 
867
    ((java_lang_String*) _r1.o)->fields.java_lang_String.value_ = _r4.o;
 
868
    XMLVM_SOURCE_POSITION("String.java", 406)
 
869
    XMLVM_CHECK_NPE(1)
 
870
    ((java_lang_String*) _r1.o)->fields.java_lang_String.offset_ = _r2.i;
 
871
    XMLVM_SOURCE_POSITION("String.java", 407)
 
872
    XMLVM_CHECK_NPE(1)
 
873
    ((java_lang_String*) _r1.o)->fields.java_lang_String.count_ = _r3.i;
 
874
    XMLVM_SOURCE_POSITION("String.java", 408)
 
875
    XMLVM_EXIT_METHOD()
 
876
    return;
 
877
    //XMLVM_END_WRAPPER
 
878
}
 
879
 
 
880
void java_lang_String___INIT____char_1ARRAY_int_int_boolean(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3, JAVA_BOOLEAN n4)
 
881
{
 
882
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____char_1ARRAY_int_int_boolean]
 
883
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
884
    XMLVMElem _r0;
 
885
    XMLVMElem _r1;
 
886
    XMLVMElem _r2;
 
887
    XMLVMElem _r3;
 
888
    XMLVMElem _r4;
 
889
    XMLVMElem _r5;
 
890
    XMLVMElem _r6;
 
891
    XMLVMElem _r7;
 
892
    _r3.o = me;
 
893
    _r4.o = n1;
 
894
    _r5.i = n2;
 
895
    _r6.i = n3;
 
896
    _r7.i = n4;
 
897
    _r1.i = 0;
 
898
    _r0.o = JAVA_NULL;
 
899
    XMLVM_SOURCE_POSITION("String.java", 417)
 
900
    XMLVM_CHECK_NPE(3)
 
901
    java_lang_Object___INIT___(_r3.o);
 
902
    XMLVM_SOURCE_POSITION("String.java", 58)
 
903
    XMLVM_CHECK_NPE(3)
 
904
    ((java_lang_String*) _r3.o)->fields.java_lang_String.charset_ = _r0.o;
 
905
    XMLVM_SOURCE_POSITION("String.java", 59)
 
906
    XMLVM_CHECK_NPE(3)
 
907
    ((java_lang_String*) _r3.o)->fields.java_lang_String.charset2_ = _r0.o;
 
908
    XMLVM_SOURCE_POSITION("String.java", 60)
 
909
    XMLVM_CHECK_NPE(3)
 
910
    ((java_lang_String*) _r3.o)->fields.java_lang_String.charset3_ = _r0.o;
 
911
    XMLVM_SOURCE_POSITION("String.java", 418)
 
912
    if (_r5.i >= 0) goto label38;
 
913
    XMLVM_SOURCE_POSITION("String.java", 419)
 
914
 
 
915
    
 
916
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
917
    XMLVM_RED_CLASS_DEPENDENCY();
 
918
    _r1.o = __NEW_java_lang_StringBuilder();
 
919
    XMLVM_CHECK_NPE(1)
 
920
    java_lang_StringBuilder___INIT___(_r1.o);
 
921
    // "offset: "
 
922
    _r2.o = xmlvm_create_java_string_from_pool(171);
 
923
    XMLVM_CHECK_NPE(1)
 
924
    _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o);
 
925
    XMLVM_CHECK_NPE(1)
 
926
    _r1.o = java_lang_StringBuilder_append___int(_r1.o, _r5.i);
 
927
    //java_lang_StringBuilder_toString__[5]
 
928
    XMLVM_CHECK_NPE(1)
 
929
    _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o);
 
930
 
 
931
    
 
932
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
933
    XMLVM_RED_CLASS_DEPENDENCY();
 
934
    XMLVM_THROW_CUSTOM(_r0.o)
 
935
    label38:;
 
936
    XMLVM_SOURCE_POSITION("String.java", 420)
 
937
    if (_r6.i >= 0) goto label65;
 
938
    XMLVM_SOURCE_POSITION("String.java", 421)
 
939
 
 
940
    
 
941
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
942
    XMLVM_RED_CLASS_DEPENDENCY();
 
943
    _r1.o = __NEW_java_lang_StringBuilder();
 
944
    XMLVM_CHECK_NPE(1)
 
945
    java_lang_StringBuilder___INIT___(_r1.o);
 
946
    // "count: "
 
947
    _r2.o = xmlvm_create_java_string_from_pool(172);
 
948
    XMLVM_CHECK_NPE(1)
 
949
    _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o);
 
950
    XMLVM_CHECK_NPE(1)
 
951
    _r1.o = java_lang_StringBuilder_append___int(_r1.o, _r6.i);
 
952
    //java_lang_StringBuilder_toString__[5]
 
953
    XMLVM_CHECK_NPE(1)
 
954
    _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o);
 
955
 
 
956
    
 
957
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
958
    XMLVM_RED_CLASS_DEPENDENCY();
 
959
    XMLVM_THROW_CUSTOM(_r0.o)
 
960
    label65:;
 
961
    XMLVM_SOURCE_POSITION("String.java", 423)
 
962
    _r0.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r4.o));
 
963
    _r0.i = _r0.i - _r5.i;
 
964
    if (_r0.i >= _r6.i) goto label96;
 
965
    XMLVM_SOURCE_POSITION("String.java", 424)
 
966
 
 
967
    
 
968
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
969
    XMLVM_RED_CLASS_DEPENDENCY();
 
970
    _r1.o = __NEW_java_lang_StringBuilder();
 
971
    XMLVM_CHECK_NPE(1)
 
972
    java_lang_StringBuilder___INIT___(_r1.o);
 
973
    // "offset + count: "
 
974
    _r2.o = xmlvm_create_java_string_from_pool(173);
 
975
    XMLVM_CHECK_NPE(1)
 
976
    _r1.o = java_lang_StringBuilder_append___java_lang_String(_r1.o, _r2.o);
 
977
    _r2.i = _r5.i + _r6.i;
 
978
    XMLVM_CHECK_NPE(1)
 
979
    _r1.o = java_lang_StringBuilder_append___int(_r1.o, _r2.i);
 
980
    //java_lang_StringBuilder_toString__[5]
 
981
    XMLVM_CHECK_NPE(1)
 
982
    _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r1.o)->tib->vtable[5])(_r1.o);
 
983
 
 
984
    
 
985
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
986
    XMLVM_RED_CLASS_DEPENDENCY();
 
987
    XMLVM_THROW_CUSTOM(_r0.o)
 
988
    label96:;
 
989
    XMLVM_SOURCE_POSITION("String.java", 426)
 
990
    if (_r7.i == 0) goto label105;
 
991
    XMLVM_SOURCE_POSITION("String.java", 428)
 
992
    XMLVM_CHECK_NPE(3)
 
993
    ((java_lang_String*) _r3.o)->fields.java_lang_String.value_ = _r4.o;
 
994
    XMLVM_SOURCE_POSITION("String.java", 429)
 
995
    XMLVM_CHECK_NPE(3)
 
996
    ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_ = _r5.i;
 
997
    label102:;
 
998
    XMLVM_SOURCE_POSITION("String.java", 437)
 
999
    XMLVM_CHECK_NPE(3)
 
1000
    ((java_lang_String*) _r3.o)->fields.java_lang_String.count_ = _r6.i;
 
1001
    XMLVM_SOURCE_POSITION("String.java", 438)
 
1002
    XMLVM_EXIT_METHOD()
 
1003
    return;
 
1004
    label105:;
 
1005
    XMLVM_SOURCE_POSITION("String.java", 433)
 
1006
    XMLVM_CLASS_INIT(char)
 
1007
    _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r6.i);
 
1008
    XMLVM_CHECK_NPE(3)
 
1009
    ((java_lang_String*) _r3.o)->fields.java_lang_String.value_ = _r0.o;
 
1010
    XMLVM_SOURCE_POSITION("String.java", 434)
 
1011
    XMLVM_CHECK_NPE(3)
 
1012
    _r0.o = ((java_lang_String*) _r3.o)->fields.java_lang_String.value_;
 
1013
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r4.o, _r5.i, _r0.o, _r1.i, _r6.i);
 
1014
    XMLVM_SOURCE_POSITION("String.java", 435)
 
1015
    XMLVM_CHECK_NPE(3)
 
1016
    ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_ = _r1.i;
 
1017
    goto label102;
 
1018
    //XMLVM_END_WRAPPER
 
1019
}
 
1020
 
 
1021
void java_lang_String___INIT____java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
1022
{
 
1023
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_String]
 
1024
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
1025
    XMLVMElem _r0;
 
1026
    XMLVMElem _r1;
 
1027
    XMLVMElem _r2;
 
1028
    _r1.o = me;
 
1029
    _r2.o = n1;
 
1030
    _r0.o = JAVA_NULL;
 
1031
    XMLVM_SOURCE_POSITION("String.java", 446)
 
1032
    XMLVM_CHECK_NPE(1)
 
1033
    java_lang_Object___INIT___(_r1.o);
 
1034
    XMLVM_SOURCE_POSITION("String.java", 58)
 
1035
    XMLVM_CHECK_NPE(1)
 
1036
    ((java_lang_String*) _r1.o)->fields.java_lang_String.charset_ = _r0.o;
 
1037
    XMLVM_SOURCE_POSITION("String.java", 59)
 
1038
    XMLVM_CHECK_NPE(1)
 
1039
    ((java_lang_String*) _r1.o)->fields.java_lang_String.charset2_ = _r0.o;
 
1040
    XMLVM_SOURCE_POSITION("String.java", 60)
 
1041
    XMLVM_CHECK_NPE(1)
 
1042
    ((java_lang_String*) _r1.o)->fields.java_lang_String.charset3_ = _r0.o;
 
1043
    XMLVM_SOURCE_POSITION("String.java", 447)
 
1044
    XMLVM_CHECK_NPE(2)
 
1045
    _r0.o = ((java_lang_String*) _r2.o)->fields.java_lang_String.value_;
 
1046
    XMLVM_CHECK_NPE(1)
 
1047
    ((java_lang_String*) _r1.o)->fields.java_lang_String.value_ = _r0.o;
 
1048
    XMLVM_SOURCE_POSITION("String.java", 448)
 
1049
    XMLVM_CHECK_NPE(2)
 
1050
    _r0.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.offset_;
 
1051
    XMLVM_CHECK_NPE(1)
 
1052
    ((java_lang_String*) _r1.o)->fields.java_lang_String.offset_ = _r0.i;
 
1053
    XMLVM_SOURCE_POSITION("String.java", 449)
 
1054
    XMLVM_CHECK_NPE(2)
 
1055
    _r0.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.count_;
 
1056
    XMLVM_CHECK_NPE(1)
 
1057
    ((java_lang_String*) _r1.o)->fields.java_lang_String.count_ = _r0.i;
 
1058
    XMLVM_SOURCE_POSITION("String.java", 450)
 
1059
    XMLVM_EXIT_METHOD()
 
1060
    return;
 
1061
    //XMLVM_END_WRAPPER
 
1062
}
 
1063
 
 
1064
void java_lang_String___INIT____java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2)
 
1065
{
 
1066
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_String_java_lang_String]
 
1067
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
1068
    XMLVMElem _r0;
 
1069
    XMLVMElem _r1;
 
1070
    XMLVMElem _r2;
 
1071
    XMLVMElem _r3;
 
1072
    XMLVMElem _r4;
 
1073
    XMLVMElem _r5;
 
1074
    XMLVMElem _r6;
 
1075
    XMLVMElem _r7;
 
1076
    _r5.o = me;
 
1077
    _r6.o = n1;
 
1078
    _r7.o = n2;
 
1079
    _r4.i = 0;
 
1080
    _r0.o = JAVA_NULL;
 
1081
    XMLVM_SOURCE_POSITION("String.java", 456)
 
1082
    XMLVM_CHECK_NPE(5)
 
1083
    java_lang_Object___INIT___(_r5.o);
 
1084
    XMLVM_SOURCE_POSITION("String.java", 58)
 
1085
    XMLVM_CHECK_NPE(5)
 
1086
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset_ = _r0.o;
 
1087
    XMLVM_SOURCE_POSITION("String.java", 59)
 
1088
    XMLVM_CHECK_NPE(5)
 
1089
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset2_ = _r0.o;
 
1090
    XMLVM_SOURCE_POSITION("String.java", 60)
 
1091
    XMLVM_CHECK_NPE(5)
 
1092
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset3_ = _r0.o;
 
1093
    XMLVM_SOURCE_POSITION("String.java", 457)
 
1094
    if (_r6.o != JAVA_NULL) goto label15;
 
1095
    XMLVM_SOURCE_POSITION("String.java", 458)
 
1096
    // "null"
 
1097
    _r6.o = xmlvm_create_java_string_from_pool(63);
 
1098
    label15:;
 
1099
    XMLVM_SOURCE_POSITION("String.java", 460)
 
1100
    if (_r7.o != JAVA_NULL) goto label19;
 
1101
    XMLVM_SOURCE_POSITION("String.java", 461)
 
1102
    // "null"
 
1103
    _r7.o = xmlvm_create_java_string_from_pool(63);
 
1104
    label19:;
 
1105
    XMLVM_SOURCE_POSITION("String.java", 463)
 
1106
    XMLVM_CHECK_NPE(6)
 
1107
    _r0.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
1108
    XMLVM_CHECK_NPE(7)
 
1109
    _r1.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_;
 
1110
    _r0.i = _r0.i + _r1.i;
 
1111
    XMLVM_CHECK_NPE(5)
 
1112
    ((java_lang_String*) _r5.o)->fields.java_lang_String.count_ = _r0.i;
 
1113
    XMLVM_SOURCE_POSITION("String.java", 464)
 
1114
    XMLVM_CHECK_NPE(5)
 
1115
    _r0.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_;
 
1116
    XMLVM_CLASS_INIT(char)
 
1117
    _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i);
 
1118
    XMLVM_CHECK_NPE(5)
 
1119
    ((java_lang_String*) _r5.o)->fields.java_lang_String.value_ = _r0.o;
 
1120
    XMLVM_SOURCE_POSITION("String.java", 465)
 
1121
    XMLVM_CHECK_NPE(5)
 
1122
    ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_ = _r4.i;
 
1123
    XMLVM_SOURCE_POSITION("String.java", 466)
 
1124
    XMLVM_CHECK_NPE(6)
 
1125
    _r0.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_;
 
1126
    XMLVM_CHECK_NPE(6)
 
1127
    _r1.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_;
 
1128
    XMLVM_CHECK_NPE(5)
 
1129
    _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
1130
    XMLVM_CHECK_NPE(6)
 
1131
    _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
1132
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r4.i, _r3.i);
 
1133
    XMLVM_SOURCE_POSITION("String.java", 467)
 
1134
    XMLVM_CHECK_NPE(7)
 
1135
    _r0.o = ((java_lang_String*) _r7.o)->fields.java_lang_String.value_;
 
1136
    XMLVM_CHECK_NPE(7)
 
1137
    _r1.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.offset_;
 
1138
    XMLVM_CHECK_NPE(5)
 
1139
    _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
1140
    XMLVM_CHECK_NPE(6)
 
1141
    _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
1142
    XMLVM_CHECK_NPE(7)
 
1143
    _r4.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_;
 
1144
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r3.i, _r4.i);
 
1145
    XMLVM_SOURCE_POSITION("String.java", 468)
 
1146
    XMLVM_EXIT_METHOD()
 
1147
    return;
 
1148
    //XMLVM_END_WRAPPER
 
1149
}
 
1150
 
 
1151
void java_lang_String___INIT____java_lang_String_java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3)
 
1152
{
 
1153
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_String_java_lang_String_java_lang_String]
 
1154
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
1155
    XMLVMElem _r0;
 
1156
    XMLVMElem _r1;
 
1157
    XMLVMElem _r2;
 
1158
    XMLVMElem _r3;
 
1159
    XMLVMElem _r4;
 
1160
    XMLVMElem _r5;
 
1161
    XMLVMElem _r6;
 
1162
    XMLVMElem _r7;
 
1163
    XMLVMElem _r8;
 
1164
    _r5.o = me;
 
1165
    _r6.o = n1;
 
1166
    _r7.o = n2;
 
1167
    _r8.o = n3;
 
1168
    _r4.i = 0;
 
1169
    _r0.o = JAVA_NULL;
 
1170
    XMLVM_SOURCE_POSITION("String.java", 474)
 
1171
    XMLVM_CHECK_NPE(5)
 
1172
    java_lang_Object___INIT___(_r5.o);
 
1173
    XMLVM_SOURCE_POSITION("String.java", 58)
 
1174
    XMLVM_CHECK_NPE(5)
 
1175
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset_ = _r0.o;
 
1176
    XMLVM_SOURCE_POSITION("String.java", 59)
 
1177
    XMLVM_CHECK_NPE(5)
 
1178
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset2_ = _r0.o;
 
1179
    XMLVM_SOURCE_POSITION("String.java", 60)
 
1180
    XMLVM_CHECK_NPE(5)
 
1181
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset3_ = _r0.o;
 
1182
    XMLVM_SOURCE_POSITION("String.java", 475)
 
1183
    if (_r6.o != JAVA_NULL) goto label15;
 
1184
    XMLVM_SOURCE_POSITION("String.java", 476)
 
1185
    // "null"
 
1186
    _r6.o = xmlvm_create_java_string_from_pool(63);
 
1187
    label15:;
 
1188
    XMLVM_SOURCE_POSITION("String.java", 478)
 
1189
    if (_r7.o != JAVA_NULL) goto label19;
 
1190
    XMLVM_SOURCE_POSITION("String.java", 479)
 
1191
    // "null"
 
1192
    _r7.o = xmlvm_create_java_string_from_pool(63);
 
1193
    label19:;
 
1194
    XMLVM_SOURCE_POSITION("String.java", 481)
 
1195
    if (_r8.o != JAVA_NULL) goto label23;
 
1196
    XMLVM_SOURCE_POSITION("String.java", 482)
 
1197
    // "null"
 
1198
    _r8.o = xmlvm_create_java_string_from_pool(63);
 
1199
    label23:;
 
1200
    XMLVM_SOURCE_POSITION("String.java", 484)
 
1201
    XMLVM_CHECK_NPE(6)
 
1202
    _r0.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
1203
    XMLVM_CHECK_NPE(7)
 
1204
    _r1.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_;
 
1205
    _r0.i = _r0.i + _r1.i;
 
1206
    XMLVM_CHECK_NPE(8)
 
1207
    _r1.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_;
 
1208
    _r0.i = _r0.i + _r1.i;
 
1209
    XMLVM_CHECK_NPE(5)
 
1210
    ((java_lang_String*) _r5.o)->fields.java_lang_String.count_ = _r0.i;
 
1211
    XMLVM_SOURCE_POSITION("String.java", 485)
 
1212
    XMLVM_CHECK_NPE(5)
 
1213
    _r0.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_;
 
1214
    XMLVM_CLASS_INIT(char)
 
1215
    _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i);
 
1216
    XMLVM_CHECK_NPE(5)
 
1217
    ((java_lang_String*) _r5.o)->fields.java_lang_String.value_ = _r0.o;
 
1218
    XMLVM_SOURCE_POSITION("String.java", 486)
 
1219
    XMLVM_CHECK_NPE(5)
 
1220
    ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_ = _r4.i;
 
1221
    XMLVM_SOURCE_POSITION("String.java", 487)
 
1222
    XMLVM_CHECK_NPE(6)
 
1223
    _r0.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_;
 
1224
    XMLVM_CHECK_NPE(6)
 
1225
    _r1.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_;
 
1226
    XMLVM_CHECK_NPE(5)
 
1227
    _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
1228
    XMLVM_CHECK_NPE(6)
 
1229
    _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
1230
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r4.i, _r3.i);
 
1231
    XMLVM_SOURCE_POSITION("String.java", 488)
 
1232
    XMLVM_CHECK_NPE(7)
 
1233
    _r0.o = ((java_lang_String*) _r7.o)->fields.java_lang_String.value_;
 
1234
    XMLVM_CHECK_NPE(7)
 
1235
    _r1.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.offset_;
 
1236
    XMLVM_CHECK_NPE(5)
 
1237
    _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
1238
    XMLVM_CHECK_NPE(6)
 
1239
    _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
1240
    XMLVM_CHECK_NPE(7)
 
1241
    _r4.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_;
 
1242
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r3.i, _r4.i);
 
1243
    XMLVM_SOURCE_POSITION("String.java", 489)
 
1244
    XMLVM_CHECK_NPE(8)
 
1245
    _r0.o = ((java_lang_String*) _r8.o)->fields.java_lang_String.value_;
 
1246
    XMLVM_CHECK_NPE(8)
 
1247
    _r1.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.offset_;
 
1248
    XMLVM_CHECK_NPE(5)
 
1249
    _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
1250
    XMLVM_CHECK_NPE(6)
 
1251
    _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
1252
    XMLVM_CHECK_NPE(7)
 
1253
    _r4.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_;
 
1254
    _r3.i = _r3.i + _r4.i;
 
1255
    XMLVM_CHECK_NPE(8)
 
1256
    _r4.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_;
 
1257
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r2.o, _r3.i, _r4.i);
 
1258
    XMLVM_SOURCE_POSITION("String.java", 491)
 
1259
    XMLVM_EXIT_METHOD()
 
1260
    return;
 
1261
    //XMLVM_END_WRAPPER
 
1262
}
 
1263
 
 
1264
void java_lang_String___INIT____java_lang_StringBuffer(JAVA_OBJECT me, JAVA_OBJECT n1)
 
1265
{
 
1266
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_StringBuffer]
 
1267
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
1268
    volatile XMLVMElem _r0;
 
1269
    volatile XMLVMElem _r1;
 
1270
    volatile XMLVMElem _r2;
 
1271
    _r1.o = me;
 
1272
    _r2.o = n1;
 
1273
    _r0.o = JAVA_NULL;
 
1274
    XMLVM_SOURCE_POSITION("String.java", 500)
 
1275
    XMLVM_CHECK_NPE(1)
 
1276
    java_lang_Object___INIT___(_r1.o);
 
1277
    XMLVM_SOURCE_POSITION("String.java", 58)
 
1278
    XMLVM_CHECK_NPE(1)
 
1279
    ((java_lang_String*) _r1.o)->fields.java_lang_String.charset_ = _r0.o;
 
1280
    XMLVM_SOURCE_POSITION("String.java", 59)
 
1281
    XMLVM_CHECK_NPE(1)
 
1282
    ((java_lang_String*) _r1.o)->fields.java_lang_String.charset2_ = _r0.o;
 
1283
    XMLVM_SOURCE_POSITION("String.java", 60)
 
1284
    XMLVM_CHECK_NPE(1)
 
1285
    ((java_lang_String*) _r1.o)->fields.java_lang_String.charset3_ = _r0.o;
 
1286
    XMLVM_SOURCE_POSITION("String.java", 501)
 
1287
    _r0.i = 0;
 
1288
    XMLVM_CHECK_NPE(1)
 
1289
    ((java_lang_String*) _r1.o)->fields.java_lang_String.offset_ = _r0.i;
 
1290
    XMLVM_SOURCE_POSITION("String.java", 502)
 
1291
    java_lang_Object_acquireLockRecursive__(_r2.o);
 
1292
    XMLVM_TRY_BEGIN(w3113aaac27b1c17)
 
1293
    // Begin try
 
1294
    XMLVM_SOURCE_POSITION("String.java", 503)
 
1295
 
 
1296
    
 
1297
    // Red class access removed: java.lang.StringBuffer::getValue
 
1298
    XMLVM_RED_CLASS_DEPENDENCY();
 
1299
    XMLVM_CHECK_NPE(1)
 
1300
    ((java_lang_String*) _r1.o)->fields.java_lang_String.value_ = _r0.o;
 
1301
    XMLVM_SOURCE_POSITION("String.java", 504)
 
1302
 
 
1303
    
 
1304
    // Red class access removed: java.lang.StringBuffer::length
 
1305
    XMLVM_RED_CLASS_DEPENDENCY();
 
1306
    XMLVM_CHECK_NPE(1)
 
1307
    ((java_lang_String*) _r1.o)->fields.java_lang_String.count_ = _r0.i;
 
1308
    XMLVM_SOURCE_POSITION("String.java", 505)
 
1309
    java_lang_Object_releaseLockRecursive__(_r2.o);
 
1310
    XMLVM_SOURCE_POSITION("String.java", 506)
 
1311
    XMLVM_MEMCPY(curThread_w3113aaac27b1c17->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3113aaac27b1c17, sizeof(XMLVM_JMP_BUF));
 
1312
    XMLVM_EXIT_METHOD()
 
1313
    return;
 
1314
    // End try
 
1315
    XMLVM_TRY_END
 
1316
    XMLVM_CATCH_BEGIN(w3113aaac27b1c17)
 
1317
        XMLVM_CATCH_SPECIFIC(w3113aaac27b1c17,java_lang_Object,28)
 
1318
    XMLVM_CATCH_END(w3113aaac27b1c17)
 
1319
    XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac27b1c17)
 
1320
    label28:;
 
1321
    XMLVM_TRY_BEGIN(w3113aaac27b1c19)
 
1322
    // Begin try
 
1323
    java_lang_Thread* curThread_w3113aaac27b1c19aa = (java_lang_Thread*)java_lang_Thread_currentThread__();
 
1324
    _r0.o = curThread_w3113aaac27b1c19aa->fields.java_lang_Thread.xmlvmException_;
 
1325
    java_lang_Object_releaseLockRecursive__(_r2.o);
 
1326
    // End try
 
1327
    XMLVM_TRY_END
 
1328
    XMLVM_CATCH_BEGIN(w3113aaac27b1c19)
 
1329
        XMLVM_CATCH_SPECIFIC(w3113aaac27b1c19,java_lang_Object,28)
 
1330
    XMLVM_CATCH_END(w3113aaac27b1c19)
 
1331
    XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac27b1c19)
 
1332
    XMLVM_THROW_CUSTOM(_r0.o)
 
1333
    //XMLVM_END_WRAPPER
 
1334
}
 
1335
 
 
1336
void java_lang_String___INIT____int_1ARRAY_int_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3)
 
1337
{
 
1338
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____int_1ARRAY_int_int]
 
1339
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
1340
    XMLVMElem _r0;
 
1341
    XMLVMElem _r1;
 
1342
    XMLVMElem _r2;
 
1343
    XMLVMElem _r3;
 
1344
    XMLVMElem _r4;
 
1345
    XMLVMElem _r5;
 
1346
    XMLVMElem _r6;
 
1347
    XMLVMElem _r7;
 
1348
    XMLVMElem _r8;
 
1349
    _r5.o = me;
 
1350
    _r6.o = n1;
 
1351
    _r7.i = n2;
 
1352
    _r8.i = n3;
 
1353
    _r3.o = JAVA_NULL;
 
1354
    XMLVM_SOURCE_POSITION("String.java", 529)
 
1355
    XMLVM_CHECK_NPE(5)
 
1356
    java_lang_Object___INIT___(_r5.o);
 
1357
    XMLVM_SOURCE_POSITION("String.java", 58)
 
1358
    XMLVM_CHECK_NPE(5)
 
1359
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset_ = _r3.o;
 
1360
    XMLVM_SOURCE_POSITION("String.java", 59)
 
1361
    XMLVM_CHECK_NPE(5)
 
1362
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset2_ = _r3.o;
 
1363
    XMLVM_SOURCE_POSITION("String.java", 60)
 
1364
    XMLVM_CHECK_NPE(5)
 
1365
    ((java_lang_String*) _r5.o)->fields.java_lang_String.charset3_ = _r3.o;
 
1366
    XMLVM_SOURCE_POSITION("String.java", 530)
 
1367
    if (_r7.i < 0) goto label18;
 
1368
    if (_r8.i < 0) goto label18;
 
1369
    _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o));
 
1370
    _r3.i = _r3.i - _r8.i;
 
1371
    if (_r7.i <= _r3.i) goto label24;
 
1372
    label18:;
 
1373
    XMLVM_SOURCE_POSITION("String.java", 531)
 
1374
    _r3.o = __NEW_java_lang_IndexOutOfBoundsException();
 
1375
    XMLVM_CHECK_NPE(3)
 
1376
    java_lang_IndexOutOfBoundsException___INIT___(_r3.o);
 
1377
    XMLVM_THROW_CUSTOM(_r3.o)
 
1378
    label24:;
 
1379
    XMLVM_SOURCE_POSITION("String.java", 533)
 
1380
    _r3.i = 0;
 
1381
    XMLVM_CHECK_NPE(5)
 
1382
    ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_ = _r3.i;
 
1383
    XMLVM_SOURCE_POSITION("String.java", 534)
 
1384
    _r3.i = _r8.i * 2;
 
1385
    XMLVM_CLASS_INIT(char)
 
1386
    _r3.o = XMLVMArray_createSingleDimension(__CLASS_char, _r3.i);
 
1387
    XMLVM_CHECK_NPE(5)
 
1388
    ((java_lang_String*) _r5.o)->fields.java_lang_String.value_ = _r3.o;
 
1389
    XMLVM_SOURCE_POSITION("String.java", 535)
 
1390
    _r1.i = _r7.i + _r8.i;
 
1391
    _r0.i = 0;
 
1392
    _r2 = _r7;
 
1393
    label37:;
 
1394
    XMLVM_SOURCE_POSITION("String.java", 537)
 
1395
    if (_r2.i >= _r1.i) goto label51;
 
1396
    XMLVM_SOURCE_POSITION("String.java", 538)
 
1397
    XMLVM_CHECK_NPE(6)
 
1398
    XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r2.i);
 
1399
    _r3.i = ((JAVA_ARRAY_INT*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i];
 
1400
    XMLVM_CHECK_NPE(5)
 
1401
    _r4.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
1402
    _r3.i = java_lang_Character_toChars___int_char_1ARRAY_int(_r3.i, _r4.o, _r0.i);
 
1403
    _r0.i = _r0.i + _r3.i;
 
1404
    _r2.i = _r2.i + 1;
 
1405
    goto label37;
 
1406
    label51:;
 
1407
    XMLVM_SOURCE_POSITION("String.java", 540)
 
1408
    XMLVM_CHECK_NPE(5)
 
1409
    ((java_lang_String*) _r5.o)->fields.java_lang_String.count_ = _r0.i;
 
1410
    XMLVM_SOURCE_POSITION("String.java", 541)
 
1411
    XMLVM_EXIT_METHOD()
 
1412
    return;
 
1413
    //XMLVM_END_WRAPPER
 
1414
}
 
1415
 
 
1416
void java_lang_String___INIT____java_lang_StringBuilder(JAVA_OBJECT me, JAVA_OBJECT n1)
 
1417
{
 
1418
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_StringBuilder]
 
1419
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
1420
    XMLVMElem _r0;
 
1421
    XMLVMElem _r1;
 
1422
    XMLVMElem _r2;
 
1423
    XMLVMElem _r3;
 
1424
    XMLVMElem _r4;
 
1425
    _r3.o = me;
 
1426
    _r4.o = n1;
 
1427
    _r0.o = JAVA_NULL;
 
1428
    _r2.i = 0;
 
1429
    XMLVM_SOURCE_POSITION("String.java", 553)
 
1430
    XMLVM_CHECK_NPE(3)
 
1431
    java_lang_Object___INIT___(_r3.o);
 
1432
    XMLVM_SOURCE_POSITION("String.java", 58)
 
1433
    XMLVM_CHECK_NPE(3)
 
1434
    ((java_lang_String*) _r3.o)->fields.java_lang_String.charset_ = _r0.o;
 
1435
    XMLVM_SOURCE_POSITION("String.java", 59)
 
1436
    XMLVM_CHECK_NPE(3)
 
1437
    ((java_lang_String*) _r3.o)->fields.java_lang_String.charset2_ = _r0.o;
 
1438
    XMLVM_SOURCE_POSITION("String.java", 60)
 
1439
    XMLVM_CHECK_NPE(3)
 
1440
    ((java_lang_String*) _r3.o)->fields.java_lang_String.charset3_ = _r0.o;
 
1441
    XMLVM_SOURCE_POSITION("String.java", 554)
 
1442
    XMLVM_CHECK_NPE(3)
 
1443
    ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_ = _r2.i;
 
1444
    XMLVM_SOURCE_POSITION("String.java", 555)
 
1445
    XMLVM_CHECK_NPE(4)
 
1446
    _r0.i = java_lang_AbstractStringBuilder_length__(_r4.o);
 
1447
    XMLVM_CHECK_NPE(3)
 
1448
    ((java_lang_String*) _r3.o)->fields.java_lang_String.count_ = _r0.i;
 
1449
    XMLVM_SOURCE_POSITION("String.java", 556)
 
1450
    XMLVM_CHECK_NPE(3)
 
1451
    _r0.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_;
 
1452
    XMLVM_CLASS_INIT(char)
 
1453
    _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i);
 
1454
    XMLVM_CHECK_NPE(3)
 
1455
    ((java_lang_String*) _r3.o)->fields.java_lang_String.value_ = _r0.o;
 
1456
    XMLVM_SOURCE_POSITION("String.java", 557)
 
1457
    XMLVM_CHECK_NPE(3)
 
1458
    _r0.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_;
 
1459
    XMLVM_CHECK_NPE(3)
 
1460
    _r1.o = ((java_lang_String*) _r3.o)->fields.java_lang_String.value_;
 
1461
    XMLVM_CHECK_NPE(4)
 
1462
    java_lang_AbstractStringBuilder_getChars___int_int_char_1ARRAY_int(_r4.o, _r2.i, _r0.i, _r1.o, _r2.i);
 
1463
    XMLVM_SOURCE_POSITION("String.java", 558)
 
1464
    XMLVM_EXIT_METHOD()
 
1465
    return;
 
1466
    //XMLVM_END_WRAPPER
 
1467
}
 
1468
 
 
1469
void java_lang_String___INIT____java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2)
 
1470
{
 
1471
    //XMLVM_BEGIN_WRAPPER[java_lang_String___INIT____java_lang_String_int]
 
1472
    XMLVM_ENTER_METHOD("java.lang.String", "<init>", "?")
 
1473
    XMLVMElem _r0;
 
1474
    XMLVMElem _r1;
 
1475
    XMLVMElem _r2;
 
1476
    XMLVMElem _r3;
 
1477
    XMLVMElem _r4;
 
1478
    XMLVMElem _r5;
 
1479
    XMLVMElem _r6;
 
1480
    XMLVMElem _r7;
 
1481
    XMLVMElem _r8;
 
1482
    XMLVMElem _r9;
 
1483
    _r7.o = me;
 
1484
    _r8.o = n1;
 
1485
    _r9.i = n2;
 
1486
    _r6.i = 0;
 
1487
    _r2.o = JAVA_NULL;
 
1488
    XMLVM_SOURCE_POSITION("String.java", 564)
 
1489
    XMLVM_CHECK_NPE(7)
 
1490
    java_lang_Object___INIT___(_r7.o);
 
1491
    XMLVM_SOURCE_POSITION("String.java", 58)
 
1492
    XMLVM_CHECK_NPE(7)
 
1493
    ((java_lang_String*) _r7.o)->fields.java_lang_String.charset_ = _r2.o;
 
1494
    XMLVM_SOURCE_POSITION("String.java", 59)
 
1495
    XMLVM_CHECK_NPE(7)
 
1496
    ((java_lang_String*) _r7.o)->fields.java_lang_String.charset2_ = _r2.o;
 
1497
    XMLVM_SOURCE_POSITION("String.java", 60)
 
1498
    XMLVM_CHECK_NPE(7)
 
1499
    ((java_lang_String*) _r7.o)->fields.java_lang_String.charset3_ = _r2.o;
 
1500
    XMLVM_SOURCE_POSITION("String.java", 565)
 
1501
    if (_r8.o != JAVA_NULL) goto label15;
 
1502
    XMLVM_SOURCE_POSITION("String.java", 566)
 
1503
    // "null"
 
1504
    _r8.o = xmlvm_create_java_string_from_pool(63);
 
1505
    label15:;
 
1506
    XMLVM_SOURCE_POSITION("String.java", 568)
 
1507
    _r1.o = java_lang_String_valueOf___int(_r9.i);
 
1508
    XMLVM_SOURCE_POSITION("String.java", 569)
 
1509
    XMLVM_CHECK_NPE(8)
 
1510
    _r2.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_;
 
1511
    XMLVM_CHECK_NPE(1)
 
1512
    _r3.i = ((java_lang_String*) _r1.o)->fields.java_lang_String.count_;
 
1513
    _r0.i = _r2.i + _r3.i;
 
1514
    XMLVM_SOURCE_POSITION("String.java", 570)
 
1515
    XMLVM_CLASS_INIT(char)
 
1516
    _r2.o = XMLVMArray_createSingleDimension(__CLASS_char, _r0.i);
 
1517
    XMLVM_CHECK_NPE(7)
 
1518
    ((java_lang_String*) _r7.o)->fields.java_lang_String.value_ = _r2.o;
 
1519
    XMLVM_SOURCE_POSITION("String.java", 571)
 
1520
    XMLVM_CHECK_NPE(7)
 
1521
    ((java_lang_String*) _r7.o)->fields.java_lang_String.offset_ = _r6.i;
 
1522
    XMLVM_SOURCE_POSITION("String.java", 572)
 
1523
    XMLVM_CHECK_NPE(8)
 
1524
    _r2.o = ((java_lang_String*) _r8.o)->fields.java_lang_String.value_;
 
1525
    XMLVM_CHECK_NPE(8)
 
1526
    _r3.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.offset_;
 
1527
    XMLVM_CHECK_NPE(7)
 
1528
    _r4.o = ((java_lang_String*) _r7.o)->fields.java_lang_String.value_;
 
1529
    XMLVM_CHECK_NPE(8)
 
1530
    _r5.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_;
 
1531
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r3.i, _r4.o, _r6.i, _r5.i);
 
1532
    XMLVM_SOURCE_POSITION("String.java", 573)
 
1533
    XMLVM_CHECK_NPE(1)
 
1534
    _r2.o = ((java_lang_String*) _r1.o)->fields.java_lang_String.value_;
 
1535
    XMLVM_CHECK_NPE(1)
 
1536
    _r3.i = ((java_lang_String*) _r1.o)->fields.java_lang_String.offset_;
 
1537
    XMLVM_CHECK_NPE(7)
 
1538
    _r4.o = ((java_lang_String*) _r7.o)->fields.java_lang_String.value_;
 
1539
    XMLVM_CHECK_NPE(8)
 
1540
    _r5.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_;
 
1541
    XMLVM_CHECK_NPE(1)
 
1542
    _r6.i = ((java_lang_String*) _r1.o)->fields.java_lang_String.count_;
 
1543
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r2.o, _r3.i, _r4.o, _r5.i, _r6.i);
 
1544
    XMLVM_SOURCE_POSITION("String.java", 574)
 
1545
    XMLVM_CHECK_NPE(7)
 
1546
    ((java_lang_String*) _r7.o)->fields.java_lang_String.count_ = _r0.i;
 
1547
    XMLVM_SOURCE_POSITION("String.java", 575)
 
1548
    XMLVM_EXIT_METHOD()
 
1549
    return;
 
1550
    //XMLVM_END_WRAPPER
 
1551
}
 
1552
 
 
1553
JAVA_CHAR java_lang_String_charAt___int(JAVA_OBJECT me, JAVA_INT n1)
 
1554
{
 
1555
    //XMLVM_BEGIN_WRAPPER[java_lang_String_charAt___int]
 
1556
    XMLVM_ENTER_METHOD("java.lang.String", "charAt", "?")
 
1557
    XMLVMElem _r0;
 
1558
    XMLVMElem _r1;
 
1559
    XMLVMElem _r2;
 
1560
    XMLVMElem _r3;
 
1561
    _r2.o = me;
 
1562
    _r3.i = n1;
 
1563
    XMLVM_SOURCE_POSITION("String.java", 587)
 
1564
    if (_r3.i < 0) goto label14;
 
1565
    XMLVM_CHECK_NPE(2)
 
1566
    _r0.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.count_;
 
1567
    if (_r3.i >= _r0.i) goto label14;
 
1568
    XMLVM_SOURCE_POSITION("String.java", 588)
 
1569
    XMLVM_CHECK_NPE(2)
 
1570
    _r0.o = ((java_lang_String*) _r2.o)->fields.java_lang_String.value_;
 
1571
    XMLVM_CHECK_NPE(2)
 
1572
    _r1.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.offset_;
 
1573
    _r1.i = _r1.i + _r3.i;
 
1574
    XMLVM_CHECK_NPE(0)
 
1575
    XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i);
 
1576
    _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i];
 
1577
    XMLVM_EXIT_METHOD()
 
1578
    return _r0.i;
 
1579
    label14:;
 
1580
    XMLVM_SOURCE_POSITION("String.java", 590)
 
1581
 
 
1582
    
 
1583
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
1584
    XMLVM_RED_CLASS_DEPENDENCY();
 
1585
 
 
1586
    
 
1587
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
1588
    XMLVM_RED_CLASS_DEPENDENCY();
 
1589
    XMLVM_THROW_CUSTOM(_r0.o)
 
1590
    //XMLVM_END_WRAPPER
 
1591
}
 
1592
 
 
1593
JAVA_CHAR java_lang_String_compareValue___char(JAVA_OBJECT me, JAVA_CHAR n1)
 
1594
{
 
1595
    //XMLVM_BEGIN_WRAPPER[java_lang_String_compareValue___char]
 
1596
    XMLVM_ENTER_METHOD("java.lang.String", "compareValue", "?")
 
1597
    XMLVMElem _r0;
 
1598
    XMLVMElem _r1;
 
1599
    XMLVMElem _r2;
 
1600
    _r1.o = me;
 
1601
    _r2.i = n1;
 
1602
    XMLVM_SOURCE_POSITION("String.java", 595)
 
1603
    _r0.i = 128;
 
1604
    if (_r2.i >= _r0.i) goto label18;
 
1605
    XMLVM_SOURCE_POSITION("String.java", 596)
 
1606
    _r0.i = 65;
 
1607
    if (_r0.i > _r2.i) goto label16;
 
1608
    _r0.i = 90;
 
1609
    if (_r2.i > _r0.i) goto label16;
 
1610
    XMLVM_SOURCE_POSITION("String.java", 597)
 
1611
    _r0.i = _r2.i + 32;
 
1612
    _r0.i = _r0.i & 0xffff;
 
1613
    label15:;
 
1614
    XMLVM_SOURCE_POSITION("String.java", 601)
 
1615
    XMLVM_EXIT_METHOD()
 
1616
    return _r0.i;
 
1617
    label16:;
 
1618
    _r0 = _r2;
 
1619
    XMLVM_SOURCE_POSITION("String.java", 599)
 
1620
    goto label15;
 
1621
    label18:;
 
1622
    _r0.i = java_lang_Character_toUpperCase___char(_r2.i);
 
1623
    _r0.i = java_lang_Character_toLowerCase___char(_r0.i);
 
1624
    goto label15;
 
1625
    //XMLVM_END_WRAPPER
 
1626
}
 
1627
 
 
1628
JAVA_CHAR java_lang_String_toLowerCase___char(JAVA_OBJECT me, JAVA_CHAR n1)
 
1629
{
 
1630
    //XMLVM_BEGIN_WRAPPER[java_lang_String_toLowerCase___char]
 
1631
    XMLVM_ENTER_METHOD("java.lang.String", "toLowerCase", "?")
 
1632
    XMLVMElem _r0;
 
1633
    XMLVMElem _r1;
 
1634
    XMLVMElem _r2;
 
1635
    _r1.o = me;
 
1636
    _r2.i = n1;
 
1637
    XMLVM_SOURCE_POSITION("String.java", 606)
 
1638
    _r0.i = 128;
 
1639
    if (_r2.i >= _r0.i) goto label18;
 
1640
    XMLVM_SOURCE_POSITION("String.java", 607)
 
1641
    _r0.i = 65;
 
1642
    if (_r0.i > _r2.i) goto label16;
 
1643
    _r0.i = 90;
 
1644
    if (_r2.i > _r0.i) goto label16;
 
1645
    XMLVM_SOURCE_POSITION("String.java", 608)
 
1646
    _r0.i = _r2.i + 32;
 
1647
    _r0.i = _r0.i & 0xffff;
 
1648
    label15:;
 
1649
    XMLVM_SOURCE_POSITION("String.java", 612)
 
1650
    XMLVM_EXIT_METHOD()
 
1651
    return _r0.i;
 
1652
    label16:;
 
1653
    _r0 = _r2;
 
1654
    XMLVM_SOURCE_POSITION("String.java", 610)
 
1655
    goto label15;
 
1656
    label18:;
 
1657
    _r0.i = java_lang_Character_toLowerCase___char(_r2.i);
 
1658
    goto label15;
 
1659
    //XMLVM_END_WRAPPER
 
1660
}
 
1661
 
 
1662
JAVA_CHAR java_lang_String_toUpperCase___char(JAVA_OBJECT me, JAVA_CHAR n1)
 
1663
{
 
1664
    //XMLVM_BEGIN_WRAPPER[java_lang_String_toUpperCase___char]
 
1665
    XMLVM_ENTER_METHOD("java.lang.String", "toUpperCase", "?")
 
1666
    XMLVMElem _r0;
 
1667
    XMLVMElem _r1;
 
1668
    XMLVMElem _r2;
 
1669
    _r1.o = me;
 
1670
    _r2.i = n1;
 
1671
    XMLVM_SOURCE_POSITION("String.java", 617)
 
1672
    _r0.i = 128;
 
1673
    if (_r2.i >= _r0.i) goto label20;
 
1674
    XMLVM_SOURCE_POSITION("String.java", 618)
 
1675
    _r0.i = 97;
 
1676
    if (_r0.i > _r2.i) goto label18;
 
1677
    _r0.i = 122;
 
1678
    if (_r2.i > _r0.i) goto label18;
 
1679
    XMLVM_SOURCE_POSITION("String.java", 619)
 
1680
    _r0.i = 32;
 
1681
    _r0.i = _r2.i - _r0.i;
 
1682
    _r0.i = _r0.i & 0xffff;
 
1683
    label17:;
 
1684
    XMLVM_SOURCE_POSITION("String.java", 623)
 
1685
    XMLVM_EXIT_METHOD()
 
1686
    return _r0.i;
 
1687
    label18:;
 
1688
    _r0 = _r2;
 
1689
    XMLVM_SOURCE_POSITION("String.java", 621)
 
1690
    goto label17;
 
1691
    label20:;
 
1692
    _r0.i = java_lang_Character_toUpperCase___char(_r2.i);
 
1693
    goto label17;
 
1694
    //XMLVM_END_WRAPPER
 
1695
}
 
1696
 
 
1697
JAVA_INT java_lang_String_compareTo___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
1698
{
 
1699
    //XMLVM_BEGIN_WRAPPER[java_lang_String_compareTo___java_lang_String]
 
1700
    XMLVM_ENTER_METHOD("java.lang.String", "compareTo", "?")
 
1701
    XMLVMElem _r0;
 
1702
    XMLVMElem _r1;
 
1703
    XMLVMElem _r2;
 
1704
    XMLVMElem _r3;
 
1705
    XMLVMElem _r4;
 
1706
    XMLVMElem _r5;
 
1707
    XMLVMElem _r6;
 
1708
    XMLVMElem _r7;
 
1709
    XMLVMElem _r8;
 
1710
    XMLVMElem _r9;
 
1711
    XMLVMElem _r10;
 
1712
    XMLVMElem _r11;
 
1713
    _r10.o = me;
 
1714
    _r11.o = n1;
 
1715
    XMLVM_SOURCE_POSITION("String.java", 648)
 
1716
    XMLVM_CHECK_NPE(10)
 
1717
    _r1.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.offset_;
 
1718
    XMLVM_CHECK_NPE(11)
 
1719
    _r3.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.offset_;
 
1720
    XMLVM_SOURCE_POSITION("String.java", 649)
 
1721
    XMLVM_CHECK_NPE(10)
 
1722
    _r7.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.offset_;
 
1723
    XMLVM_CHECK_NPE(10)
 
1724
    _r8.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_;
 
1725
    XMLVM_CHECK_NPE(11)
 
1726
    _r9.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
1727
    if (_r8.i >= _r9.i) goto label38;
 
1728
    XMLVM_CHECK_NPE(10)
 
1729
    _r8.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_;
 
1730
    label14:;
 
1731
    _r0.i = _r7.i + _r8.i;
 
1732
    XMLVM_SOURCE_POSITION("String.java", 650)
 
1733
    XMLVM_CHECK_NPE(11)
 
1734
    _r6.o = ((java_lang_String*) _r11.o)->fields.java_lang_String.value_;
 
1735
    _r4 = _r3;
 
1736
    _r2 = _r1;
 
1737
    label20:;
 
1738
    XMLVM_SOURCE_POSITION("String.java", 651)
 
1739
    if (_r2.i >= _r0.i) goto label41;
 
1740
    XMLVM_SOURCE_POSITION("String.java", 652)
 
1741
    XMLVM_CHECK_NPE(10)
 
1742
    _r7.o = ((java_lang_String*) _r10.o)->fields.java_lang_String.value_;
 
1743
    _r1.i = _r2.i + 1;
 
1744
    XMLVM_CHECK_NPE(7)
 
1745
    XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r2.i);
 
1746
    _r7.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i];
 
1747
    _r3.i = _r4.i + 1;
 
1748
    XMLVM_CHECK_NPE(6)
 
1749
    XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r4.i);
 
1750
    _r8.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i];
 
1751
    _r5.i = _r7.i - _r8.i;
 
1752
    if (_r5.i == 0) goto label49;
 
1753
    _r7 = _r5;
 
1754
    label37:;
 
1755
    XMLVM_SOURCE_POSITION("String.java", 653)
 
1756
    XMLVM_SOURCE_POSITION("String.java", 656)
 
1757
    XMLVM_EXIT_METHOD()
 
1758
    return _r7.i;
 
1759
    label38:;
 
1760
    XMLVM_CHECK_NPE(11)
 
1761
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
1762
    goto label14;
 
1763
    label41:;
 
1764
    XMLVM_CHECK_NPE(10)
 
1765
    _r7.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_;
 
1766
    XMLVM_CHECK_NPE(11)
 
1767
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
1768
    _r7.i = _r7.i - _r8.i;
 
1769
    _r3 = _r4;
 
1770
    _r1 = _r2;
 
1771
    goto label37;
 
1772
    label49:;
 
1773
    _r4 = _r3;
 
1774
    _r2 = _r1;
 
1775
    goto label20;
 
1776
    //XMLVM_END_WRAPPER
 
1777
}
 
1778
 
 
1779
JAVA_INT java_lang_String_compareToIgnoreCase___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
1780
{
 
1781
    //XMLVM_BEGIN_WRAPPER[java_lang_String_compareToIgnoreCase___java_lang_String]
 
1782
    XMLVM_ENTER_METHOD("java.lang.String", "compareToIgnoreCase", "?")
 
1783
    XMLVMElem _r0;
 
1784
    XMLVMElem _r1;
 
1785
    XMLVMElem _r2;
 
1786
    XMLVMElem _r3;
 
1787
    XMLVMElem _r4;
 
1788
    XMLVMElem _r5;
 
1789
    XMLVMElem _r6;
 
1790
    XMLVMElem _r7;
 
1791
    XMLVMElem _r8;
 
1792
    XMLVMElem _r9;
 
1793
    XMLVMElem _r10;
 
1794
    XMLVMElem _r11;
 
1795
    XMLVMElem _r12;
 
1796
    XMLVMElem _r13;
 
1797
    _r12.o = me;
 
1798
    _r13.o = n1;
 
1799
    XMLVM_SOURCE_POSITION("String.java", 680)
 
1800
    XMLVM_CHECK_NPE(12)
 
1801
    _r3.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_;
 
1802
    XMLVM_CHECK_NPE(13)
 
1803
    _r5.i = ((java_lang_String*) _r13.o)->fields.java_lang_String.offset_;
 
1804
    XMLVM_SOURCE_POSITION("String.java", 681)
 
1805
    XMLVM_CHECK_NPE(12)
 
1806
    _r9.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_;
 
1807
    XMLVM_CHECK_NPE(12)
 
1808
    _r10.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_;
 
1809
    XMLVM_CHECK_NPE(13)
 
1810
    _r11.i = ((java_lang_String*) _r13.o)->fields.java_lang_String.count_;
 
1811
    if (_r10.i >= _r11.i) goto label37;
 
1812
    XMLVM_CHECK_NPE(12)
 
1813
    _r10.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_;
 
1814
    label14:;
 
1815
    _r2.i = _r9.i + _r10.i;
 
1816
    XMLVM_SOURCE_POSITION("String.java", 683)
 
1817
    XMLVM_CHECK_NPE(13)
 
1818
    _r8.o = ((java_lang_String*) _r13.o)->fields.java_lang_String.value_;
 
1819
    _r6 = _r5;
 
1820
    _r4 = _r3;
 
1821
    label20:;
 
1822
    XMLVM_SOURCE_POSITION("String.java", 684)
 
1823
    if (_r4.i >= _r2.i) goto label54;
 
1824
    XMLVM_SOURCE_POSITION("String.java", 685)
 
1825
    XMLVM_CHECK_NPE(12)
 
1826
    _r9.o = ((java_lang_String*) _r12.o)->fields.java_lang_String.value_;
 
1827
    _r3.i = _r4.i + 1;
 
1828
    XMLVM_CHECK_NPE(9)
 
1829
    XMLVM_CHECK_ARRAY_BOUNDS(_r9.o, _r4.i);
 
1830
    _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r9.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i];
 
1831
    _r5.i = _r6.i + 1;
 
1832
    XMLVM_CHECK_NPE(8)
 
1833
    XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r6.i);
 
1834
    _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i];
 
1835
    if (_r0.i != _r1.i) goto label40;
 
1836
    _r6 = _r5;
 
1837
    _r4 = _r3;
 
1838
    XMLVM_SOURCE_POSITION("String.java", 686)
 
1839
    goto label20;
 
1840
    label37:;
 
1841
    XMLVM_CHECK_NPE(13)
 
1842
    _r10.i = ((java_lang_String*) _r13.o)->fields.java_lang_String.count_;
 
1843
    goto label14;
 
1844
    label40:;
 
1845
    XMLVM_SOURCE_POSITION("String.java", 688)
 
1846
    XMLVM_CHECK_NPE(12)
 
1847
    _r0.i = java_lang_String_compareValue___char(_r12.o, _r0.i);
 
1848
    XMLVM_SOURCE_POSITION("String.java", 689)
 
1849
    XMLVM_CHECK_NPE(12)
 
1850
    _r1.i = java_lang_String_compareValue___char(_r12.o, _r1.i);
 
1851
    _r7.i = _r0.i - _r1.i;
 
1852
    if (_r7.i == 0) goto label62;
 
1853
    XMLVM_SOURCE_POSITION("String.java", 690)
 
1854
    _r9 = _r7;
 
1855
    label53:;
 
1856
    XMLVM_SOURCE_POSITION("String.java", 691)
 
1857
    XMLVM_SOURCE_POSITION("String.java", 694)
 
1858
    XMLVM_EXIT_METHOD()
 
1859
    return _r9.i;
 
1860
    label54:;
 
1861
    XMLVM_CHECK_NPE(12)
 
1862
    _r9.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_;
 
1863
    XMLVM_CHECK_NPE(13)
 
1864
    _r10.i = ((java_lang_String*) _r13.o)->fields.java_lang_String.count_;
 
1865
    _r9.i = _r9.i - _r10.i;
 
1866
    _r5 = _r6;
 
1867
    _r3 = _r4;
 
1868
    goto label53;
 
1869
    label62:;
 
1870
    _r6 = _r5;
 
1871
    _r4 = _r3;
 
1872
    goto label20;
 
1873
    //XMLVM_END_WRAPPER
 
1874
}
 
1875
 
 
1876
JAVA_OBJECT java_lang_String_concat___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
1877
{
 
1878
    //XMLVM_BEGIN_WRAPPER[java_lang_String_concat___java_lang_String]
 
1879
    XMLVM_ENTER_METHOD("java.lang.String", "concat", "?")
 
1880
    XMLVMElem _r0;
 
1881
    XMLVMElem _r1;
 
1882
    XMLVMElem _r2;
 
1883
    XMLVMElem _r3;
 
1884
    XMLVMElem _r4;
 
1885
    XMLVMElem _r5;
 
1886
    XMLVMElem _r6;
 
1887
    XMLVMElem _r7;
 
1888
    _r6.o = me;
 
1889
    _r7.o = n1;
 
1890
    _r5.i = 0;
 
1891
    XMLVM_SOURCE_POSITION("String.java", 706)
 
1892
    XMLVM_CHECK_NPE(7)
 
1893
    _r1.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_;
 
1894
    if (_r1.i != 0) goto label7;
 
1895
    _r1 = _r6;
 
1896
    label6:;
 
1897
    XMLVM_SOURCE_POSITION("String.java", 707)
 
1898
    XMLVM_SOURCE_POSITION("String.java", 716)
 
1899
    XMLVM_EXIT_METHOD()
 
1900
    return _r1.o;
 
1901
    label7:;
 
1902
    XMLVM_SOURCE_POSITION("String.java", 710)
 
1903
    XMLVM_CHECK_NPE(6)
 
1904
    _r1.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
1905
    XMLVM_CHECK_NPE(7)
 
1906
    _r2.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_;
 
1907
    _r1.i = _r1.i + _r2.i;
 
1908
    XMLVM_CLASS_INIT(char)
 
1909
    _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r1.i);
 
1910
    XMLVM_SOURCE_POSITION("String.java", 711)
 
1911
    XMLVM_CHECK_NPE(6)
 
1912
    _r1.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
1913
    if (_r1.i <= 0) goto label27;
 
1914
    XMLVM_SOURCE_POSITION("String.java", 712)
 
1915
    XMLVM_CHECK_NPE(6)
 
1916
    _r1.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_;
 
1917
    XMLVM_CHECK_NPE(6)
 
1918
    _r2.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_;
 
1919
    XMLVM_CHECK_NPE(6)
 
1920
    _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
1921
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r0.o, _r5.i, _r3.i);
 
1922
    label27:;
 
1923
    XMLVM_SOURCE_POSITION("String.java", 714)
 
1924
    XMLVM_CHECK_NPE(7)
 
1925
    _r1.o = ((java_lang_String*) _r7.o)->fields.java_lang_String.value_;
 
1926
    XMLVM_CHECK_NPE(7)
 
1927
    _r2.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.offset_;
 
1928
    XMLVM_CHECK_NPE(6)
 
1929
    _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
1930
    XMLVM_CHECK_NPE(7)
 
1931
    _r4.i = ((java_lang_String*) _r7.o)->fields.java_lang_String.count_;
 
1932
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r0.o, _r3.i, _r4.i);
 
1933
    _r1.o = __NEW_java_lang_String();
 
1934
    _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r0.o));
 
1935
    XMLVM_CHECK_NPE(1)
 
1936
    java_lang_String___INIT____int_int_char_1ARRAY(_r1.o, _r5.i, _r2.i, _r0.o);
 
1937
    goto label6;
 
1938
    //XMLVM_END_WRAPPER
 
1939
}
 
1940
 
 
1941
JAVA_OBJECT java_lang_String_copyValueOf___char_1ARRAY(JAVA_OBJECT n1)
 
1942
{
 
1943
    XMLVM_CLASS_INIT(java_lang_String)
 
1944
    //XMLVM_BEGIN_WRAPPER[java_lang_String_copyValueOf___char_1ARRAY]
 
1945
    XMLVM_ENTER_METHOD("java.lang.String", "copyValueOf", "?")
 
1946
    XMLVMElem _r0;
 
1947
    XMLVMElem _r1;
 
1948
    XMLVMElem _r2;
 
1949
    XMLVMElem _r3;
 
1950
    _r3.o = n1;
 
1951
    XMLVM_SOURCE_POSITION("String.java", 731)
 
1952
    _r0.o = __NEW_java_lang_String();
 
1953
    _r1.i = 0;
 
1954
    _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o));
 
1955
    XMLVM_CHECK_NPE(0)
 
1956
    java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r3.o, _r1.i, _r2.i);
 
1957
    XMLVM_EXIT_METHOD()
 
1958
    return _r0.o;
 
1959
    //XMLVM_END_WRAPPER
 
1960
}
 
1961
 
 
1962
JAVA_OBJECT java_lang_String_copyValueOf___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3)
 
1963
{
 
1964
    XMLVM_CLASS_INIT(java_lang_String)
 
1965
    //XMLVM_BEGIN_WRAPPER[java_lang_String_copyValueOf___char_1ARRAY_int_int]
 
1966
    XMLVM_ENTER_METHOD("java.lang.String", "copyValueOf", "?")
 
1967
    XMLVMElem _r0;
 
1968
    XMLVMElem _r1;
 
1969
    XMLVMElem _r2;
 
1970
    XMLVMElem _r3;
 
1971
    _r1.o = n1;
 
1972
    _r2.i = n2;
 
1973
    _r3.i = n3;
 
1974
    XMLVM_SOURCE_POSITION("String.java", 753)
 
1975
    _r0.o = __NEW_java_lang_String();
 
1976
    XMLVM_CHECK_NPE(0)
 
1977
    java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r1.o, _r2.i, _r3.i);
 
1978
    XMLVM_EXIT_METHOD()
 
1979
    return _r0.o;
 
1980
    //XMLVM_END_WRAPPER
 
1981
}
 
1982
 
 
1983
JAVA_OBJECT java_lang_String_defaultCharset__(JAVA_OBJECT me)
 
1984
{
 
1985
    //XMLVM_BEGIN_WRAPPER[java_lang_String_defaultCharset__]
 
1986
    XMLVM_ENTER_METHOD("java.lang.String", "defaultCharset", "?")
 
1987
    volatile XMLVMElem _r0;
 
1988
    volatile XMLVMElem _r1;
 
1989
    volatile XMLVMElem _r2;
 
1990
    volatile XMLVMElem _r3;
 
1991
    volatile XMLVMElem _r4;
 
1992
    _r4.o = me;
 
1993
    XMLVM_SOURCE_POSITION("String.java", 757)
 
1994
    _r1.o = java_lang_String_GET_DefaultCharset();
 
1995
    if (_r1.o != JAVA_NULL) goto label37;
 
1996
    XMLVM_SOURCE_POSITION("String.java", 758)
 
1997
    _r1.o = __NEW_org_apache_harmony_luni_util_PriviAction();
 
1998
    // "file.encoding"
 
1999
    _r2.o = xmlvm_create_java_string_from_pool(174);
 
2000
    // "ISO8859_1"
 
2001
    _r3.o = xmlvm_create_java_string_from_pool(116);
 
2002
    XMLVM_CHECK_NPE(1)
 
2003
    org_apache_harmony_luni_util_PriviAction___INIT____java_lang_String_java_lang_String(_r1.o, _r2.o, _r3.o);
 
2004
    _r0.o = java_security_AccessController_doPrivileged___java_security_PrivilegedAction(_r1.o);
 
2005
    _r0.o = _r0.o;
 
2006
    XMLVM_TRY_BEGIN(w3113aaac40b1c12)
 
2007
    // Begin try
 
2008
    XMLVM_SOURCE_POSITION("String.java", 764)
 
2009
    _r1.o = java_nio_charset_Charset_forName___java_lang_String(_r0.o);
 
2010
    java_lang_String_PUT_DefaultCharset( _r1.o);
 
2011
    // End try
 
2012
    XMLVM_TRY_END
 
2013
    XMLVM_CATCH_BEGIN(w3113aaac40b1c12)
 
2014
    XMLVM_CATCH_END(w3113aaac40b1c12)
 
2015
    XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac40b1c12)
 
2016
    label25:;
 
2017
    XMLVM_SOURCE_POSITION("String.java", 771)
 
2018
    _r1.o = java_lang_String_GET_DefaultCharset();
 
2019
    if (_r1.o != JAVA_NULL) goto label37;
 
2020
    XMLVM_SOURCE_POSITION("String.java", 772)
 
2021
    // "ISO-8859-1"
 
2022
    _r1.o = xmlvm_create_java_string_from_pool(175);
 
2023
    _r1.o = java_nio_charset_Charset_forName___java_lang_String(_r1.o);
 
2024
    java_lang_String_PUT_DefaultCharset( _r1.o);
 
2025
    label37:;
 
2026
    XMLVM_SOURCE_POSITION("String.java", 775)
 
2027
    _r1.o = java_lang_String_GET_DefaultCharset();
 
2028
    XMLVM_EXIT_METHOD()
 
2029
    return _r1.o;
 
2030
    label40:;
 
2031
    XMLVM_SOURCE_POSITION("String.java", 767)
 
2032
    java_lang_Thread* curThread_w3113aaac40b1c27 = (java_lang_Thread*)java_lang_Thread_currentThread__();
 
2033
    _r1.o = curThread_w3113aaac40b1c27->fields.java_lang_Thread.xmlvmException_;
 
2034
    goto label25;
 
2035
    label42:;
 
2036
    XMLVM_SOURCE_POSITION("String.java", 765)
 
2037
    java_lang_Thread* curThread_w3113aaac40b1c31 = (java_lang_Thread*)java_lang_Thread_currentThread__();
 
2038
    _r1.o = curThread_w3113aaac40b1c31->fields.java_lang_Thread.xmlvmException_;
 
2039
    goto label25;
 
2040
    //XMLVM_END_WRAPPER
 
2041
}
 
2042
 
 
2043
JAVA_BOOLEAN java_lang_String_endsWith___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
2044
{
 
2045
    //XMLVM_BEGIN_WRAPPER[java_lang_String_endsWith___java_lang_String]
 
2046
    XMLVM_ENTER_METHOD("java.lang.String", "endsWith", "?")
 
2047
    XMLVMElem _r0;
 
2048
    XMLVMElem _r1;
 
2049
    XMLVMElem _r2;
 
2050
    XMLVMElem _r3;
 
2051
    XMLVMElem _r4;
 
2052
    _r3.o = me;
 
2053
    _r4.o = n1;
 
2054
    XMLVM_SOURCE_POSITION("String.java", 790)
 
2055
    XMLVM_CHECK_NPE(3)
 
2056
    _r0.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_;
 
2057
    XMLVM_CHECK_NPE(4)
 
2058
    _r1.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
2059
    _r0.i = _r0.i - _r1.i;
 
2060
    _r1.i = 0;
 
2061
    XMLVM_CHECK_NPE(4)
 
2062
    _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
2063
    XMLVM_CHECK_NPE(3)
 
2064
    _r0.i = java_lang_String_regionMatches___int_java_lang_String_int_int(_r3.o, _r0.i, _r4.o, _r1.i, _r2.i);
 
2065
    XMLVM_EXIT_METHOD()
 
2066
    return _r0.i;
 
2067
    //XMLVM_END_WRAPPER
 
2068
}
 
2069
 
 
2070
JAVA_BOOLEAN java_lang_String_equals___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)
 
2071
{
 
2072
    //XMLVM_BEGIN_WRAPPER[java_lang_String_equals___java_lang_Object]
 
2073
    XMLVM_ENTER_METHOD("java.lang.String", "equals", "?")
 
2074
    XMLVMElem _r0;
 
2075
    XMLVMElem _r1;
 
2076
    XMLVMElem _r2;
 
2077
    XMLVMElem _r3;
 
2078
    XMLVMElem _r4;
 
2079
    XMLVMElem _r5;
 
2080
    XMLVMElem _r6;
 
2081
    XMLVMElem _r7;
 
2082
    XMLVMElem _r8;
 
2083
    XMLVMElem _r9;
 
2084
    XMLVMElem _r10;
 
2085
    XMLVMElem _r11;
 
2086
    _r10.o = me;
 
2087
    _r11.o = n1;
 
2088
    _r9.i = 1;
 
2089
    _r8.i = 0;
 
2090
    XMLVM_SOURCE_POSITION("String.java", 806)
 
2091
    if (_r11.o != _r10.o) goto label6;
 
2092
    _r5 = _r9;
 
2093
    label5:;
 
2094
    XMLVM_SOURCE_POSITION("String.java", 807)
 
2095
    XMLVM_SOURCE_POSITION("String.java", 823)
 
2096
    XMLVM_EXIT_METHOD()
 
2097
    return _r5.i;
 
2098
    label6:;
 
2099
    XMLVM_SOURCE_POSITION("String.java", 809)
 
2100
    XMLVM_CLASS_INIT(java_lang_String)
 
2101
    _r5.i = XMLVM_ISA(_r11.o, __CLASS_java_lang_String);
 
2102
    if (_r5.i == 0) goto label60;
 
2103
    XMLVM_SOURCE_POSITION("String.java", 810)
 
2104
    _r0 = _r11;
 
2105
    _r0.o = _r0.o;
 
2106
    _r3 = _r0;
 
2107
    XMLVM_SOURCE_POSITION("String.java", 811)
 
2108
    XMLVM_CHECK_NPE(10)
 
2109
    _r1.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.hashCode_;
 
2110
    XMLVM_SOURCE_POSITION("String.java", 812)
 
2111
    XMLVM_CHECK_NPE(3)
 
2112
    _r4.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.hashCode_;
 
2113
    XMLVM_SOURCE_POSITION("String.java", 813)
 
2114
    XMLVM_CHECK_NPE(10)
 
2115
    _r5.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_;
 
2116
    XMLVM_CHECK_NPE(3)
 
2117
    _r6.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_;
 
2118
    if (_r5.i != _r6.i) goto label30;
 
2119
    if (_r1.i == _r4.i) goto label32;
 
2120
    if (_r1.i == 0) goto label32;
 
2121
    if (_r4.i == 0) goto label32;
 
2122
    label30:;
 
2123
    _r5 = _r8;
 
2124
    XMLVM_SOURCE_POSITION("String.java", 814)
 
2125
    goto label5;
 
2126
    label32:;
 
2127
    XMLVM_SOURCE_POSITION("String.java", 816)
 
2128
    _r2.i = 0;
 
2129
    label33:;
 
2130
    XMLVM_CHECK_NPE(10)
 
2131
    _r5.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_;
 
2132
    if (_r2.i >= _r5.i) goto label58;
 
2133
    XMLVM_SOURCE_POSITION("String.java", 817)
 
2134
    XMLVM_CHECK_NPE(10)
 
2135
    _r5.o = ((java_lang_String*) _r10.o)->fields.java_lang_String.value_;
 
2136
    XMLVM_CHECK_NPE(10)
 
2137
    _r6.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.offset_;
 
2138
    _r6.i = _r6.i + _r2.i;
 
2139
    XMLVM_CHECK_NPE(5)
 
2140
    XMLVM_CHECK_ARRAY_BOUNDS(_r5.o, _r6.i);
 
2141
    _r5.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r5.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i];
 
2142
    XMLVM_CHECK_NPE(3)
 
2143
    _r6.o = ((java_lang_String*) _r3.o)->fields.java_lang_String.value_;
 
2144
    XMLVM_CHECK_NPE(3)
 
2145
    _r7.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_;
 
2146
    _r7.i = _r7.i + _r2.i;
 
2147
    XMLVM_CHECK_NPE(6)
 
2148
    XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r7.i);
 
2149
    _r6.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i];
 
2150
    if (_r5.i == _r6.i) goto label55;
 
2151
    _r5 = _r8;
 
2152
    XMLVM_SOURCE_POSITION("String.java", 818)
 
2153
    goto label5;
 
2154
    label55:;
 
2155
    _r2.i = _r2.i + 1;
 
2156
    goto label33;
 
2157
    label58:;
 
2158
    _r5 = _r9;
 
2159
    XMLVM_SOURCE_POSITION("String.java", 821)
 
2160
    goto label5;
 
2161
    label60:;
 
2162
    _r5 = _r8;
 
2163
    goto label5;
 
2164
    //XMLVM_END_WRAPPER
 
2165
}
 
2166
 
 
2167
JAVA_BOOLEAN java_lang_String_equalsIgnoreCase___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
2168
{
 
2169
    //XMLVM_BEGIN_WRAPPER[java_lang_String_equalsIgnoreCase___java_lang_String]
 
2170
    XMLVM_ENTER_METHOD("java.lang.String", "equalsIgnoreCase", "?")
 
2171
    XMLVMElem _r0;
 
2172
    XMLVMElem _r1;
 
2173
    XMLVMElem _r2;
 
2174
    XMLVMElem _r3;
 
2175
    XMLVMElem _r4;
 
2176
    XMLVMElem _r5;
 
2177
    XMLVMElem _r6;
 
2178
    XMLVMElem _r7;
 
2179
    XMLVMElem _r8;
 
2180
    XMLVMElem _r9;
 
2181
    XMLVMElem _r10;
 
2182
    XMLVMElem _r11;
 
2183
    XMLVMElem _r12;
 
2184
    XMLVMElem _r13;
 
2185
    _r12.o = me;
 
2186
    _r13.o = n1;
 
2187
    _r11.i = 1;
 
2188
    _r10.i = 0;
 
2189
    XMLVM_SOURCE_POSITION("String.java", 836)
 
2190
    if (_r13.o != _r12.o) goto label6;
 
2191
    _r8 = _r11;
 
2192
    label5:;
 
2193
    XMLVM_SOURCE_POSITION("String.java", 837)
 
2194
    XMLVM_SOURCE_POSITION("String.java", 855)
 
2195
    XMLVM_EXIT_METHOD()
 
2196
    return _r8.i;
 
2197
    label6:;
 
2198
    XMLVM_SOURCE_POSITION("String.java", 839)
 
2199
    if (_r13.o == JAVA_NULL) goto label14;
 
2200
    XMLVM_CHECK_NPE(12)
 
2201
    _r8.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_;
 
2202
    XMLVM_CHECK_NPE(13)
 
2203
    _r9.i = ((java_lang_String*) _r13.o)->fields.java_lang_String.count_;
 
2204
    if (_r8.i == _r9.i) goto label16;
 
2205
    label14:;
 
2206
    _r8 = _r10;
 
2207
    XMLVM_SOURCE_POSITION("String.java", 840)
 
2208
    goto label5;
 
2209
    label16:;
 
2210
    XMLVM_SOURCE_POSITION("String.java", 843)
 
2211
    XMLVM_CHECK_NPE(12)
 
2212
    _r3.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_;
 
2213
    XMLVM_CHECK_NPE(13)
 
2214
    _r5.i = ((java_lang_String*) _r13.o)->fields.java_lang_String.offset_;
 
2215
    XMLVM_SOURCE_POSITION("String.java", 844)
 
2216
    XMLVM_CHECK_NPE(12)
 
2217
    _r8.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_;
 
2218
    XMLVM_CHECK_NPE(12)
 
2219
    _r9.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_;
 
2220
    _r2.i = _r8.i + _r9.i;
 
2221
    XMLVM_SOURCE_POSITION("String.java", 846)
 
2222
    XMLVM_CHECK_NPE(13)
 
2223
    _r7.o = ((java_lang_String*) _r13.o)->fields.java_lang_String.value_;
 
2224
    _r6 = _r5;
 
2225
    _r4 = _r3;
 
2226
    label30:;
 
2227
    XMLVM_SOURCE_POSITION("String.java", 847)
 
2228
    if (_r4.i >= _r2.i) goto label66;
 
2229
    XMLVM_SOURCE_POSITION("String.java", 848)
 
2230
    XMLVM_CHECK_NPE(12)
 
2231
    _r8.o = ((java_lang_String*) _r12.o)->fields.java_lang_String.value_;
 
2232
    _r3.i = _r4.i + 1;
 
2233
    XMLVM_CHECK_NPE(8)
 
2234
    XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r4.i);
 
2235
    _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i];
 
2236
    _r5.i = _r6.i + 1;
 
2237
    XMLVM_CHECK_NPE(7)
 
2238
    XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r6.i);
 
2239
    _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i];
 
2240
    if (_r0.i == _r1.i) goto label68;
 
2241
    XMLVM_CHECK_NPE(12)
 
2242
    _r8.i = java_lang_String_toUpperCase___char(_r12.o, _r0.i);
 
2243
    XMLVM_CHECK_NPE(12)
 
2244
    _r9.i = java_lang_String_toUpperCase___char(_r12.o, _r1.i);
 
2245
    if (_r8.i == _r9.i) goto label68;
 
2246
    XMLVM_CHECK_NPE(12)
 
2247
    _r8.i = java_lang_String_toLowerCase___char(_r12.o, _r0.i);
 
2248
    XMLVM_CHECK_NPE(12)
 
2249
    _r9.i = java_lang_String_toLowerCase___char(_r12.o, _r1.i);
 
2250
    if (_r8.i == _r9.i) goto label68;
 
2251
    _r8 = _r10;
 
2252
    XMLVM_SOURCE_POSITION("String.java", 852)
 
2253
    goto label5;
 
2254
    label66:;
 
2255
    _r8 = _r11;
 
2256
    goto label5;
 
2257
    label68:;
 
2258
    _r6 = _r5;
 
2259
    _r4 = _r3;
 
2260
    goto label30;
 
2261
    //XMLVM_END_WRAPPER
 
2262
}
 
2263
 
 
2264
JAVA_OBJECT java_lang_String_getBytes__(JAVA_OBJECT me)
 
2265
{
 
2266
    //XMLVM_BEGIN_WRAPPER[java_lang_String_getBytes__]
 
2267
    XMLVM_ENTER_METHOD("java.lang.String", "getBytes", "?")
 
2268
    XMLVMElem _r0;
 
2269
    XMLVMElem _r1;
 
2270
    XMLVMElem _r2;
 
2271
    XMLVMElem _r3;
 
2272
    XMLVMElem _r4;
 
2273
    XMLVMElem _r5;
 
2274
    XMLVMElem _r6;
 
2275
    _r6.o = me;
 
2276
    XMLVM_SOURCE_POSITION("String.java", 867)
 
2277
    XMLVM_CHECK_NPE(6)
 
2278
    _r2.o = java_lang_String_defaultCharset__(_r6.o);
 
2279
    XMLVM_CHECK_NPE(6)
 
2280
    _r3.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_;
 
2281
    XMLVM_CHECK_NPE(6)
 
2282
    _r4.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_;
 
2283
    XMLVM_CHECK_NPE(6)
 
2284
    _r5.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
2285
    _r3.o = java_nio_CharBuffer_wrap___char_1ARRAY_int_int(_r3.o, _r4.i, _r5.i);
 
2286
    XMLVM_CHECK_NPE(2)
 
2287
    _r0.o = java_nio_charset_Charset_encode___java_nio_CharBuffer(_r2.o, _r3.o);
 
2288
    XMLVM_SOURCE_POSITION("String.java", 869)
 
2289
    XMLVM_CHECK_NPE(0)
 
2290
    _r2.i = java_nio_Buffer_limit__(_r0.o);
 
2291
    XMLVM_CLASS_INIT(byte)
 
2292
    _r1.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r2.i);
 
2293
    XMLVM_SOURCE_POSITION("String.java", 870)
 
2294
    XMLVM_CHECK_NPE(0)
 
2295
    java_nio_ByteBuffer_get___byte_1ARRAY(_r0.o, _r1.o);
 
2296
    XMLVM_SOURCE_POSITION("String.java", 871)
 
2297
    XMLVM_EXIT_METHOD()
 
2298
    return _r1.o;
 
2299
    //XMLVM_END_WRAPPER
 
2300
}
 
2301
 
 
2302
void java_lang_String_getBytes___int_int_byte_1ARRAY_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4)
 
2303
{
 
2304
    //XMLVM_BEGIN_WRAPPER[java_lang_String_getBytes___int_int_byte_1ARRAY_int]
 
2305
    XMLVM_ENTER_METHOD("java.lang.String", "getBytes", "?")
 
2306
    volatile XMLVMElem _r0;
 
2307
    volatile XMLVMElem _r1;
 
2308
    volatile XMLVMElem _r2;
 
2309
    volatile XMLVMElem _r3;
 
2310
    volatile XMLVMElem _r4;
 
2311
    volatile XMLVMElem _r5;
 
2312
    volatile XMLVMElem _r6;
 
2313
    volatile XMLVMElem _r7;
 
2314
    volatile XMLVMElem _r8;
 
2315
    _r4.o = me;
 
2316
    _r5.i = n1;
 
2317
    _r6.i = n2;
 
2318
    _r7.o = n3;
 
2319
    _r8.i = n4;
 
2320
    XMLVM_SOURCE_POSITION("String.java", 895)
 
2321
    if (_r5.i < 0) goto label39;
 
2322
    if (_r5.i > _r6.i) goto label39;
 
2323
    XMLVM_CHECK_NPE(4)
 
2324
    _r3.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
2325
    if (_r6.i > _r3.i) goto label39;
 
2326
    XMLVM_SOURCE_POSITION("String.java", 896)
 
2327
    XMLVM_CHECK_NPE(4)
 
2328
    _r3.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_;
 
2329
    _r6.i = _r6.i + _r3.i;
 
2330
    XMLVM_TRY_BEGIN(w3113aaac45b1c14)
 
2331
    // Begin try
 
2332
    XMLVM_SOURCE_POSITION("String.java", 898)
 
2333
    XMLVM_CHECK_NPE(4)
 
2334
    _r3.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_;
 
2335
    _r1.i = _r3.i + _r5.i;
 
2336
    _r2 = _r8;
 
2337
    // End try
 
2338
    XMLVM_TRY_END
 
2339
    XMLVM_CATCH_BEGIN(w3113aaac45b1c14)
 
2340
    XMLVM_CATCH_END(w3113aaac45b1c14)
 
2341
    XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac45b1c14)
 
2342
    label16:;
 
2343
    XMLVM_TRY_BEGIN(w3113aaac45b1c16)
 
2344
    // Begin try
 
2345
    if (_r1.i >= _r6.i) { XMLVM_MEMCPY(curThread_w3113aaac45b1c16->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3113aaac45b1c16, sizeof(XMLVM_JMP_BUF)); goto label45; };
 
2346
    XMLVM_SOURCE_POSITION("String.java", 899)
 
2347
    _r8.i = _r2.i + 1;
 
2348
    XMLVM_CHECK_NPE(4)
 
2349
    _r3.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_;
 
2350
    XMLVM_CHECK_NPE(3)
 
2351
    XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i);
 
2352
    _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i];
 
2353
    _r3.i = (_r3.i << 24) >> 24;
 
2354
    XMLVM_CHECK_NPE(7)
 
2355
    XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r2.i);
 
2356
    ((JAVA_ARRAY_BYTE*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i] = _r3.i;
 
2357
    // End try
 
2358
    XMLVM_TRY_END
 
2359
    XMLVM_CATCH_BEGIN(w3113aaac45b1c16)
 
2360
    XMLVM_CATCH_END(w3113aaac45b1c16)
 
2361
    XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac45b1c16)
 
2362
    _r1.i = _r1.i + 1;
 
2363
    _r2 = _r8;
 
2364
    goto label16;
 
2365
    label31:;
 
2366
    XMLVM_SOURCE_POSITION("String.java", 901)
 
2367
    java_lang_Thread* curThread_w3113aaac45b1c22 = (java_lang_Thread*)java_lang_Thread_currentThread__();
 
2368
    _r3.o = curThread_w3113aaac45b1c22->fields.java_lang_Thread.xmlvmException_;
 
2369
    _r0 = _r3;
 
2370
    XMLVM_SOURCE_POSITION("String.java", 902)
 
2371
 
 
2372
    
 
2373
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
2374
    XMLVM_RED_CLASS_DEPENDENCY();
 
2375
 
 
2376
    
 
2377
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
2378
    XMLVM_RED_CLASS_DEPENDENCY();
 
2379
    XMLVM_THROW_CUSTOM(_r3.o)
 
2380
    label39:;
 
2381
    XMLVM_SOURCE_POSITION("String.java", 905)
 
2382
 
 
2383
    
 
2384
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
2385
    XMLVM_RED_CLASS_DEPENDENCY();
 
2386
 
 
2387
    
 
2388
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
2389
    XMLVM_RED_CLASS_DEPENDENCY();
 
2390
    XMLVM_THROW_CUSTOM(_r3.o)
 
2391
    label45:;
 
2392
    XMLVM_SOURCE_POSITION("String.java", 907)
 
2393
    XMLVM_EXIT_METHOD()
 
2394
    return;
 
2395
    //XMLVM_END_WRAPPER
 
2396
}
 
2397
 
 
2398
JAVA_OBJECT java_lang_String_getBytes___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
2399
{
 
2400
    //XMLVM_BEGIN_WRAPPER[java_lang_String_getBytes___java_lang_String]
 
2401
    XMLVM_ENTER_METHOD("java.lang.String", "getBytes", "?")
 
2402
    XMLVMElem _r0;
 
2403
    XMLVMElem _r1;
 
2404
    XMLVMElem _r2;
 
2405
    XMLVMElem _r3;
 
2406
    XMLVMElem _r4;
 
2407
    XMLVMElem _r5;
 
2408
    XMLVMElem _r6;
 
2409
    XMLVMElem _r7;
 
2410
    _r6.o = me;
 
2411
    _r7.o = n1;
 
2412
    XMLVM_SOURCE_POSITION("String.java", 919)
 
2413
    XMLVM_CHECK_NPE(6)
 
2414
    _r2.o = java_lang_String_getCharset___java_lang_String(_r6.o, _r7.o);
 
2415
    XMLVM_CHECK_NPE(6)
 
2416
    _r3.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_;
 
2417
    XMLVM_CHECK_NPE(6)
 
2418
    _r4.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_;
 
2419
    XMLVM_CHECK_NPE(6)
 
2420
    _r5.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
2421
    _r3.o = java_nio_CharBuffer_wrap___char_1ARRAY_int_int(_r3.o, _r4.i, _r5.i);
 
2422
    XMLVM_CHECK_NPE(2)
 
2423
    _r0.o = java_nio_charset_Charset_encode___java_nio_CharBuffer(_r2.o, _r3.o);
 
2424
    XMLVM_SOURCE_POSITION("String.java", 921)
 
2425
    XMLVM_CHECK_NPE(0)
 
2426
    _r2.i = java_nio_Buffer_limit__(_r0.o);
 
2427
    XMLVM_CLASS_INIT(byte)
 
2428
    _r1.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r2.i);
 
2429
    XMLVM_SOURCE_POSITION("String.java", 922)
 
2430
    XMLVM_CHECK_NPE(0)
 
2431
    java_nio_ByteBuffer_get___byte_1ARRAY(_r0.o, _r1.o);
 
2432
    XMLVM_SOURCE_POSITION("String.java", 923)
 
2433
    XMLVM_EXIT_METHOD()
 
2434
    return _r1.o;
 
2435
    //XMLVM_END_WRAPPER
 
2436
}
 
2437
 
 
2438
JAVA_OBJECT java_lang_String_getBytes___java_nio_charset_Charset(JAVA_OBJECT me, JAVA_OBJECT n1)
 
2439
{
 
2440
    //XMLVM_BEGIN_WRAPPER[java_lang_String_getBytes___java_nio_charset_Charset]
 
2441
    XMLVM_ENTER_METHOD("java.lang.String", "getBytes", "?")
 
2442
    XMLVMElem _r0;
 
2443
    XMLVMElem _r1;
 
2444
    XMLVMElem _r2;
 
2445
    XMLVMElem _r3;
 
2446
    XMLVMElem _r4;
 
2447
    XMLVMElem _r5;
 
2448
    XMLVMElem _r6;
 
2449
    _r5.o = me;
 
2450
    _r6.o = n1;
 
2451
    XMLVM_SOURCE_POSITION("String.java", 945)
 
2452
    XMLVM_CHECK_NPE(5)
 
2453
    _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
2454
    XMLVM_CHECK_NPE(5)
 
2455
    _r3.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_;
 
2456
    XMLVM_CHECK_NPE(5)
 
2457
    _r4.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_;
 
2458
    _r2.o = java_nio_CharBuffer_wrap___char_1ARRAY_int_int(_r2.o, _r3.i, _r4.i);
 
2459
    XMLVM_CHECK_NPE(6)
 
2460
    _r0.o = java_nio_charset_Charset_encode___java_nio_CharBuffer(_r6.o, _r2.o);
 
2461
    XMLVM_SOURCE_POSITION("String.java", 947)
 
2462
    XMLVM_CHECK_NPE(0)
 
2463
    _r2.i = java_nio_Buffer_limit__(_r0.o);
 
2464
    XMLVM_CLASS_INIT(byte)
 
2465
    _r1.o = XMLVMArray_createSingleDimension(__CLASS_byte, _r2.i);
 
2466
    XMLVM_SOURCE_POSITION("String.java", 948)
 
2467
    XMLVM_CHECK_NPE(0)
 
2468
    java_nio_ByteBuffer_get___byte_1ARRAY(_r0.o, _r1.o);
 
2469
    XMLVM_SOURCE_POSITION("String.java", 949)
 
2470
    XMLVM_EXIT_METHOD()
 
2471
    return _r1.o;
 
2472
    //XMLVM_END_WRAPPER
 
2473
}
 
2474
 
 
2475
JAVA_OBJECT java_lang_String_getCharset___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
2476
{
 
2477
    //XMLVM_BEGIN_WRAPPER[java_lang_String_getCharset___java_lang_String]
 
2478
    XMLVM_ENTER_METHOD("java.lang.String", "getCharset", "?")
 
2479
    volatile XMLVMElem _r0;
 
2480
    volatile XMLVMElem _r1;
 
2481
    volatile XMLVMElem _r2;
 
2482
    volatile XMLVMElem _r3;
 
2483
    volatile XMLVMElem _r4;
 
2484
    _r3.o = me;
 
2485
    _r4.o = n1;
 
2486
    XMLVM_SOURCE_POSITION("String.java", 954)
 
2487
    _r0.o = java_lang_String_GET_lastCharset();
 
2488
    if (_r0.o == JAVA_NULL) goto label14;
 
2489
    XMLVM_SOURCE_POSITION("String.java", 955)
 
2490
    XMLVM_CHECK_NPE(0)
 
2491
    _r2.o = java_nio_charset_Charset_name__(_r0.o);
 
2492
    XMLVM_CHECK_NPE(4)
 
2493
    _r2.i = java_lang_String_equalsIgnoreCase___java_lang_String(_r4.o, _r2.o);
 
2494
    if (_r2.i != 0) goto label20;
 
2495
    label14:;
 
2496
    XMLVM_TRY_BEGIN(w3113aaac48b1c11)
 
2497
    // Begin try
 
2498
    XMLVM_SOURCE_POSITION("String.java", 957)
 
2499
    _r0.o = java_nio_charset_Charset_forName___java_lang_String(_r4.o);
 
2500
    // End try
 
2501
    XMLVM_TRY_END
 
2502
    XMLVM_CATCH_BEGIN(w3113aaac48b1c11)
 
2503
    XMLVM_CATCH_END(w3113aaac48b1c11)
 
2504
    XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac48b1c11)
 
2505
    XMLVM_SOURCE_POSITION("String.java", 965)
 
2506
    java_lang_String_PUT_lastCharset( _r0.o);
 
2507
    label20:;
 
2508
    XMLVM_SOURCE_POSITION("String.java", 967)
 
2509
    XMLVM_EXIT_METHOD()
 
2510
    return _r0.o;
 
2511
    label21:;
 
2512
    XMLVM_SOURCE_POSITION("String.java", 958)
 
2513
    java_lang_Thread* curThread_w3113aaac48b1c19 = (java_lang_Thread*)java_lang_Thread_currentThread__();
 
2514
    _r1.o = curThread_w3113aaac48b1c19->fields.java_lang_Thread.xmlvmException_;
 
2515
    XMLVM_SOURCE_POSITION("String.java", 959)
 
2516
 
 
2517
    
 
2518
    // Red class access removed: java.io.UnsupportedEncodingException::new-instance
 
2519
    XMLVM_RED_CLASS_DEPENDENCY();
 
2520
 
 
2521
    
 
2522
    // Red class access removed: java.io.UnsupportedEncodingException::<init>
 
2523
    XMLVM_RED_CLASS_DEPENDENCY();
 
2524
 
 
2525
    
 
2526
    // Red class access removed: java.io.UnsupportedEncodingException::initCause
 
2527
    XMLVM_RED_CLASS_DEPENDENCY();
 
2528
 
 
2529
    
 
2530
    // Red class access removed: java.io.UnsupportedEncodingException::check-cast
 
2531
    XMLVM_RED_CLASS_DEPENDENCY();
 
2532
 
 
2533
    
 
2534
    // Red class access removed: java.io.UnsupportedEncodingException::check-cast
 
2535
    XMLVM_RED_CLASS_DEPENDENCY();
 
2536
    XMLVM_THROW_CUSTOM(_r3.o)
 
2537
    label36:;
 
2538
    XMLVM_SOURCE_POSITION("String.java", 961)
 
2539
    java_lang_Thread* curThread_w3113aaac48b1c29 = (java_lang_Thread*)java_lang_Thread_currentThread__();
 
2540
    _r1.o = curThread_w3113aaac48b1c29->fields.java_lang_Thread.xmlvmException_;
 
2541
    XMLVM_SOURCE_POSITION("String.java", 962)
 
2542
 
 
2543
    
 
2544
    // Red class access removed: java.io.UnsupportedEncodingException::new-instance
 
2545
    XMLVM_RED_CLASS_DEPENDENCY();
 
2546
 
 
2547
    
 
2548
    // Red class access removed: java.io.UnsupportedEncodingException::<init>
 
2549
    XMLVM_RED_CLASS_DEPENDENCY();
 
2550
 
 
2551
    
 
2552
    // Red class access removed: java.io.UnsupportedEncodingException::initCause
 
2553
    XMLVM_RED_CLASS_DEPENDENCY();
 
2554
 
 
2555
    
 
2556
    // Red class access removed: java.io.UnsupportedEncodingException::check-cast
 
2557
    XMLVM_RED_CLASS_DEPENDENCY();
 
2558
 
 
2559
    
 
2560
    // Red class access removed: java.io.UnsupportedEncodingException::check-cast
 
2561
    XMLVM_RED_CLASS_DEPENDENCY();
 
2562
    XMLVM_THROW_CUSTOM(_r3.o)
 
2563
    //XMLVM_END_WRAPPER
 
2564
}
 
2565
 
 
2566
void java_lang_String_getChars___int_int_char_1ARRAY_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4)
 
2567
{
 
2568
    //XMLVM_BEGIN_WRAPPER[java_lang_String_getChars___int_int_char_1ARRAY_int]
 
2569
    XMLVM_ENTER_METHOD("java.lang.String", "getChars", "?")
 
2570
    XMLVMElem _r0;
 
2571
    XMLVMElem _r1;
 
2572
    XMLVMElem _r2;
 
2573
    XMLVMElem _r3;
 
2574
    XMLVMElem _r4;
 
2575
    XMLVMElem _r5;
 
2576
    XMLVMElem _r6;
 
2577
    XMLVMElem _r7;
 
2578
    _r3.o = me;
 
2579
    _r4.i = n1;
 
2580
    _r5.i = n2;
 
2581
    _r6.o = n3;
 
2582
    _r7.i = n4;
 
2583
    XMLVM_SOURCE_POSITION("String.java", 992)
 
2584
    if (_r4.i < 0) goto label19;
 
2585
    if (_r4.i > _r5.i) goto label19;
 
2586
    XMLVM_CHECK_NPE(3)
 
2587
    _r0.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_;
 
2588
    if (_r5.i > _r0.i) goto label19;
 
2589
    XMLVM_SOURCE_POSITION("String.java", 993)
 
2590
    XMLVM_CHECK_NPE(3)
 
2591
    _r0.o = ((java_lang_String*) _r3.o)->fields.java_lang_String.value_;
 
2592
    XMLVM_CHECK_NPE(3)
 
2593
    _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_;
 
2594
    _r1.i = _r1.i + _r4.i;
 
2595
    _r2.i = _r5.i - _r4.i;
 
2596
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r0.o, _r1.i, _r6.o, _r7.i, _r2.i);
 
2597
    XMLVM_SOURCE_POSITION("String.java", 997)
 
2598
    XMLVM_EXIT_METHOD()
 
2599
    return;
 
2600
    label19:;
 
2601
    XMLVM_SOURCE_POSITION("String.java", 995)
 
2602
 
 
2603
    
 
2604
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
2605
    XMLVM_RED_CLASS_DEPENDENCY();
 
2606
 
 
2607
    
 
2608
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
2609
    XMLVM_RED_CLASS_DEPENDENCY();
 
2610
    XMLVM_THROW_CUSTOM(_r0.o)
 
2611
    //XMLVM_END_WRAPPER
 
2612
}
 
2613
 
 
2614
JAVA_INT java_lang_String_hashCode__(JAVA_OBJECT me)
 
2615
{
 
2616
    //XMLVM_BEGIN_WRAPPER[java_lang_String_hashCode__]
 
2617
    XMLVM_ENTER_METHOD("java.lang.String", "hashCode", "?")
 
2618
    XMLVMElem _r0;
 
2619
    XMLVMElem _r1;
 
2620
    XMLVMElem _r2;
 
2621
    XMLVMElem _r3;
 
2622
    XMLVMElem _r4;
 
2623
    _r4.o = me;
 
2624
    XMLVM_SOURCE_POSITION("String.java", 1001)
 
2625
    XMLVM_CHECK_NPE(4)
 
2626
    _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.hashCode_;
 
2627
    if (_r2.i != 0) goto label34;
 
2628
    XMLVM_SOURCE_POSITION("String.java", 1002)
 
2629
    XMLVM_CHECK_NPE(4)
 
2630
    _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
2631
    if (_r2.i != 0) goto label10;
 
2632
    XMLVM_SOURCE_POSITION("String.java", 1003)
 
2633
    _r2.i = 0;
 
2634
    label9:;
 
2635
    XMLVM_SOURCE_POSITION("String.java", 1011)
 
2636
    XMLVM_EXIT_METHOD()
 
2637
    return _r2.i;
 
2638
    label10:;
 
2639
    XMLVM_SOURCE_POSITION("String.java", 1005)
 
2640
    _r0.i = 0;
 
2641
    XMLVM_SOURCE_POSITION("String.java", 1006)
 
2642
    XMLVM_CHECK_NPE(4)
 
2643
    _r1.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_;
 
2644
    label13:;
 
2645
    XMLVM_CHECK_NPE(4)
 
2646
    _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
2647
    XMLVM_CHECK_NPE(4)
 
2648
    _r3.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_;
 
2649
    _r2.i = _r2.i + _r3.i;
 
2650
    if (_r1.i >= _r2.i) goto label32;
 
2651
    XMLVM_SOURCE_POSITION("String.java", 1007)
 
2652
    XMLVM_CHECK_NPE(4)
 
2653
    _r2.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_;
 
2654
    XMLVM_CHECK_NPE(2)
 
2655
    XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i);
 
2656
    _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i];
 
2657
    _r3.i = _r0.i << 5;
 
2658
    _r3.i = _r3.i - _r0.i;
 
2659
    _r0.i = _r2.i + _r3.i;
 
2660
    _r1.i = _r1.i + 1;
 
2661
    goto label13;
 
2662
    label32:;
 
2663
    XMLVM_SOURCE_POSITION("String.java", 1009)
 
2664
    XMLVM_CHECK_NPE(4)
 
2665
    ((java_lang_String*) _r4.o)->fields.java_lang_String.hashCode_ = _r0.i;
 
2666
    label34:;
 
2667
    XMLVM_CHECK_NPE(4)
 
2668
    _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.hashCode_;
 
2669
    goto label9;
 
2670
    //XMLVM_END_WRAPPER
 
2671
}
 
2672
 
 
2673
JAVA_INT java_lang_String_indexOf___int(JAVA_OBJECT me, JAVA_INT n1)
 
2674
{
 
2675
    //XMLVM_BEGIN_WRAPPER[java_lang_String_indexOf___int]
 
2676
    XMLVM_ENTER_METHOD("java.lang.String", "indexOf", "?")
 
2677
    XMLVMElem _r0;
 
2678
    XMLVMElem _r1;
 
2679
    XMLVMElem _r2;
 
2680
    _r1.o = me;
 
2681
    _r2.i = n1;
 
2682
    XMLVM_SOURCE_POSITION("String.java", 1025)
 
2683
    _r0.i = 0;
 
2684
    XMLVM_CHECK_NPE(1)
 
2685
    _r0.i = java_lang_String_indexOf___int_int(_r1.o, _r2.i, _r0.i);
 
2686
    XMLVM_EXIT_METHOD()
 
2687
    return _r0.i;
 
2688
    //XMLVM_END_WRAPPER
 
2689
}
 
2690
 
 
2691
JAVA_INT java_lang_String_indexOf___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2)
 
2692
{
 
2693
    //XMLVM_BEGIN_WRAPPER[java_lang_String_indexOf___int_int]
 
2694
    XMLVM_ENTER_METHOD("java.lang.String", "indexOf", "?")
 
2695
    XMLVMElem _r0;
 
2696
    XMLVMElem _r1;
 
2697
    XMLVMElem _r2;
 
2698
    XMLVMElem _r3;
 
2699
    XMLVMElem _r4;
 
2700
    XMLVMElem _r5;
 
2701
    XMLVMElem _r6;
 
2702
    _r4.o = me;
 
2703
    _r5.i = n1;
 
2704
    _r6.i = n2;
 
2705
    _r3.i = 65535;
 
2706
    XMLVM_SOURCE_POSITION("String.java", 1041)
 
2707
    XMLVM_CHECK_NPE(4)
 
2708
    _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
2709
    if (_r6.i >= _r2.i) goto label68;
 
2710
    XMLVM_SOURCE_POSITION("String.java", 1042)
 
2711
    if (_r6.i >= 0) goto label10;
 
2712
    XMLVM_SOURCE_POSITION("String.java", 1043)
 
2713
    _r6.i = 0;
 
2714
    label10:;
 
2715
    XMLVM_SOURCE_POSITION("String.java", 1045)
 
2716
    if (_r5.i < 0) goto label39;
 
2717
    if (_r5.i > _r3.i) goto label39;
 
2718
    XMLVM_SOURCE_POSITION("String.java", 1046)
 
2719
    XMLVM_CHECK_NPE(4)
 
2720
    _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_;
 
2721
    _r1.i = _r2.i + _r6.i;
 
2722
    label18:;
 
2723
    XMLVM_CHECK_NPE(4)
 
2724
    _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_;
 
2725
    XMLVM_CHECK_NPE(4)
 
2726
    _r3.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
2727
    _r2.i = _r2.i + _r3.i;
 
2728
    if (_r1.i >= _r2.i) goto label68;
 
2729
    XMLVM_SOURCE_POSITION("String.java", 1047)
 
2730
    XMLVM_CHECK_NPE(4)
 
2731
    _r2.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_;
 
2732
    XMLVM_CHECK_NPE(2)
 
2733
    XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i);
 
2734
    _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i];
 
2735
    if (_r2.i != _r5.i) goto label36;
 
2736
    XMLVM_SOURCE_POSITION("String.java", 1048)
 
2737
    XMLVM_CHECK_NPE(4)
 
2738
    _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_;
 
2739
    _r2.i = _r1.i - _r2.i;
 
2740
    label35:;
 
2741
    XMLVM_SOURCE_POSITION("String.java", 1062)
 
2742
    XMLVM_EXIT_METHOD()
 
2743
    return _r2.i;
 
2744
    label36:;
 
2745
    _r1.i = _r1.i + 1;
 
2746
    goto label18;
 
2747
    label39:;
 
2748
    XMLVM_SOURCE_POSITION("String.java", 1051)
 
2749
    if (_r5.i <= _r3.i) goto label68;
 
2750
    _r2.i = 1114111;
 
2751
    if (_r5.i > _r2.i) goto label68;
 
2752
    XMLVM_SOURCE_POSITION("String.java", 1052)
 
2753
    _r1 = _r6;
 
2754
    label47:;
 
2755
    XMLVM_CHECK_NPE(4)
 
2756
    _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
2757
    if (_r1.i >= _r2.i) goto label68;
 
2758
    XMLVM_SOURCE_POSITION("String.java", 1053)
 
2759
    XMLVM_CHECK_NPE(4)
 
2760
    _r0.i = java_lang_String_codePointAt___int(_r4.o, _r1.i);
 
2761
    if (_r0.i != _r5.i) goto label59;
 
2762
    XMLVM_SOURCE_POSITION("String.java", 1054)
 
2763
    _r2 = _r1;
 
2764
    XMLVM_SOURCE_POSITION("String.java", 1055)
 
2765
    goto label35;
 
2766
    label59:;
 
2767
    XMLVM_SOURCE_POSITION("String.java", 1056)
 
2768
    _r2.i = 65536;
 
2769
    if (_r0.i < _r2.i) goto label65;
 
2770
    XMLVM_SOURCE_POSITION("String.java", 1057)
 
2771
    _r1.i = _r1.i + 1;
 
2772
    label65:;
 
2773
    _r1.i = _r1.i + 1;
 
2774
    goto label47;
 
2775
    label68:;
 
2776
    _r2.i = -1;
 
2777
    goto label35;
 
2778
    //XMLVM_END_WRAPPER
 
2779
}
 
2780
 
 
2781
JAVA_INT java_lang_String_indexOf___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
2782
{
 
2783
    //XMLVM_BEGIN_WRAPPER[java_lang_String_indexOf___java_lang_String]
 
2784
    XMLVM_ENTER_METHOD("java.lang.String", "indexOf", "?")
 
2785
    XMLVMElem _r0;
 
2786
    XMLVMElem _r1;
 
2787
    XMLVMElem _r2;
 
2788
    _r1.o = me;
 
2789
    _r2.o = n1;
 
2790
    XMLVM_SOURCE_POSITION("String.java", 1078)
 
2791
    _r0.i = 0;
 
2792
    XMLVM_CHECK_NPE(1)
 
2793
    _r0.i = java_lang_String_indexOf___java_lang_String_int(_r1.o, _r2.o, _r0.i);
 
2794
    XMLVM_EXIT_METHOD()
 
2795
    return _r0.i;
 
2796
    //XMLVM_END_WRAPPER
 
2797
}
 
2798
 
 
2799
JAVA_INT java_lang_String_indexOf___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2)
 
2800
{
 
2801
    //XMLVM_BEGIN_WRAPPER[java_lang_String_indexOf___java_lang_String_int]
 
2802
    XMLVM_ENTER_METHOD("java.lang.String", "indexOf", "?")
 
2803
    XMLVMElem _r0;
 
2804
    XMLVMElem _r1;
 
2805
    XMLVMElem _r2;
 
2806
    XMLVMElem _r3;
 
2807
    XMLVMElem _r4;
 
2808
    XMLVMElem _r5;
 
2809
    XMLVMElem _r6;
 
2810
    XMLVMElem _r7;
 
2811
    XMLVMElem _r8;
 
2812
    XMLVMElem _r9;
 
2813
    XMLVMElem _r10;
 
2814
    XMLVMElem _r11;
 
2815
    XMLVMElem _r12;
 
2816
    XMLVMElem _r13;
 
2817
    _r11.o = me;
 
2818
    _r12.o = n1;
 
2819
    _r13.i = n2;
 
2820
    _r10.i = -1;
 
2821
    XMLVM_SOURCE_POSITION("String.java", 1096)
 
2822
    if (_r13.i >= 0) goto label4;
 
2823
    XMLVM_SOURCE_POSITION("String.java", 1097)
 
2824
    _r13.i = 0;
 
2825
    label4:;
 
2826
    XMLVM_SOURCE_POSITION("String.java", 1099)
 
2827
    XMLVM_CHECK_NPE(12)
 
2828
    _r5.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_;
 
2829
    if (_r5.i <= 0) goto label64;
 
2830
    XMLVM_SOURCE_POSITION("String.java", 1100)
 
2831
    XMLVM_SOURCE_POSITION("String.java", 1101)
 
2832
    _r8.i = _r5.i + _r13.i;
 
2833
    XMLVM_CHECK_NPE(11)
 
2834
    _r9.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
2835
    if (_r8.i <= _r9.i) goto label16;
 
2836
    _r8 = _r10;
 
2837
    label15:;
 
2838
    XMLVM_SOURCE_POSITION("String.java", 1102)
 
2839
    XMLVM_SOURCE_POSITION("String.java", 1123)
 
2840
    XMLVM_EXIT_METHOD()
 
2841
    return _r8.i;
 
2842
    label16:;
 
2843
    XMLVM_SOURCE_POSITION("String.java", 1104)
 
2844
    XMLVM_CHECK_NPE(12)
 
2845
    _r7.o = ((java_lang_String*) _r12.o)->fields.java_lang_String.value_;
 
2846
    XMLVM_SOURCE_POSITION("String.java", 1105)
 
2847
    XMLVM_CHECK_NPE(12)
 
2848
    _r6.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_;
 
2849
    XMLVM_SOURCE_POSITION("String.java", 1106)
 
2850
    XMLVM_CHECK_NPE(7)
 
2851
    XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r6.i);
 
2852
    _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i];
 
2853
    _r0.i = _r6.i + _r5.i;
 
2854
    label24:;
 
2855
    XMLVM_SOURCE_POSITION("String.java", 1107)
 
2856
    XMLVM_SOURCE_POSITION("String.java", 1109)
 
2857
    XMLVM_CHECK_NPE(11)
 
2858
    _r2.i = java_lang_String_indexOf___int_int(_r11.o, _r1.i, _r13.i);
 
2859
    if (_r2.i == _r10.i) goto label36;
 
2860
    XMLVM_SOURCE_POSITION("String.java", 1110)
 
2861
    _r8.i = _r5.i + _r2.i;
 
2862
    XMLVM_CHECK_NPE(11)
 
2863
    _r9.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
2864
    if (_r8.i <= _r9.i) goto label38;
 
2865
    label36:;
 
2866
    _r8 = _r10;
 
2867
    XMLVM_SOURCE_POSITION("String.java", 1111)
 
2868
    goto label15;
 
2869
    label38:;
 
2870
    XMLVM_SOURCE_POSITION("String.java", 1113)
 
2871
    XMLVM_CHECK_NPE(11)
 
2872
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.offset_;
 
2873
    _r3.i = _r8.i + _r2.i;
 
2874
    _r4 = _r6;
 
2875
    label43:;
 
2876
    XMLVM_SOURCE_POSITION("String.java", 1114)
 
2877
    _r4.i = _r4.i + 1;
 
2878
    if (_r4.i >= _r0.i) goto label57;
 
2879
    XMLVM_CHECK_NPE(11)
 
2880
    _r8.o = ((java_lang_String*) _r11.o)->fields.java_lang_String.value_;
 
2881
    _r3.i = _r3.i + 1;
 
2882
    XMLVM_CHECK_NPE(8)
 
2883
    XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r3.i);
 
2884
    _r8.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i];
 
2885
    XMLVM_CHECK_NPE(7)
 
2886
    XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r4.i);
 
2887
    _r9.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i];
 
2888
    if (_r8.i == _r9.i) goto label43;
 
2889
    label57:;
 
2890
    XMLVM_SOURCE_POSITION("String.java", 1117)
 
2891
    if (_r4.i != _r0.i) goto label61;
 
2892
    _r8 = _r2;
 
2893
    XMLVM_SOURCE_POSITION("String.java", 1118)
 
2894
    goto label15;
 
2895
    label61:;
 
2896
    XMLVM_SOURCE_POSITION("String.java", 1120)
 
2897
    _r13.i = _r2.i + 1;
 
2898
    XMLVM_SOURCE_POSITION("String.java", 1121)
 
2899
    goto label24;
 
2900
    label64:;
 
2901
    XMLVM_CHECK_NPE(11)
 
2902
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
2903
    if (_r13.i >= _r8.i) goto label70;
 
2904
    _r8 = _r13;
 
2905
    goto label15;
 
2906
    label70:;
 
2907
    XMLVM_CHECK_NPE(11)
 
2908
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
2909
    goto label15;
 
2910
    //XMLVM_END_WRAPPER
 
2911
}
 
2912
 
 
2913
JAVA_OBJECT java_lang_String_intern__(JAVA_OBJECT me)
 
2914
{
 
2915
    //XMLVM_BEGIN_WRAPPER[java_lang_String_intern__]
 
2916
    XMLVM_ENTER_METHOD("java.lang.String", "intern", "?")
 
2917
    XMLVMElem _r0;
 
2918
    _r0.o = me;
 
2919
    XMLVM_SOURCE_POSITION("String.java", 1136)
 
2920
    XMLVM_EXIT_METHOD()
 
2921
    return _r0.o;
 
2922
    //XMLVM_END_WRAPPER
 
2923
}
 
2924
 
 
2925
JAVA_INT java_lang_String_lastIndexOf___int(JAVA_OBJECT me, JAVA_INT n1)
 
2926
{
 
2927
    //XMLVM_BEGIN_WRAPPER[java_lang_String_lastIndexOf___int]
 
2928
    XMLVM_ENTER_METHOD("java.lang.String", "lastIndexOf", "?")
 
2929
    XMLVMElem _r0;
 
2930
    XMLVMElem _r1;
 
2931
    XMLVMElem _r2;
 
2932
    XMLVMElem _r3;
 
2933
    _r2.o = me;
 
2934
    _r3.i = n1;
 
2935
    XMLVM_SOURCE_POSITION("String.java", 1150)
 
2936
    XMLVM_CHECK_NPE(2)
 
2937
    _r0.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.count_;
 
2938
    _r1.i = 1;
 
2939
    _r0.i = _r0.i - _r1.i;
 
2940
    XMLVM_CHECK_NPE(2)
 
2941
    _r0.i = java_lang_String_lastIndexOf___int_int(_r2.o, _r3.i, _r0.i);
 
2942
    XMLVM_EXIT_METHOD()
 
2943
    return _r0.i;
 
2944
    //XMLVM_END_WRAPPER
 
2945
}
 
2946
 
 
2947
JAVA_INT java_lang_String_lastIndexOf___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2)
 
2948
{
 
2949
    //XMLVM_BEGIN_WRAPPER[java_lang_String_lastIndexOf___int_int]
 
2950
    XMLVM_ENTER_METHOD("java.lang.String", "lastIndexOf", "?")
 
2951
    XMLVMElem _r0;
 
2952
    XMLVMElem _r1;
 
2953
    XMLVMElem _r2;
 
2954
    XMLVMElem _r3;
 
2955
    XMLVMElem _r4;
 
2956
    XMLVMElem _r5;
 
2957
    XMLVMElem _r6;
 
2958
    XMLVMElem _r7;
 
2959
    _r5.o = me;
 
2960
    _r6.i = n1;
 
2961
    _r7.i = n2;
 
2962
    _r4.i = 65535;
 
2963
    XMLVM_SOURCE_POSITION("String.java", 1166)
 
2964
    if (_r7.i < 0) goto label67;
 
2965
    XMLVM_SOURCE_POSITION("String.java", 1167)
 
2966
    XMLVM_CHECK_NPE(5)
 
2967
    _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_;
 
2968
    if (_r7.i < _r2.i) goto label14;
 
2969
    XMLVM_SOURCE_POSITION("String.java", 1168)
 
2970
    XMLVM_CHECK_NPE(5)
 
2971
    _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_;
 
2972
    _r3.i = 1;
 
2973
    _r7.i = _r2.i - _r3.i;
 
2974
    label14:;
 
2975
    XMLVM_SOURCE_POSITION("String.java", 1170)
 
2976
    if (_r6.i < 0) goto label40;
 
2977
    if (_r6.i > _r4.i) goto label40;
 
2978
    XMLVM_SOURCE_POSITION("String.java", 1171)
 
2979
    XMLVM_CHECK_NPE(5)
 
2980
    _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_;
 
2981
    _r1.i = _r2.i + _r7.i;
 
2982
    label22:;
 
2983
    XMLVM_CHECK_NPE(5)
 
2984
    _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_;
 
2985
    if (_r1.i < _r2.i) goto label67;
 
2986
    XMLVM_SOURCE_POSITION("String.java", 1172)
 
2987
    XMLVM_CHECK_NPE(5)
 
2988
    _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
2989
    XMLVM_CHECK_NPE(2)
 
2990
    XMLVM_CHECK_ARRAY_BOUNDS(_r2.o, _r1.i);
 
2991
    _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r2.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i];
 
2992
    if (_r2.i != _r6.i) goto label37;
 
2993
    XMLVM_SOURCE_POSITION("String.java", 1173)
 
2994
    XMLVM_CHECK_NPE(5)
 
2995
    _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_;
 
2996
    _r2.i = _r1.i - _r2.i;
 
2997
    label36:;
 
2998
    XMLVM_SOURCE_POSITION("String.java", 1187)
 
2999
    XMLVM_EXIT_METHOD()
 
3000
    return _r2.i;
 
3001
    label37:;
 
3002
    _r1.i = _r1.i + -1;
 
3003
    goto label22;
 
3004
    label40:;
 
3005
    XMLVM_SOURCE_POSITION("String.java", 1176)
 
3006
    if (_r6.i <= _r4.i) goto label67;
 
3007
    _r2.i = 1114111;
 
3008
    if (_r6.i > _r2.i) goto label67;
 
3009
    XMLVM_SOURCE_POSITION("String.java", 1177)
 
3010
    _r1 = _r7;
 
3011
    label48:;
 
3012
    if (_r1.i < 0) goto label67;
 
3013
    XMLVM_SOURCE_POSITION("String.java", 1178)
 
3014
    XMLVM_CHECK_NPE(5)
 
3015
    _r0.i = java_lang_String_codePointAt___int(_r5.o, _r1.i);
 
3016
    if (_r0.i != _r6.i) goto label58;
 
3017
    XMLVM_SOURCE_POSITION("String.java", 1179)
 
3018
    _r2 = _r1;
 
3019
    XMLVM_SOURCE_POSITION("String.java", 1180)
 
3020
    goto label36;
 
3021
    label58:;
 
3022
    XMLVM_SOURCE_POSITION("String.java", 1181)
 
3023
    _r2.i = 65536;
 
3024
    if (_r0.i < _r2.i) goto label64;
 
3025
    XMLVM_SOURCE_POSITION("String.java", 1182)
 
3026
    _r1.i = _r1.i + -1;
 
3027
    label64:;
 
3028
    _r1.i = _r1.i + -1;
 
3029
    goto label48;
 
3030
    label67:;
 
3031
    _r2.i = -1;
 
3032
    goto label36;
 
3033
    //XMLVM_END_WRAPPER
 
3034
}
 
3035
 
 
3036
JAVA_INT java_lang_String_lastIndexOf___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
3037
{
 
3038
    //XMLVM_BEGIN_WRAPPER[java_lang_String_lastIndexOf___java_lang_String]
 
3039
    XMLVM_ENTER_METHOD("java.lang.String", "lastIndexOf", "?")
 
3040
    XMLVMElem _r0;
 
3041
    XMLVMElem _r1;
 
3042
    XMLVMElem _r2;
 
3043
    _r1.o = me;
 
3044
    _r2.o = n1;
 
3045
    XMLVM_SOURCE_POSITION("String.java", 1204)
 
3046
    XMLVM_CHECK_NPE(1)
 
3047
    _r0.i = ((java_lang_String*) _r1.o)->fields.java_lang_String.count_;
 
3048
    XMLVM_CHECK_NPE(1)
 
3049
    _r0.i = java_lang_String_lastIndexOf___java_lang_String_int(_r1.o, _r2.o, _r0.i);
 
3050
    XMLVM_EXIT_METHOD()
 
3051
    return _r0.i;
 
3052
    //XMLVM_END_WRAPPER
 
3053
}
 
3054
 
 
3055
JAVA_INT java_lang_String_lastIndexOf___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2)
 
3056
{
 
3057
    //XMLVM_BEGIN_WRAPPER[java_lang_String_lastIndexOf___java_lang_String_int]
 
3058
    XMLVM_ENTER_METHOD("java.lang.String", "lastIndexOf", "?")
 
3059
    XMLVMElem _r0;
 
3060
    XMLVMElem _r1;
 
3061
    XMLVMElem _r2;
 
3062
    XMLVMElem _r3;
 
3063
    XMLVMElem _r4;
 
3064
    XMLVMElem _r5;
 
3065
    XMLVMElem _r6;
 
3066
    XMLVMElem _r7;
 
3067
    XMLVMElem _r8;
 
3068
    XMLVMElem _r9;
 
3069
    XMLVMElem _r10;
 
3070
    XMLVMElem _r11;
 
3071
    XMLVMElem _r12;
 
3072
    XMLVMElem _r13;
 
3073
    _r11.o = me;
 
3074
    _r12.o = n1;
 
3075
    _r13.i = n2;
 
3076
    _r10.i = -1;
 
3077
    XMLVM_SOURCE_POSITION("String.java", 1222)
 
3078
    XMLVM_CHECK_NPE(12)
 
3079
    _r5.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_;
 
3080
    XMLVM_SOURCE_POSITION("String.java", 1223)
 
3081
    XMLVM_CHECK_NPE(11)
 
3082
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
3083
    if (_r5.i > _r8.i) goto label72;
 
3084
    if (_r13.i < 0) goto label72;
 
3085
    XMLVM_SOURCE_POSITION("String.java", 1224)
 
3086
    if (_r5.i <= 0) goto label63;
 
3087
    XMLVM_SOURCE_POSITION("String.java", 1225)
 
3088
    XMLVM_CHECK_NPE(11)
 
3089
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
3090
    _r8.i = _r8.i - _r5.i;
 
3091
    if (_r13.i <= _r8.i) goto label20;
 
3092
    XMLVM_SOURCE_POSITION("String.java", 1226)
 
3093
    XMLVM_CHECK_NPE(11)
 
3094
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
3095
    _r13.i = _r8.i - _r5.i;
 
3096
    label20:;
 
3097
    XMLVM_SOURCE_POSITION("String.java", 1229)
 
3098
    XMLVM_CHECK_NPE(12)
 
3099
    _r7.o = ((java_lang_String*) _r12.o)->fields.java_lang_String.value_;
 
3100
    XMLVM_SOURCE_POSITION("String.java", 1230)
 
3101
    XMLVM_CHECK_NPE(12)
 
3102
    _r6.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_;
 
3103
    XMLVM_SOURCE_POSITION("String.java", 1231)
 
3104
    XMLVM_CHECK_NPE(7)
 
3105
    XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r6.i);
 
3106
    _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i];
 
3107
    _r0.i = _r6.i + _r5.i;
 
3108
    label28:;
 
3109
    XMLVM_SOURCE_POSITION("String.java", 1232)
 
3110
    XMLVM_SOURCE_POSITION("String.java", 1234)
 
3111
    XMLVM_CHECK_NPE(11)
 
3112
    _r2.i = java_lang_String_lastIndexOf___int_int(_r11.o, _r1.i, _r13.i);
 
3113
    if (_r2.i != _r10.i) goto label36;
 
3114
    XMLVM_SOURCE_POSITION("String.java", 1235)
 
3115
    _r8 = _r10;
 
3116
    label35:;
 
3117
    XMLVM_SOURCE_POSITION("String.java", 1236)
 
3118
    XMLVM_SOURCE_POSITION("String.java", 1250)
 
3119
    XMLVM_EXIT_METHOD()
 
3120
    return _r8.i;
 
3121
    label36:;
 
3122
    XMLVM_SOURCE_POSITION("String.java", 1238)
 
3123
    XMLVM_CHECK_NPE(11)
 
3124
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.offset_;
 
3125
    _r3.i = _r8.i + _r2.i;
 
3126
    _r4 = _r6;
 
3127
    label41:;
 
3128
    XMLVM_SOURCE_POSITION("String.java", 1239)
 
3129
    _r4.i = _r4.i + 1;
 
3130
    if (_r4.i >= _r0.i) goto label55;
 
3131
    XMLVM_CHECK_NPE(11)
 
3132
    _r8.o = ((java_lang_String*) _r11.o)->fields.java_lang_String.value_;
 
3133
    _r3.i = _r3.i + 1;
 
3134
    XMLVM_CHECK_NPE(8)
 
3135
    XMLVM_CHECK_ARRAY_BOUNDS(_r8.o, _r3.i);
 
3136
    _r8.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r8.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i];
 
3137
    XMLVM_CHECK_NPE(7)
 
3138
    XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r4.i);
 
3139
    _r9.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i];
 
3140
    if (_r8.i == _r9.i) goto label41;
 
3141
    label55:;
 
3142
    XMLVM_SOURCE_POSITION("String.java", 1242)
 
3143
    if (_r4.i != _r0.i) goto label59;
 
3144
    _r8 = _r2;
 
3145
    XMLVM_SOURCE_POSITION("String.java", 1243)
 
3146
    goto label35;
 
3147
    label59:;
 
3148
    XMLVM_SOURCE_POSITION("String.java", 1245)
 
3149
    _r8.i = 1;
 
3150
    _r13.i = _r2.i - _r8.i;
 
3151
    XMLVM_SOURCE_POSITION("String.java", 1246)
 
3152
    goto label28;
 
3153
    label63:;
 
3154
    XMLVM_SOURCE_POSITION("String.java", 1248)
 
3155
    XMLVM_CHECK_NPE(11)
 
3156
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
3157
    if (_r13.i >= _r8.i) goto label69;
 
3158
    _r8 = _r13;
 
3159
    goto label35;
 
3160
    label69:;
 
3161
    XMLVM_CHECK_NPE(11)
 
3162
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
3163
    goto label35;
 
3164
    label72:;
 
3165
    _r8 = _r10;
 
3166
    goto label35;
 
3167
    //XMLVM_END_WRAPPER
 
3168
}
 
3169
 
 
3170
JAVA_INT java_lang_String_length__(JAVA_OBJECT me)
 
3171
{
 
3172
    //XMLVM_BEGIN_WRAPPER[java_lang_String_length__]
 
3173
    XMLVM_ENTER_METHOD("java.lang.String", "length", "?")
 
3174
    XMLVMElem _r0;
 
3175
    XMLVMElem _r1;
 
3176
    _r1.o = me;
 
3177
    XMLVM_SOURCE_POSITION("String.java", 1259)
 
3178
    XMLVM_CHECK_NPE(1)
 
3179
    _r0.i = ((java_lang_String*) _r1.o)->fields.java_lang_String.count_;
 
3180
    XMLVM_EXIT_METHOD()
 
3181
    return _r0.i;
 
3182
    //XMLVM_END_WRAPPER
 
3183
}
 
3184
 
 
3185
JAVA_BOOLEAN java_lang_String_regionMatches___int_java_lang_String_int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4)
 
3186
{
 
3187
    //XMLVM_BEGIN_WRAPPER[java_lang_String_regionMatches___int_java_lang_String_int_int]
 
3188
    XMLVM_ENTER_METHOD("java.lang.String", "regionMatches", "?")
 
3189
    XMLVMElem _r0;
 
3190
    XMLVMElem _r1;
 
3191
    XMLVMElem _r2;
 
3192
    XMLVMElem _r3;
 
3193
    XMLVMElem _r4;
 
3194
    XMLVMElem _r5;
 
3195
    XMLVMElem _r6;
 
3196
    XMLVMElem _r7;
 
3197
    XMLVMElem _r8;
 
3198
    XMLVMElem _r9;
 
3199
    XMLVMElem _r10;
 
3200
    XMLVMElem _r11;
 
3201
    XMLVMElem _r12;
 
3202
    _r8.o = me;
 
3203
    _r9.i = n1;
 
3204
    _r10.o = n2;
 
3205
    _r11.i = n3;
 
3206
    _r12.i = n4;
 
3207
    _r7.i = 1;
 
3208
    _r6.i = 0;
 
3209
    XMLVM_SOURCE_POSITION("String.java", 1281)
 
3210
    XMLVM_CHECK_NPE(10)
 
3211
    _r3.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_;
 
3212
    _r3.i = _r3.i - _r11.i;
 
3213
    if (_r3.i < _r12.i) goto label9;
 
3214
    if (_r11.i >= 0) goto label11;
 
3215
    label9:;
 
3216
    _r3 = _r6;
 
3217
    label10:;
 
3218
    XMLVM_SOURCE_POSITION("String.java", 1282)
 
3219
    XMLVM_SOURCE_POSITION("String.java", 1296)
 
3220
    XMLVM_EXIT_METHOD()
 
3221
    return _r3.i;
 
3222
    label11:;
 
3223
    XMLVM_SOURCE_POSITION("String.java", 1284)
 
3224
    if (_r9.i < 0) goto label18;
 
3225
    XMLVM_CHECK_NPE(8)
 
3226
    _r3.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_;
 
3227
    _r3.i = _r3.i - _r9.i;
 
3228
    if (_r3.i >= _r12.i) goto label20;
 
3229
    label18:;
 
3230
    _r3 = _r6;
 
3231
    XMLVM_SOURCE_POSITION("String.java", 1285)
 
3232
    goto label10;
 
3233
    label20:;
 
3234
    XMLVM_SOURCE_POSITION("String.java", 1287)
 
3235
    if (_r12.i > 0) goto label24;
 
3236
    _r3 = _r7;
 
3237
    XMLVM_SOURCE_POSITION("String.java", 1288)
 
3238
    goto label10;
 
3239
    label24:;
 
3240
    XMLVM_SOURCE_POSITION("String.java", 1290)
 
3241
    XMLVM_CHECK_NPE(8)
 
3242
    _r3.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.offset_;
 
3243
    _r1.i = _r3.i + _r9.i;
 
3244
    XMLVM_CHECK_NPE(10)
 
3245
    _r3.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.offset_;
 
3246
    _r2.i = _r3.i + _r11.i;
 
3247
    _r0.i = 0;
 
3248
    label33:;
 
3249
    XMLVM_SOURCE_POSITION("String.java", 1291)
 
3250
    if (_r0.i >= _r12.i) goto label54;
 
3251
    XMLVM_SOURCE_POSITION("String.java", 1292)
 
3252
    XMLVM_CHECK_NPE(8)
 
3253
    _r3.o = ((java_lang_String*) _r8.o)->fields.java_lang_String.value_;
 
3254
    _r4.i = _r1.i + _r0.i;
 
3255
    XMLVM_CHECK_NPE(3)
 
3256
    XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r4.i);
 
3257
    _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r4.i];
 
3258
    XMLVM_CHECK_NPE(10)
 
3259
    _r4.o = ((java_lang_String*) _r10.o)->fields.java_lang_String.value_;
 
3260
    _r5.i = _r2.i + _r0.i;
 
3261
    XMLVM_CHECK_NPE(4)
 
3262
    XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r5.i);
 
3263
    _r4.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i];
 
3264
    if (_r3.i == _r4.i) goto label51;
 
3265
    _r3 = _r6;
 
3266
    XMLVM_SOURCE_POSITION("String.java", 1293)
 
3267
    goto label10;
 
3268
    label51:;
 
3269
    _r0.i = _r0.i + 1;
 
3270
    goto label33;
 
3271
    label54:;
 
3272
    _r3 = _r7;
 
3273
    goto label10;
 
3274
    //XMLVM_END_WRAPPER
 
3275
}
 
3276
 
 
3277
JAVA_BOOLEAN java_lang_String_regionMatches___boolean_int_java_lang_String_int_int(JAVA_OBJECT me, JAVA_BOOLEAN n1, JAVA_INT n2, JAVA_OBJECT n3, JAVA_INT n4, JAVA_INT n5)
 
3278
{
 
3279
    //XMLVM_BEGIN_WRAPPER[java_lang_String_regionMatches___boolean_int_java_lang_String_int_int]
 
3280
    XMLVM_ENTER_METHOD("java.lang.String", "regionMatches", "?")
 
3281
    XMLVMElem _r0;
 
3282
    XMLVMElem _r1;
 
3283
    XMLVMElem _r2;
 
3284
    XMLVMElem _r3;
 
3285
    XMLVMElem _r4;
 
3286
    XMLVMElem _r5;
 
3287
    XMLVMElem _r6;
 
3288
    XMLVMElem _r7;
 
3289
    XMLVMElem _r8;
 
3290
    XMLVMElem _r9;
 
3291
    XMLVMElem _r10;
 
3292
    XMLVMElem _r11;
 
3293
    XMLVMElem _r12;
 
3294
    XMLVMElem _r13;
 
3295
    XMLVMElem _r14;
 
3296
    _r9.o = me;
 
3297
    _r10.i = n1;
 
3298
    _r11.i = n2;
 
3299
    _r12.o = n3;
 
3300
    _r13.i = n4;
 
3301
    _r14.i = n5;
 
3302
    _r8.i = 0;
 
3303
    XMLVM_SOURCE_POSITION("String.java", 1321)
 
3304
    if (_r10.i != 0) goto label8;
 
3305
    XMLVM_SOURCE_POSITION("String.java", 1322)
 
3306
    XMLVM_CHECK_NPE(9)
 
3307
    _r6.i = java_lang_String_regionMatches___int_java_lang_String_int_int(_r9.o, _r11.i, _r12.o, _r13.i, _r14.i);
 
3308
    label7:;
 
3309
    XMLVM_SOURCE_POSITION("String.java", 1346)
 
3310
    XMLVM_EXIT_METHOD()
 
3311
    return _r6.i;
 
3312
    label8:;
 
3313
    XMLVM_SOURCE_POSITION("String.java", 1325)
 
3314
    if (_r12.o == JAVA_NULL) goto label80;
 
3315
    XMLVM_SOURCE_POSITION("String.java", 1326)
 
3316
    if (_r11.i < 0) goto label17;
 
3317
    XMLVM_CHECK_NPE(9)
 
3318
    _r6.i = ((java_lang_String*) _r9.o)->fields.java_lang_String.count_;
 
3319
    _r6.i = _r6.i - _r11.i;
 
3320
    if (_r14.i <= _r6.i) goto label19;
 
3321
    label17:;
 
3322
    _r6 = _r8;
 
3323
    XMLVM_SOURCE_POSITION("String.java", 1327)
 
3324
    goto label7;
 
3325
    label19:;
 
3326
    XMLVM_SOURCE_POSITION("String.java", 1329)
 
3327
    if (_r13.i < 0) goto label26;
 
3328
    XMLVM_CHECK_NPE(12)
 
3329
    _r6.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.count_;
 
3330
    _r6.i = _r6.i - _r13.i;
 
3331
    if (_r14.i <= _r6.i) goto label28;
 
3332
    label26:;
 
3333
    _r6 = _r8;
 
3334
    XMLVM_SOURCE_POSITION("String.java", 1330)
 
3335
    goto label7;
 
3336
    label28:;
 
3337
    XMLVM_SOURCE_POSITION("String.java", 1333)
 
3338
    XMLVM_CHECK_NPE(9)
 
3339
    _r6.i = ((java_lang_String*) _r9.o)->fields.java_lang_String.offset_;
 
3340
    _r11.i = _r11.i + _r6.i;
 
3341
    XMLVM_SOURCE_POSITION("String.java", 1334)
 
3342
    XMLVM_CHECK_NPE(12)
 
3343
    _r6.i = ((java_lang_String*) _r12.o)->fields.java_lang_String.offset_;
 
3344
    _r13.i = _r13.i + _r6.i;
 
3345
    _r2.i = _r11.i + _r14.i;
 
3346
    XMLVM_SOURCE_POSITION("String.java", 1337)
 
3347
    XMLVM_CHECK_NPE(12)
 
3348
    _r4.o = ((java_lang_String*) _r12.o)->fields.java_lang_String.value_;
 
3349
    _r3 = _r13;
 
3350
    _r5 = _r11;
 
3351
    label40:;
 
3352
    XMLVM_SOURCE_POSITION("String.java", 1338)
 
3353
    if (_r5.i >= _r2.i) goto label76;
 
3354
    XMLVM_SOURCE_POSITION("String.java", 1339)
 
3355
    XMLVM_CHECK_NPE(9)
 
3356
    _r6.o = ((java_lang_String*) _r9.o)->fields.java_lang_String.value_;
 
3357
    _r11.i = _r5.i + 1;
 
3358
    XMLVM_CHECK_NPE(6)
 
3359
    XMLVM_CHECK_ARRAY_BOUNDS(_r6.o, _r5.i);
 
3360
    _r0.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r6.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r5.i];
 
3361
    _r13.i = _r3.i + 1;
 
3362
    XMLVM_CHECK_NPE(4)
 
3363
    XMLVM_CHECK_ARRAY_BOUNDS(_r4.o, _r3.i);
 
3364
    _r1.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r4.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i];
 
3365
    if (_r0.i == _r1.i) goto label86;
 
3366
    XMLVM_CHECK_NPE(9)
 
3367
    _r6.i = java_lang_String_toUpperCase___char(_r9.o, _r0.i);
 
3368
    XMLVM_CHECK_NPE(9)
 
3369
    _r7.i = java_lang_String_toUpperCase___char(_r9.o, _r1.i);
 
3370
    if (_r6.i == _r7.i) goto label86;
 
3371
    XMLVM_CHECK_NPE(9)
 
3372
    _r6.i = java_lang_String_toLowerCase___char(_r9.o, _r0.i);
 
3373
    XMLVM_CHECK_NPE(9)
 
3374
    _r7.i = java_lang_String_toLowerCase___char(_r9.o, _r1.i);
 
3375
    if (_r6.i == _r7.i) goto label86;
 
3376
    _r6 = _r8;
 
3377
    XMLVM_SOURCE_POSITION("String.java", 1343)
 
3378
    goto label7;
 
3379
    label76:;
 
3380
    _r6.i = 1;
 
3381
    _r13 = _r3;
 
3382
    _r11 = _r5;
 
3383
    goto label7;
 
3384
    label80:;
 
3385
    XMLVM_SOURCE_POSITION("String.java", 1348)
 
3386
    _r6.o = __NEW_java_lang_NullPointerException();
 
3387
    XMLVM_CHECK_NPE(6)
 
3388
    java_lang_NullPointerException___INIT___(_r6.o);
 
3389
    XMLVM_THROW_CUSTOM(_r6.o)
 
3390
    label86:;
 
3391
    _r3 = _r13;
 
3392
    _r5 = _r11;
 
3393
    goto label40;
 
3394
    //XMLVM_END_WRAPPER
 
3395
}
 
3396
 
 
3397
JAVA_OBJECT java_lang_String_replace___char_char(JAVA_OBJECT me, JAVA_CHAR n1, JAVA_CHAR n2)
 
3398
{
 
3399
    //XMLVM_BEGIN_WRAPPER[java_lang_String_replace___char_char]
 
3400
    XMLVM_ENTER_METHOD("java.lang.String", "replace", "?")
 
3401
    XMLVMElem _r0;
 
3402
    XMLVMElem _r1;
 
3403
    XMLVMElem _r2;
 
3404
    XMLVMElem _r3;
 
3405
    XMLVMElem _r4;
 
3406
    XMLVMElem _r5;
 
3407
    XMLVMElem _r6;
 
3408
    XMLVMElem _r7;
 
3409
    XMLVMElem _r8;
 
3410
    XMLVMElem _r9;
 
3411
    XMLVMElem _r10;
 
3412
    _r8.o = me;
 
3413
    _r9.i = n1;
 
3414
    _r10.i = n2;
 
3415
    _r7.i = -1;
 
3416
    _r6.i = 0;
 
3417
    XMLVM_SOURCE_POSITION("String.java", 1362)
 
3418
    XMLVM_CHECK_NPE(8)
 
3419
    _r1.i = java_lang_String_indexOf___int_int(_r8.o, _r9.i, _r6.i);
 
3420
    if (_r1.i != _r7.i) goto label10;
 
3421
    XMLVM_SOURCE_POSITION("String.java", 1363)
 
3422
    _r3 = _r8;
 
3423
    label9:;
 
3424
    XMLVM_SOURCE_POSITION("String.java", 1364)
 
3425
    XMLVM_SOURCE_POSITION("String.java", 1372)
 
3426
    XMLVM_EXIT_METHOD()
 
3427
    return _r3.o;
 
3428
    label10:;
 
3429
    XMLVM_SOURCE_POSITION("String.java", 1367)
 
3430
    XMLVM_CHECK_NPE(8)
 
3431
    _r3.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_;
 
3432
    XMLVM_CLASS_INIT(char)
 
3433
    _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r3.i);
 
3434
    XMLVM_SOURCE_POSITION("String.java", 1368)
 
3435
    XMLVM_CHECK_NPE(8)
 
3436
    _r3.o = ((java_lang_String*) _r8.o)->fields.java_lang_String.value_;
 
3437
    XMLVM_CHECK_NPE(8)
 
3438
    _r4.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.offset_;
 
3439
    XMLVM_CHECK_NPE(8)
 
3440
    _r5.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_;
 
3441
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r3.o, _r4.i, _r0.o, _r6.i, _r5.i);
 
3442
    label23:;
 
3443
    XMLVM_SOURCE_POSITION("String.java", 1370)
 
3444
    _r2.i = _r1.i + 1;
 
3445
    XMLVM_CHECK_NPE(0)
 
3446
    XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r1.i);
 
3447
    ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i] = _r10.i;
 
3448
    XMLVM_SOURCE_POSITION("String.java", 1371)
 
3449
    XMLVM_CHECK_NPE(8)
 
3450
    _r1.i = java_lang_String_indexOf___int_int(_r8.o, _r9.i, _r2.i);
 
3451
    if (_r1.i != _r7.i) goto label23;
 
3452
    _r3.o = __NEW_java_lang_String();
 
3453
    XMLVM_CHECK_NPE(8)
 
3454
    _r4.i = ((java_lang_String*) _r8.o)->fields.java_lang_String.count_;
 
3455
    XMLVM_CHECK_NPE(3)
 
3456
    java_lang_String___INIT____int_int_char_1ARRAY(_r3.o, _r6.i, _r4.i, _r0.o);
 
3457
    goto label9;
 
3458
    //XMLVM_END_WRAPPER
 
3459
}
 
3460
 
 
3461
JAVA_OBJECT java_lang_String_replace___java_lang_CharSequence_java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2)
 
3462
{
 
3463
    //XMLVM_BEGIN_WRAPPER[java_lang_String_replace___java_lang_CharSequence_java_lang_CharSequence]
 
3464
    XMLVM_ENTER_METHOD("java.lang.String", "replace", "?")
 
3465
    XMLVMElem _r0;
 
3466
    XMLVMElem _r1;
 
3467
    XMLVMElem _r2;
 
3468
    XMLVMElem _r3;
 
3469
    XMLVMElem _r4;
 
3470
    XMLVMElem _r5;
 
3471
    XMLVMElem _r6;
 
3472
    XMLVMElem _r7;
 
3473
    XMLVMElem _r8;
 
3474
    XMLVMElem _r9;
 
3475
    XMLVMElem _r10;
 
3476
    XMLVMElem _r11;
 
3477
    XMLVMElem _r12;
 
3478
    XMLVMElem _r13;
 
3479
    _r11.o = me;
 
3480
    _r12.o = n1;
 
3481
    _r13.o = n2;
 
3482
    _r10.i = -1;
 
3483
    XMLVM_SOURCE_POSITION("String.java", 1389)
 
3484
    if (_r12.o != JAVA_NULL) goto label11;
 
3485
    XMLVM_SOURCE_POSITION("String.java", 1390)
 
3486
    _r7.o = __NEW_java_lang_NullPointerException();
 
3487
    // "target should not be null"
 
3488
    _r8.o = xmlvm_create_java_string_from_pool(176);
 
3489
    XMLVM_CHECK_NPE(7)
 
3490
    java_lang_NullPointerException___INIT____java_lang_String(_r7.o, _r8.o);
 
3491
    XMLVM_THROW_CUSTOM(_r7.o)
 
3492
    label11:;
 
3493
    XMLVM_SOURCE_POSITION("String.java", 1392)
 
3494
    if (_r13.o != JAVA_NULL) goto label21;
 
3495
    XMLVM_SOURCE_POSITION("String.java", 1393)
 
3496
    _r7.o = __NEW_java_lang_NullPointerException();
 
3497
    // "replacement should not be null"
 
3498
    _r8.o = xmlvm_create_java_string_from_pool(177);
 
3499
    XMLVM_CHECK_NPE(7)
 
3500
    java_lang_NullPointerException___INIT____java_lang_String(_r7.o, _r8.o);
 
3501
    XMLVM_THROW_CUSTOM(_r7.o)
 
3502
    label21:;
 
3503
    XMLVM_SOURCE_POSITION("String.java", 1395)
 
3504
    //java_lang_Object_toString__[5]
 
3505
    XMLVM_CHECK_NPE(12)
 
3506
    _r6.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r12.o)->tib->vtable[5])(_r12.o);
 
3507
    _r7.i = 0;
 
3508
    XMLVM_SOURCE_POSITION("String.java", 1396)
 
3509
    XMLVM_CHECK_NPE(11)
 
3510
    _r2.i = java_lang_String_indexOf___java_lang_String_int(_r11.o, _r6.o, _r7.i);
 
3511
    if (_r2.i != _r10.i) goto label34;
 
3512
    XMLVM_SOURCE_POSITION("String.java", 1398)
 
3513
    _r7 = _r11;
 
3514
    label33:;
 
3515
    XMLVM_SOURCE_POSITION("String.java", 1399)
 
3516
    XMLVM_SOURCE_POSITION("String.java", 1426)
 
3517
    XMLVM_EXIT_METHOD()
 
3518
    return _r7.o;
 
3519
    label34:;
 
3520
    XMLVM_SOURCE_POSITION("String.java", 1401)
 
3521
    //java_lang_Object_toString__[5]
 
3522
    XMLVM_CHECK_NPE(13)
 
3523
    _r3.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r13.o)->tib->vtable[5])(_r13.o);
 
3524
    XMLVM_SOURCE_POSITION("String.java", 1405)
 
3525
    // ""
 
3526
    _r7.o = xmlvm_create_java_string_from_pool(21);
 
3527
    //java_lang_String_equals___java_lang_Object[1]
 
3528
    XMLVM_CHECK_NPE(7)
 
3529
    _r7.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r7.o)->tib->vtable[1])(_r7.o, _r6.o);
 
3530
    if (_r7.i == 0) goto label92;
 
3531
    XMLVM_SOURCE_POSITION("String.java", 1406)
 
3532
    _r0.o = __NEW_java_lang_StringBuilder();
 
3533
    XMLVM_CHECK_NPE(11)
 
3534
    _r7.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
3535
    //java_lang_String_length__[8]
 
3536
    XMLVM_CHECK_NPE(3)
 
3537
    _r8.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o);
 
3538
    XMLVM_CHECK_NPE(11)
 
3539
    _r9.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
3540
    _r9.i = _r9.i + 1;
 
3541
    _r8.i = _r8.i * _r9.i;
 
3542
    _r7.i = _r7.i + _r8.i;
 
3543
    XMLVM_CHECK_NPE(0)
 
3544
    java_lang_StringBuilder___INIT____int(_r0.o, _r7.i);
 
3545
    XMLVM_SOURCE_POSITION("String.java", 1407)
 
3546
    XMLVM_CHECK_NPE(0)
 
3547
    java_lang_StringBuilder_append___java_lang_String(_r0.o, _r3.o);
 
3548
    XMLVM_SOURCE_POSITION("String.java", 1408)
 
3549
    _r1.i = 0;
 
3550
    label67:;
 
3551
    XMLVM_CHECK_NPE(11)
 
3552
    _r7.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
3553
    if (_r1.i >= _r7.i) goto label87;
 
3554
    XMLVM_SOURCE_POSITION("String.java", 1409)
 
3555
    XMLVM_CHECK_NPE(11)
 
3556
    _r7.o = ((java_lang_String*) _r11.o)->fields.java_lang_String.value_;
 
3557
    XMLVM_CHECK_NPE(11)
 
3558
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.offset_;
 
3559
    _r8.i = _r8.i + _r1.i;
 
3560
    XMLVM_CHECK_NPE(7)
 
3561
    XMLVM_CHECK_ARRAY_BOUNDS(_r7.o, _r8.i);
 
3562
    _r7.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r7.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r8.i];
 
3563
    //java_lang_StringBuilder_append___char[6]
 
3564
    XMLVM_CHECK_NPE(0)
 
3565
    (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r7.i);
 
3566
    XMLVM_SOURCE_POSITION("String.java", 1410)
 
3567
    XMLVM_CHECK_NPE(0)
 
3568
    java_lang_StringBuilder_append___java_lang_String(_r0.o, _r3.o);
 
3569
    _r1.i = _r1.i + 1;
 
3570
    goto label67;
 
3571
    label87:;
 
3572
    XMLVM_SOURCE_POSITION("String.java", 1412)
 
3573
    //java_lang_StringBuilder_toString__[5]
 
3574
    XMLVM_CHECK_NPE(0)
 
3575
    _r7.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o);
 
3576
    goto label33;
 
3577
    label92:;
 
3578
    XMLVM_SOURCE_POSITION("String.java", 1415)
 
3579
    _r0.o = __NEW_java_lang_StringBuilder();
 
3580
    XMLVM_CHECK_NPE(11)
 
3581
    _r7.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
3582
    //java_lang_String_length__[8]
 
3583
    XMLVM_CHECK_NPE(3)
 
3584
    _r8.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r3.o)->tib->vtable[8])(_r3.o);
 
3585
    _r7.i = _r7.i + _r8.i;
 
3586
    XMLVM_CHECK_NPE(0)
 
3587
    java_lang_StringBuilder___INIT____int(_r0.o, _r7.i);
 
3588
    XMLVM_SOURCE_POSITION("String.java", 1416)
 
3589
    XMLVM_CHECK_NPE(12)
 
3590
    _r5.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r12.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__])(_r12.o);
 
3591
    _r4.i = 0;
 
3592
    label109:;
 
3593
    XMLVM_SOURCE_POSITION("String.java", 1417)
 
3594
    XMLVM_SOURCE_POSITION("String.java", 1419)
 
3595
    XMLVM_CHECK_NPE(11)
 
3596
    _r7.o = ((java_lang_String*) _r11.o)->fields.java_lang_String.value_;
 
3597
    XMLVM_CHECK_NPE(11)
 
3598
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.offset_;
 
3599
    _r8.i = _r8.i + _r4.i;
 
3600
    _r9.i = _r2.i - _r4.i;
 
3601
    XMLVM_CHECK_NPE(0)
 
3602
    java_lang_StringBuilder_append___char_1ARRAY_int_int(_r0.o, _r7.o, _r8.i, _r9.i);
 
3603
    XMLVM_SOURCE_POSITION("String.java", 1420)
 
3604
    XMLVM_CHECK_NPE(0)
 
3605
    java_lang_StringBuilder_append___java_lang_String(_r0.o, _r3.o);
 
3606
    XMLVM_SOURCE_POSITION("String.java", 1421)
 
3607
    _r4.i = _r2.i + _r5.i;
 
3608
    XMLVM_SOURCE_POSITION("String.java", 1422)
 
3609
    XMLVM_CHECK_NPE(11)
 
3610
    _r2.i = java_lang_String_indexOf___java_lang_String_int(_r11.o, _r6.o, _r4.i);
 
3611
    if (_r2.i != _r10.i) goto label109;
 
3612
    XMLVM_SOURCE_POSITION("String.java", 1424)
 
3613
    XMLVM_CHECK_NPE(11)
 
3614
    _r7.o = ((java_lang_String*) _r11.o)->fields.java_lang_String.value_;
 
3615
    XMLVM_CHECK_NPE(11)
 
3616
    _r8.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.offset_;
 
3617
    _r8.i = _r8.i + _r4.i;
 
3618
    XMLVM_CHECK_NPE(11)
 
3619
    _r9.i = ((java_lang_String*) _r11.o)->fields.java_lang_String.count_;
 
3620
    _r9.i = _r9.i - _r4.i;
 
3621
    XMLVM_CHECK_NPE(0)
 
3622
    java_lang_StringBuilder_append___char_1ARRAY_int_int(_r0.o, _r7.o, _r8.i, _r9.i);
 
3623
    //java_lang_StringBuilder_toString__[5]
 
3624
    XMLVM_CHECK_NPE(0)
 
3625
    _r7.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o);
 
3626
    goto label33;
 
3627
    //XMLVM_END_WRAPPER
 
3628
}
 
3629
 
 
3630
JAVA_BOOLEAN java_lang_String_startsWith___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
3631
{
 
3632
    //XMLVM_BEGIN_WRAPPER[java_lang_String_startsWith___java_lang_String]
 
3633
    XMLVM_ENTER_METHOD("java.lang.String", "startsWith", "?")
 
3634
    XMLVMElem _r0;
 
3635
    XMLVMElem _r1;
 
3636
    XMLVMElem _r2;
 
3637
    _r1.o = me;
 
3638
    _r2.o = n1;
 
3639
    XMLVM_SOURCE_POSITION("String.java", 1441)
 
3640
    _r0.i = 0;
 
3641
    XMLVM_CHECK_NPE(1)
 
3642
    _r0.i = java_lang_String_startsWith___java_lang_String_int(_r1.o, _r2.o, _r0.i);
 
3643
    XMLVM_EXIT_METHOD()
 
3644
    return _r0.i;
 
3645
    //XMLVM_END_WRAPPER
 
3646
}
 
3647
 
 
3648
JAVA_BOOLEAN java_lang_String_startsWith___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2)
 
3649
{
 
3650
    //XMLVM_BEGIN_WRAPPER[java_lang_String_startsWith___java_lang_String_int]
 
3651
    XMLVM_ENTER_METHOD("java.lang.String", "startsWith", "?")
 
3652
    XMLVMElem _r0;
 
3653
    XMLVMElem _r1;
 
3654
    XMLVMElem _r2;
 
3655
    XMLVMElem _r3;
 
3656
    XMLVMElem _r4;
 
3657
    _r2.o = me;
 
3658
    _r3.o = n1;
 
3659
    _r4.i = n2;
 
3660
    XMLVM_SOURCE_POSITION("String.java", 1458)
 
3661
    _r0.i = 0;
 
3662
    XMLVM_CHECK_NPE(3)
 
3663
    _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_;
 
3664
    XMLVM_CHECK_NPE(2)
 
3665
    _r0.i = java_lang_String_regionMatches___int_java_lang_String_int_int(_r2.o, _r4.i, _r3.o, _r0.i, _r1.i);
 
3666
    XMLVM_EXIT_METHOD()
 
3667
    return _r0.i;
 
3668
    //XMLVM_END_WRAPPER
 
3669
}
 
3670
 
 
3671
JAVA_OBJECT java_lang_String_substring___int(JAVA_OBJECT me, JAVA_INT n1)
 
3672
{
 
3673
    //XMLVM_BEGIN_WRAPPER[java_lang_String_substring___int]
 
3674
    XMLVM_ENTER_METHOD("java.lang.String", "substring", "?")
 
3675
    XMLVMElem _r0;
 
3676
    XMLVMElem _r1;
 
3677
    XMLVMElem _r2;
 
3678
    XMLVMElem _r3;
 
3679
    XMLVMElem _r4;
 
3680
    XMLVMElem _r5;
 
3681
    _r4.o = me;
 
3682
    _r5.i = n1;
 
3683
    XMLVM_SOURCE_POSITION("String.java", 1472)
 
3684
    if (_r5.i != 0) goto label4;
 
3685
    _r0 = _r4;
 
3686
    label3:;
 
3687
    XMLVM_SOURCE_POSITION("String.java", 1473)
 
3688
    XMLVM_SOURCE_POSITION("String.java", 1476)
 
3689
    XMLVM_EXIT_METHOD()
 
3690
    return _r0.o;
 
3691
    label4:;
 
3692
    XMLVM_SOURCE_POSITION("String.java", 1475)
 
3693
    if (_r5.i < 0) goto label24;
 
3694
    XMLVM_CHECK_NPE(4)
 
3695
    _r0.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
3696
    if (_r5.i > _r0.i) goto label24;
 
3697
    _r0.o = __NEW_java_lang_String();
 
3698
    XMLVM_CHECK_NPE(4)
 
3699
    _r1.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_;
 
3700
    _r1.i = _r1.i + _r5.i;
 
3701
    XMLVM_CHECK_NPE(4)
 
3702
    _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
3703
    _r2.i = _r2.i - _r5.i;
 
3704
    XMLVM_CHECK_NPE(4)
 
3705
    _r3.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_;
 
3706
    XMLVM_CHECK_NPE(0)
 
3707
    java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r1.i, _r2.i, _r3.o);
 
3708
    goto label3;
 
3709
    label24:;
 
3710
    XMLVM_SOURCE_POSITION("String.java", 1478)
 
3711
 
 
3712
    
 
3713
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
3714
    XMLVM_RED_CLASS_DEPENDENCY();
 
3715
 
 
3716
    
 
3717
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
3718
    XMLVM_RED_CLASS_DEPENDENCY();
 
3719
    XMLVM_THROW_CUSTOM(_r0.o)
 
3720
    //XMLVM_END_WRAPPER
 
3721
}
 
3722
 
 
3723
JAVA_OBJECT java_lang_String_substring___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2)
 
3724
{
 
3725
    //XMLVM_BEGIN_WRAPPER[java_lang_String_substring___int_int]
 
3726
    XMLVM_ENTER_METHOD("java.lang.String", "substring", "?")
 
3727
    XMLVMElem _r0;
 
3728
    XMLVMElem _r1;
 
3729
    XMLVMElem _r2;
 
3730
    XMLVMElem _r3;
 
3731
    XMLVMElem _r4;
 
3732
    XMLVMElem _r5;
 
3733
    XMLVMElem _r6;
 
3734
    _r4.o = me;
 
3735
    _r5.i = n1;
 
3736
    _r6.i = n2;
 
3737
    XMLVM_SOURCE_POSITION("String.java", 1494)
 
3738
    if (_r5.i != 0) goto label8;
 
3739
    XMLVM_CHECK_NPE(4)
 
3740
    _r0.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
3741
    if (_r6.i != _r0.i) goto label8;
 
3742
    _r0 = _r4;
 
3743
    label7:;
 
3744
    XMLVM_SOURCE_POSITION("String.java", 1495)
 
3745
    XMLVM_SOURCE_POSITION("String.java", 1505)
 
3746
    XMLVM_EXIT_METHOD()
 
3747
    return _r0.o;
 
3748
    label8:;
 
3749
    XMLVM_SOURCE_POSITION("String.java", 1497)
 
3750
    if (_r5.i >= 0) goto label16;
 
3751
    XMLVM_SOURCE_POSITION("String.java", 1498)
 
3752
 
 
3753
    
 
3754
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
3755
    XMLVM_RED_CLASS_DEPENDENCY();
 
3756
 
 
3757
    
 
3758
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
3759
    XMLVM_RED_CLASS_DEPENDENCY();
 
3760
    XMLVM_THROW_CUSTOM(_r0.o)
 
3761
    label16:;
 
3762
    XMLVM_SOURCE_POSITION("String.java", 1499)
 
3763
    if (_r5.i <= _r6.i) goto label26;
 
3764
    XMLVM_SOURCE_POSITION("String.java", 1500)
 
3765
 
 
3766
    
 
3767
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
3768
    XMLVM_RED_CLASS_DEPENDENCY();
 
3769
    _r1.i = _r6.i - _r5.i;
 
3770
 
 
3771
    
 
3772
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
3773
    XMLVM_RED_CLASS_DEPENDENCY();
 
3774
    XMLVM_THROW_CUSTOM(_r0.o)
 
3775
    label26:;
 
3776
    XMLVM_SOURCE_POSITION("String.java", 1501)
 
3777
    XMLVM_CHECK_NPE(4)
 
3778
    _r0.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
3779
    if (_r6.i <= _r0.i) goto label36;
 
3780
    XMLVM_SOURCE_POSITION("String.java", 1502)
 
3781
 
 
3782
    
 
3783
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::new-instance
 
3784
    XMLVM_RED_CLASS_DEPENDENCY();
 
3785
 
 
3786
    
 
3787
    // Red class access removed: java.lang.StringIndexOutOfBoundsException::<init>
 
3788
    XMLVM_RED_CLASS_DEPENDENCY();
 
3789
    XMLVM_THROW_CUSTOM(_r0.o)
 
3790
    label36:;
 
3791
    _r0.o = __NEW_java_lang_String();
 
3792
    XMLVM_CHECK_NPE(4)
 
3793
    _r1.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_;
 
3794
    _r1.i = _r1.i + _r5.i;
 
3795
    _r2.i = _r6.i - _r5.i;
 
3796
    XMLVM_CHECK_NPE(4)
 
3797
    _r3.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_;
 
3798
    XMLVM_CHECK_NPE(0)
 
3799
    java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r1.i, _r2.i, _r3.o);
 
3800
    goto label7;
 
3801
    //XMLVM_END_WRAPPER
 
3802
}
 
3803
 
 
3804
JAVA_OBJECT java_lang_String_toCharArray__(JAVA_OBJECT me)
 
3805
{
 
3806
    //XMLVM_BEGIN_WRAPPER[java_lang_String_toCharArray__]
 
3807
    XMLVM_ENTER_METHOD("java.lang.String", "toCharArray", "?")
 
3808
    XMLVMElem _r0;
 
3809
    XMLVMElem _r1;
 
3810
    XMLVMElem _r2;
 
3811
    XMLVMElem _r3;
 
3812
    XMLVMElem _r4;
 
3813
    XMLVMElem _r5;
 
3814
    _r5.o = me;
 
3815
    XMLVM_SOURCE_POSITION("String.java", 1514)
 
3816
    XMLVM_CHECK_NPE(5)
 
3817
    _r1.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_;
 
3818
    XMLVM_CLASS_INIT(char)
 
3819
    _r0.o = XMLVMArray_createSingleDimension(__CLASS_char, _r1.i);
 
3820
    XMLVM_SOURCE_POSITION("String.java", 1515)
 
3821
    XMLVM_CHECK_NPE(5)
 
3822
    _r1.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
3823
    XMLVM_CHECK_NPE(5)
 
3824
    _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_;
 
3825
    _r3.i = 0;
 
3826
    XMLVM_CHECK_NPE(5)
 
3827
    _r4.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_;
 
3828
    java_lang_System_arraycopy___java_lang_Object_int_java_lang_Object_int_int(_r1.o, _r2.i, _r0.o, _r3.i, _r4.i);
 
3829
    XMLVM_SOURCE_POSITION("String.java", 1516)
 
3830
    XMLVM_EXIT_METHOD()
 
3831
    return _r0.o;
 
3832
    //XMLVM_END_WRAPPER
 
3833
}
 
3834
 
 
3835
JAVA_OBJECT java_lang_String_toLowerCase__(JAVA_OBJECT me)
 
3836
{
 
3837
    //XMLVM_BEGIN_WRAPPER[java_lang_String_toLowerCase__]
 
3838
    XMLVM_ENTER_METHOD("java.lang.String", "toLowerCase", "?")
 
3839
    XMLVMElem _r0;
 
3840
    XMLVMElem _r1;
 
3841
    _r1.o = me;
 
3842
    XMLVM_SOURCE_POSITION("String.java", 1527)
 
3843
    _r0.o = java_util_Locale_getDefault__();
 
3844
    XMLVM_CHECK_NPE(1)
 
3845
    _r0.o = java_lang_String_toLowerCase___java_util_Locale(_r1.o, _r0.o);
 
3846
    XMLVM_EXIT_METHOD()
 
3847
    return _r0.o;
 
3848
    //XMLVM_END_WRAPPER
 
3849
}
 
3850
 
 
3851
JAVA_OBJECT java_lang_String_toLowerCase___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1)
 
3852
{
 
3853
    //XMLVM_BEGIN_WRAPPER[java_lang_String_toLowerCase___java_util_Locale]
 
3854
    XMLVM_ENTER_METHOD("java.lang.String", "toLowerCase", "?")
 
3855
    XMLVMElem _r0;
 
3856
    XMLVMElem _r1;
 
3857
    XMLVMElem _r2;
 
3858
    XMLVMElem _r3;
 
3859
    XMLVMElem _r4;
 
3860
    XMLVMElem _r5;
 
3861
    XMLVMElem _r6;
 
3862
    _r5.o = me;
 
3863
    _r6.o = n1;
 
3864
    XMLVM_SOURCE_POSITION("String.java", 1541)
 
3865
    _r0.o = __NEW_java_lang_StringBuilder();
 
3866
    XMLVM_CHECK_NPE(0)
 
3867
    java_lang_StringBuilder___INIT___(_r0.o);
 
3868
    XMLVM_SOURCE_POSITION("String.java", 1542)
 
3869
    XMLVM_CHECK_NPE(5)
 
3870
    _r1.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_;
 
3871
    label7:;
 
3872
    XMLVM_CHECK_NPE(5)
 
3873
    _r3.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_;
 
3874
    XMLVM_CHECK_NPE(5)
 
3875
    _r4.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_;
 
3876
    _r3.i = _r3.i + _r4.i;
 
3877
    if (_r1.i >= _r3.i) goto label29;
 
3878
    XMLVM_SOURCE_POSITION("String.java", 1543)
 
3879
    XMLVM_CHECK_NPE(5)
 
3880
    _r3.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
3881
    XMLVM_CHECK_NPE(3)
 
3882
    XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i);
 
3883
    _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i];
 
3884
    XMLVM_CHECK_NPE(5)
 
3885
    _r3.i = java_lang_String_toLowerCaseImpl___int(_r5.o, _r3.i);
 
3886
    _r3.i = _r3.i & 0xffff;
 
3887
    //java_lang_StringBuilder_append___char[6]
 
3888
    XMLVM_CHECK_NPE(0)
 
3889
    (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r3.i);
 
3890
    _r1.i = _r1.i + 1;
 
3891
    goto label7;
 
3892
    label29:;
 
3893
    XMLVM_SOURCE_POSITION("String.java", 1546)
 
3894
    //java_lang_StringBuilder_toString__[5]
 
3895
    XMLVM_CHECK_NPE(0)
 
3896
    _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o);
 
3897
    XMLVM_SOURCE_POSITION("String.java", 1547)
 
3898
    //java_lang_String_equals___java_lang_Object[1]
 
3899
    XMLVM_CHECK_NPE(5)
 
3900
    _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[1])(_r5.o, _r2.o);
 
3901
    if (_r3.i == 0) goto label41;
 
3902
    _r3 = _r5;
 
3903
    label40:;
 
3904
    XMLVM_SOURCE_POSITION("String.java", 1548)
 
3905
    XMLVM_SOURCE_POSITION("String.java", 1550)
 
3906
    XMLVM_EXIT_METHOD()
 
3907
    return _r3.o;
 
3908
    label41:;
 
3909
    _r3 = _r2;
 
3910
    goto label40;
 
3911
    //XMLVM_END_WRAPPER
 
3912
}
 
3913
 
 
3914
//XMLVM_NATIVE[JAVA_INT java_lang_String_toLowerCaseImpl___int(JAVA_OBJECT me, JAVA_INT n1)]
 
3915
 
 
3916
JAVA_OBJECT java_lang_String_toString__(JAVA_OBJECT me)
 
3917
{
 
3918
    //XMLVM_BEGIN_WRAPPER[java_lang_String_toString__]
 
3919
    XMLVM_ENTER_METHOD("java.lang.String", "toString", "?")
 
3920
    XMLVMElem _r0;
 
3921
    _r0.o = me;
 
3922
    XMLVM_SOURCE_POSITION("String.java", 1563)
 
3923
    XMLVM_EXIT_METHOD()
 
3924
    return _r0.o;
 
3925
    //XMLVM_END_WRAPPER
 
3926
}
 
3927
 
 
3928
JAVA_OBJECT java_lang_String_toUpperCase__(JAVA_OBJECT me)
 
3929
{
 
3930
    //XMLVM_BEGIN_WRAPPER[java_lang_String_toUpperCase__]
 
3931
    XMLVM_ENTER_METHOD("java.lang.String", "toUpperCase", "?")
 
3932
    XMLVMElem _r0;
 
3933
    XMLVMElem _r1;
 
3934
    _r1.o = me;
 
3935
    XMLVM_SOURCE_POSITION("String.java", 1574)
 
3936
    _r0.o = java_util_Locale_getDefault__();
 
3937
    XMLVM_CHECK_NPE(1)
 
3938
    _r0.o = java_lang_String_toUpperCase___java_util_Locale(_r1.o, _r0.o);
 
3939
    XMLVM_EXIT_METHOD()
 
3940
    return _r0.o;
 
3941
    //XMLVM_END_WRAPPER
 
3942
}
 
3943
 
 
3944
JAVA_OBJECT java_lang_String_toUpperCase___java_util_Locale(JAVA_OBJECT me, JAVA_OBJECT n1)
 
3945
{
 
3946
    //XMLVM_BEGIN_WRAPPER[java_lang_String_toUpperCase___java_util_Locale]
 
3947
    XMLVM_ENTER_METHOD("java.lang.String", "toUpperCase", "?")
 
3948
    XMLVMElem _r0;
 
3949
    XMLVMElem _r1;
 
3950
    XMLVMElem _r2;
 
3951
    XMLVMElem _r3;
 
3952
    XMLVMElem _r4;
 
3953
    XMLVMElem _r5;
 
3954
    XMLVMElem _r6;
 
3955
    _r5.o = me;
 
3956
    _r6.o = n1;
 
3957
    XMLVM_SOURCE_POSITION("String.java", 1588)
 
3958
    _r0.o = __NEW_java_lang_StringBuilder();
 
3959
    XMLVM_CHECK_NPE(0)
 
3960
    java_lang_StringBuilder___INIT___(_r0.o);
 
3961
    XMLVM_SOURCE_POSITION("String.java", 1589)
 
3962
    XMLVM_CHECK_NPE(5)
 
3963
    _r1.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_;
 
3964
    label7:;
 
3965
    XMLVM_CHECK_NPE(5)
 
3966
    _r3.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_;
 
3967
    XMLVM_CHECK_NPE(5)
 
3968
    _r4.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_;
 
3969
    _r3.i = _r3.i + _r4.i;
 
3970
    if (_r1.i >= _r3.i) goto label29;
 
3971
    XMLVM_SOURCE_POSITION("String.java", 1590)
 
3972
    XMLVM_CHECK_NPE(5)
 
3973
    _r3.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
3974
    XMLVM_CHECK_NPE(3)
 
3975
    XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r1.i);
 
3976
    _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r1.i];
 
3977
    XMLVM_CHECK_NPE(5)
 
3978
    _r3.i = java_lang_String_toUpperCaseImpl___int(_r5.o, _r3.i);
 
3979
    _r3.i = _r3.i & 0xffff;
 
3980
    //java_lang_StringBuilder_append___char[6]
 
3981
    XMLVM_CHECK_NPE(0)
 
3982
    (*(JAVA_OBJECT (*)(JAVA_OBJECT, JAVA_CHAR)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[6])(_r0.o, _r3.i);
 
3983
    _r1.i = _r1.i + 1;
 
3984
    goto label7;
 
3985
    label29:;
 
3986
    XMLVM_SOURCE_POSITION("String.java", 1593)
 
3987
    //java_lang_StringBuilder_toString__[5]
 
3988
    XMLVM_CHECK_NPE(0)
 
3989
    _r2.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_StringBuilder*) _r0.o)->tib->vtable[5])(_r0.o);
 
3990
    XMLVM_SOURCE_POSITION("String.java", 1594)
 
3991
    //java_lang_String_equals___java_lang_Object[1]
 
3992
    XMLVM_CHECK_NPE(5)
 
3993
    _r3.i = (*(JAVA_BOOLEAN (*)(JAVA_OBJECT, JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[1])(_r5.o, _r2.o);
 
3994
    if (_r3.i == 0) goto label41;
 
3995
    _r3 = _r5;
 
3996
    label40:;
 
3997
    XMLVM_SOURCE_POSITION("String.java", 1595)
 
3998
    XMLVM_SOURCE_POSITION("String.java", 1597)
 
3999
    XMLVM_EXIT_METHOD()
 
4000
    return _r3.o;
 
4001
    label41:;
 
4002
    _r3 = _r2;
 
4003
    goto label40;
 
4004
    //XMLVM_END_WRAPPER
 
4005
}
 
4006
 
 
4007
//XMLVM_NATIVE[JAVA_INT java_lang_String_toUpperCaseImpl___int(JAVA_OBJECT me, JAVA_INT n1)]
 
4008
 
 
4009
JAVA_OBJECT java_lang_String_trim__(JAVA_OBJECT me)
 
4010
{
 
4011
    //XMLVM_BEGIN_WRAPPER[java_lang_String_trim__]
 
4012
    XMLVM_ENTER_METHOD("java.lang.String", "trim", "?")
 
4013
    XMLVMElem _r0;
 
4014
    XMLVMElem _r1;
 
4015
    XMLVMElem _r2;
 
4016
    XMLVMElem _r3;
 
4017
    XMLVMElem _r4;
 
4018
    XMLVMElem _r5;
 
4019
    XMLVMElem _r6;
 
4020
    _r6.o = me;
 
4021
    _r5.i = 32;
 
4022
    XMLVM_SOURCE_POSITION("String.java", 1611)
 
4023
    XMLVM_CHECK_NPE(6)
 
4024
    _r2.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_;
 
4025
    XMLVM_CHECK_NPE(6)
 
4026
    _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_;
 
4027
    XMLVM_CHECK_NPE(6)
 
4028
    _r4.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.count_;
 
4029
    _r3.i = _r3.i + _r4.i;
 
4030
    _r4.i = 1;
 
4031
    _r1.i = _r3.i - _r4.i;
 
4032
    _r0 = _r1;
 
4033
    label13:;
 
4034
    XMLVM_SOURCE_POSITION("String.java", 1612)
 
4035
    XMLVM_SOURCE_POSITION("String.java", 1613)
 
4036
    if (_r2.i > _r0.i) goto label24;
 
4037
    XMLVM_CHECK_NPE(6)
 
4038
    _r3.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_;
 
4039
    XMLVM_CHECK_NPE(3)
 
4040
    XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r2.i);
 
4041
    _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r2.i];
 
4042
    if (_r3.i > _r5.i) goto label24;
 
4043
    XMLVM_SOURCE_POSITION("String.java", 1614)
 
4044
    _r2.i = _r2.i + 1;
 
4045
    goto label13;
 
4046
    label24:;
 
4047
    XMLVM_SOURCE_POSITION("String.java", 1616)
 
4048
    if (_r0.i < _r2.i) goto label35;
 
4049
    XMLVM_CHECK_NPE(6)
 
4050
    _r3.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_;
 
4051
    XMLVM_CHECK_NPE(3)
 
4052
    XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r0.i);
 
4053
    _r3.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i];
 
4054
    if (_r3.i > _r5.i) goto label35;
 
4055
    XMLVM_SOURCE_POSITION("String.java", 1617)
 
4056
    _r0.i = _r0.i + -1;
 
4057
    goto label24;
 
4058
    label35:;
 
4059
    XMLVM_SOURCE_POSITION("String.java", 1619)
 
4060
    XMLVM_CHECK_NPE(6)
 
4061
    _r3.i = ((java_lang_String*) _r6.o)->fields.java_lang_String.offset_;
 
4062
    if (_r2.i != _r3.i) goto label43;
 
4063
    if (_r0.i != _r1.i) goto label43;
 
4064
    _r3 = _r6;
 
4065
    label42:;
 
4066
    XMLVM_SOURCE_POSITION("String.java", 1620)
 
4067
    XMLVM_SOURCE_POSITION("String.java", 1622)
 
4068
    XMLVM_EXIT_METHOD()
 
4069
    return _r3.o;
 
4070
    label43:;
 
4071
    _r3.o = __NEW_java_lang_String();
 
4072
    _r4.i = _r0.i - _r2.i;
 
4073
    _r4.i = _r4.i + 1;
 
4074
    XMLVM_CHECK_NPE(6)
 
4075
    _r5.o = ((java_lang_String*) _r6.o)->fields.java_lang_String.value_;
 
4076
    XMLVM_CHECK_NPE(3)
 
4077
    java_lang_String___INIT____int_int_char_1ARRAY(_r3.o, _r2.i, _r4.i, _r5.o);
 
4078
    goto label42;
 
4079
    //XMLVM_END_WRAPPER
 
4080
}
 
4081
 
 
4082
JAVA_OBJECT java_lang_String_valueOf___char_1ARRAY(JAVA_OBJECT n1)
 
4083
{
 
4084
    XMLVM_CLASS_INIT(java_lang_String)
 
4085
    //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___char_1ARRAY]
 
4086
    XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?")
 
4087
    XMLVMElem _r0;
 
4088
    XMLVMElem _r1;
 
4089
    XMLVMElem _r2;
 
4090
    XMLVMElem _r3;
 
4091
    _r3.o = n1;
 
4092
    XMLVM_SOURCE_POSITION("String.java", 1637)
 
4093
    _r0.o = __NEW_java_lang_String();
 
4094
    _r1.i = 0;
 
4095
    _r2.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r3.o));
 
4096
    XMLVM_CHECK_NPE(0)
 
4097
    java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r3.o, _r1.i, _r2.i);
 
4098
    XMLVM_EXIT_METHOD()
 
4099
    return _r0.o;
 
4100
    //XMLVM_END_WRAPPER
 
4101
}
 
4102
 
 
4103
JAVA_OBJECT java_lang_String_valueOf___char_1ARRAY_int_int(JAVA_OBJECT n1, JAVA_INT n2, JAVA_INT n3)
 
4104
{
 
4105
    XMLVM_CLASS_INIT(java_lang_String)
 
4106
    //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___char_1ARRAY_int_int]
 
4107
    XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?")
 
4108
    XMLVMElem _r0;
 
4109
    XMLVMElem _r1;
 
4110
    XMLVMElem _r2;
 
4111
    XMLVMElem _r3;
 
4112
    _r1.o = n1;
 
4113
    _r2.i = n2;
 
4114
    _r3.i = n3;
 
4115
    XMLVM_SOURCE_POSITION("String.java", 1659)
 
4116
    _r0.o = __NEW_java_lang_String();
 
4117
    XMLVM_CHECK_NPE(0)
 
4118
    java_lang_String___INIT____char_1ARRAY_int_int(_r0.o, _r1.o, _r2.i, _r3.i);
 
4119
    XMLVM_EXIT_METHOD()
 
4120
    return _r0.o;
 
4121
    //XMLVM_END_WRAPPER
 
4122
}
 
4123
 
 
4124
JAVA_OBJECT java_lang_String_valueOf___char(JAVA_CHAR n1)
 
4125
{
 
4126
    XMLVM_CLASS_INIT(java_lang_String)
 
4127
    //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___char]
 
4128
    XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?")
 
4129
    XMLVMElem _r0;
 
4130
    XMLVMElem _r1;
 
4131
    XMLVMElem _r2;
 
4132
    XMLVMElem _r3;
 
4133
    XMLVMElem _r4;
 
4134
    _r4.i = n1;
 
4135
    _r3.i = 0;
 
4136
    _r2.i = 1;
 
4137
    XMLVM_SOURCE_POSITION("String.java", 1671)
 
4138
    _r1.i = 128;
 
4139
    if (_r4.i >= _r1.i) goto label16;
 
4140
    XMLVM_SOURCE_POSITION("String.java", 1672)
 
4141
    _r0.o = __NEW_java_lang_String();
 
4142
    _r1.o = java_lang_String_GET_ascii();
 
4143
    XMLVM_CHECK_NPE(0)
 
4144
    java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r4.i, _r2.i, _r1.o);
 
4145
    label13:;
 
4146
    XMLVM_SOURCE_POSITION("String.java", 1676)
 
4147
    XMLVM_CHECK_NPE(0)
 
4148
    ((java_lang_String*) _r0.o)->fields.java_lang_String.hashCode_ = _r4.i;
 
4149
    XMLVM_SOURCE_POSITION("String.java", 1677)
 
4150
    XMLVM_EXIT_METHOD()
 
4151
    return _r0.o;
 
4152
    label16:;
 
4153
    XMLVM_SOURCE_POSITION("String.java", 1674)
 
4154
    _r0.o = __NEW_java_lang_String();
 
4155
    XMLVM_CLASS_INIT(char)
 
4156
    _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r2.i);
 
4157
    XMLVM_CHECK_NPE(1)
 
4158
    XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r3.i);
 
4159
    ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r3.i] = _r4.i;
 
4160
    XMLVM_CHECK_NPE(0)
 
4161
    java_lang_String___INIT____int_int_char_1ARRAY(_r0.o, _r3.i, _r2.i, _r1.o);
 
4162
    goto label13;
 
4163
    //XMLVM_END_WRAPPER
 
4164
}
 
4165
 
 
4166
JAVA_OBJECT java_lang_String_valueOf___double(JAVA_DOUBLE n1)
 
4167
{
 
4168
    XMLVM_CLASS_INIT(java_lang_String)
 
4169
    //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___double]
 
4170
    XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?")
 
4171
    XMLVMElem _r0;
 
4172
    XMLVMElem _r1;
 
4173
    XMLVMElem _r2;
 
4174
    _r1.d = n1;
 
4175
    XMLVM_SOURCE_POSITION("String.java", 1688)
 
4176
    _r0.o = java_lang_Double_toString___double(_r1.d);
 
4177
    XMLVM_EXIT_METHOD()
 
4178
    return _r0.o;
 
4179
    //XMLVM_END_WRAPPER
 
4180
}
 
4181
 
 
4182
JAVA_OBJECT java_lang_String_valueOf___float(JAVA_FLOAT n1)
 
4183
{
 
4184
    XMLVM_CLASS_INIT(java_lang_String)
 
4185
    //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___float]
 
4186
    XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?")
 
4187
    XMLVMElem _r0;
 
4188
    XMLVMElem _r1;
 
4189
    _r1.f = n1;
 
4190
    XMLVM_SOURCE_POSITION("String.java", 1699)
 
4191
    _r0.o = java_lang_Float_toString___float(_r1.f);
 
4192
    XMLVM_EXIT_METHOD()
 
4193
    return _r0.o;
 
4194
    //XMLVM_END_WRAPPER
 
4195
}
 
4196
 
 
4197
JAVA_OBJECT java_lang_String_valueOf___int(JAVA_INT n1)
 
4198
{
 
4199
    XMLVM_CLASS_INIT(java_lang_String)
 
4200
    //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___int]
 
4201
    XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?")
 
4202
    XMLVMElem _r0;
 
4203
    XMLVMElem _r1;
 
4204
    _r1.i = n1;
 
4205
    XMLVM_SOURCE_POSITION("String.java", 1710)
 
4206
    _r0.o = java_lang_Integer_toString___int(_r1.i);
 
4207
    XMLVM_EXIT_METHOD()
 
4208
    return _r0.o;
 
4209
    //XMLVM_END_WRAPPER
 
4210
}
 
4211
 
 
4212
JAVA_OBJECT java_lang_String_valueOf___long(JAVA_LONG n1)
 
4213
{
 
4214
    XMLVM_CLASS_INIT(java_lang_String)
 
4215
    //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___long]
 
4216
    XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?")
 
4217
    XMLVMElem _r0;
 
4218
    XMLVMElem _r1;
 
4219
    XMLVMElem _r2;
 
4220
    _r1.l = n1;
 
4221
    XMLVM_SOURCE_POSITION("String.java", 1721)
 
4222
    _r0.o = java_lang_Long_toString___long(_r1.l);
 
4223
    XMLVM_EXIT_METHOD()
 
4224
    return _r0.o;
 
4225
    //XMLVM_END_WRAPPER
 
4226
}
 
4227
 
 
4228
JAVA_OBJECT java_lang_String_valueOf___java_lang_Object(JAVA_OBJECT n1)
 
4229
{
 
4230
    XMLVM_CLASS_INIT(java_lang_String)
 
4231
    //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___java_lang_Object]
 
4232
    XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?")
 
4233
    XMLVMElem _r0;
 
4234
    XMLVMElem _r1;
 
4235
    _r1.o = n1;
 
4236
    XMLVM_SOURCE_POSITION("String.java", 1734)
 
4237
    if (_r1.o == JAVA_NULL) goto label7;
 
4238
    //java_lang_Object_toString__[5]
 
4239
    XMLVM_CHECK_NPE(1)
 
4240
    _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r1.o)->tib->vtable[5])(_r1.o);
 
4241
    label6:;
 
4242
    XMLVM_EXIT_METHOD()
 
4243
    return _r0.o;
 
4244
    label7:;
 
4245
    // "null"
 
4246
    _r0.o = xmlvm_create_java_string_from_pool(63);
 
4247
    goto label6;
 
4248
    //XMLVM_END_WRAPPER
 
4249
}
 
4250
 
 
4251
JAVA_OBJECT java_lang_String_valueOf___boolean(JAVA_BOOLEAN n1)
 
4252
{
 
4253
    XMLVM_CLASS_INIT(java_lang_String)
 
4254
    //XMLVM_BEGIN_WRAPPER[java_lang_String_valueOf___boolean]
 
4255
    XMLVM_ENTER_METHOD("java.lang.String", "valueOf", "?")
 
4256
    XMLVMElem _r0;
 
4257
    XMLVMElem _r1;
 
4258
    _r1.i = n1;
 
4259
    XMLVM_SOURCE_POSITION("String.java", 1747)
 
4260
    if (_r1.i == 0) goto label5;
 
4261
    // "true"
 
4262
    _r0.o = xmlvm_create_java_string_from_pool(4);
 
4263
    label4:;
 
4264
    XMLVM_EXIT_METHOD()
 
4265
    return _r0.o;
 
4266
    label5:;
 
4267
    // "false"
 
4268
    _r0.o = xmlvm_create_java_string_from_pool(178);
 
4269
    goto label4;
 
4270
    //XMLVM_END_WRAPPER
 
4271
}
 
4272
 
 
4273
JAVA_BOOLEAN java_lang_String_contentEquals___java_lang_StringBuffer(JAVA_OBJECT me, JAVA_OBJECT n1)
 
4274
{
 
4275
    //XMLVM_BEGIN_WRAPPER[java_lang_String_contentEquals___java_lang_StringBuffer]
 
4276
    XMLVM_ENTER_METHOD("java.lang.String", "contentEquals", "?")
 
4277
    volatile XMLVMElem _r0;
 
4278
    volatile XMLVMElem _r1;
 
4279
    volatile XMLVMElem _r2;
 
4280
    volatile XMLVMElem _r3;
 
4281
    volatile XMLVMElem _r4;
 
4282
    volatile XMLVMElem _r5;
 
4283
    volatile XMLVMElem _r6;
 
4284
    _r5.o = me;
 
4285
    _r6.o = n1;
 
4286
    _r2.i = 0;
 
4287
    XMLVM_SOURCE_POSITION("String.java", 1764)
 
4288
    java_lang_Object_acquireLockRecursive__(_r6.o);
 
4289
    XMLVM_TRY_BEGIN(w3113aaac87b1b6)
 
4290
    // Begin try
 
4291
    XMLVM_SOURCE_POSITION("String.java", 1765)
 
4292
 
 
4293
    
 
4294
    // Red class access removed: java.lang.StringBuffer::length
 
4295
    XMLVM_RED_CLASS_DEPENDENCY();
 
4296
    XMLVM_SOURCE_POSITION("String.java", 1766)
 
4297
    XMLVM_CHECK_NPE(5)
 
4298
    _r1.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_;
 
4299
    if (_r1.i == _r0.i) { XMLVM_MEMCPY(curThread_w3113aaac87b1b6->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3113aaac87b1b6, sizeof(XMLVM_JMP_BUF)); goto label13; };
 
4300
    XMLVM_SOURCE_POSITION("String.java", 1767)
 
4301
    java_lang_Object_releaseLockRecursive__(_r6.o);
 
4302
    _r1 = _r2;
 
4303
    // End try
 
4304
    XMLVM_TRY_END
 
4305
    XMLVM_CATCH_BEGIN(w3113aaac87b1b6)
 
4306
        XMLVM_CATCH_SPECIFIC(w3113aaac87b1b6,java_lang_Object,31)
 
4307
    XMLVM_CATCH_END(w3113aaac87b1b6)
 
4308
    XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac87b1b6)
 
4309
    label12:;
 
4310
    XMLVM_TRY_BEGIN(w3113aaac87b1b8)
 
4311
    // Begin try
 
4312
    XMLVM_SOURCE_POSITION("String.java", 1769)
 
4313
    XMLVM_MEMCPY(curThread_w3113aaac87b1b8->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3113aaac87b1b8, sizeof(XMLVM_JMP_BUF));
 
4314
    XMLVM_EXIT_METHOD()
 
4315
    return _r1.i;
 
4316
    // End try
 
4317
    XMLVM_TRY_END
 
4318
    XMLVM_CATCH_BEGIN(w3113aaac87b1b8)
 
4319
        XMLVM_CATCH_SPECIFIC(w3113aaac87b1b8,java_lang_Object,31)
 
4320
    XMLVM_CATCH_END(w3113aaac87b1b8)
 
4321
    XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac87b1b8)
 
4322
    label13:;
 
4323
    XMLVM_TRY_BEGIN(w3113aaac87b1c10)
 
4324
    // Begin try
 
4325
    _r1.i = 0;
 
4326
    _r2.o = __NEW_java_lang_String();
 
4327
    _r3.i = 0;
 
4328
 
 
4329
    
 
4330
    // Red class access removed: java.lang.StringBuffer::getValue
 
4331
    XMLVM_RED_CLASS_DEPENDENCY();
 
4332
    XMLVM_CHECK_NPE(2)
 
4333
    java_lang_String___INIT____int_int_char_1ARRAY(_r2.o, _r3.i, _r0.i, _r4.o);
 
4334
    _r3.i = 0;
 
4335
    XMLVM_CHECK_NPE(5)
 
4336
    _r1.i = java_lang_String_regionMatches___int_java_lang_String_int_int(_r5.o, _r1.i, _r2.o, _r3.i, _r0.i);
 
4337
    java_lang_Object_releaseLockRecursive__(_r6.o);
 
4338
    { XMLVM_MEMCPY(curThread_w3113aaac87b1c10->fields.java_lang_Thread.xmlvmExceptionEnv_, local_env_w3113aaac87b1c10, sizeof(XMLVM_JMP_BUF)); goto label12; };
 
4339
    XMLVM_SOURCE_POSITION("String.java", 1771)
 
4340
    // End try
 
4341
    XMLVM_TRY_END
 
4342
    XMLVM_CATCH_BEGIN(w3113aaac87b1c10)
 
4343
        XMLVM_CATCH_SPECIFIC(w3113aaac87b1c10,java_lang_Object,31)
 
4344
    XMLVM_CATCH_END(w3113aaac87b1c10)
 
4345
    XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac87b1c10)
 
4346
    label31:;
 
4347
    XMLVM_TRY_BEGIN(w3113aaac87b1c12)
 
4348
    // Begin try
 
4349
    java_lang_Thread* curThread_w3113aaac87b1c12aa = (java_lang_Thread*)java_lang_Thread_currentThread__();
 
4350
    _r1.o = curThread_w3113aaac87b1c12aa->fields.java_lang_Thread.xmlvmException_;
 
4351
    java_lang_Object_releaseLockRecursive__(_r6.o);
 
4352
    // End try
 
4353
    XMLVM_TRY_END
 
4354
    XMLVM_CATCH_BEGIN(w3113aaac87b1c12)
 
4355
        XMLVM_CATCH_SPECIFIC(w3113aaac87b1c12,java_lang_Object,31)
 
4356
    XMLVM_CATCH_END(w3113aaac87b1c12)
 
4357
    XMLVM_RESTORE_EXCEPTION_ENV(w3113aaac87b1c12)
 
4358
    XMLVM_THROW_CUSTOM(_r1.o)
 
4359
    //XMLVM_END_WRAPPER
 
4360
}
 
4361
 
 
4362
JAVA_BOOLEAN java_lang_String_contentEquals___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1)
 
4363
{
 
4364
    //XMLVM_BEGIN_WRAPPER[java_lang_String_contentEquals___java_lang_CharSequence]
 
4365
    XMLVM_ENTER_METHOD("java.lang.String", "contentEquals", "?")
 
4366
    XMLVMElem _r0;
 
4367
    XMLVMElem _r1;
 
4368
    XMLVMElem _r2;
 
4369
    XMLVMElem _r3;
 
4370
    XMLVMElem _r4;
 
4371
    _r3.o = me;
 
4372
    _r4.o = n1;
 
4373
    _r2.i = 0;
 
4374
    XMLVM_SOURCE_POSITION("String.java", 1784)
 
4375
    XMLVM_CHECK_NPE(4)
 
4376
    _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) *(((java_lang_Object*)_r4.o)->tib->itableBegin)[XMLVM_ITABLE_IDX_java_lang_CharSequence_length__])(_r4.o);
 
4377
    XMLVM_SOURCE_POSITION("String.java", 1786)
 
4378
    XMLVM_CHECK_NPE(3)
 
4379
    _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_;
 
4380
    if (_r0.i == _r1.i) goto label11;
 
4381
    _r1 = _r2;
 
4382
    label10:;
 
4383
    XMLVM_SOURCE_POSITION("String.java", 1787)
 
4384
    XMLVM_SOURCE_POSITION("String.java", 1794)
 
4385
    XMLVM_EXIT_METHOD()
 
4386
    return _r1.i;
 
4387
    label11:;
 
4388
    XMLVM_SOURCE_POSITION("String.java", 1790)
 
4389
    if (_r0.i != 0) goto label19;
 
4390
    XMLVM_CHECK_NPE(3)
 
4391
    _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_;
 
4392
    if (_r1.i != 0) goto label19;
 
4393
    XMLVM_SOURCE_POSITION("String.java", 1791)
 
4394
    _r1.i = 1;
 
4395
    goto label10;
 
4396
    label19:;
 
4397
    //java_lang_Object_toString__[5]
 
4398
    XMLVM_CHECK_NPE(4)
 
4399
    _r1.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r4.o)->tib->vtable[5])(_r4.o);
 
4400
    XMLVM_CHECK_NPE(3)
 
4401
    _r1.i = java_lang_String_regionMatches___int_java_lang_String_int_int(_r3.o, _r2.i, _r1.o, _r2.i, _r0.i);
 
4402
    goto label10;
 
4403
    //XMLVM_END_WRAPPER
 
4404
}
 
4405
 
 
4406
JAVA_BOOLEAN java_lang_String_matches___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
4407
{
 
4408
    //XMLVM_BEGIN_WRAPPER[java_lang_String_matches___java_lang_String]
 
4409
    XMLVM_ENTER_METHOD("java.lang.String", "matches", "?")
 
4410
    XMLVMElem _r0;
 
4411
    XMLVMElem _r1;
 
4412
    XMLVMElem _r2;
 
4413
    _r1.o = me;
 
4414
    _r2.o = n1;
 
4415
    XMLVM_SOURCE_POSITION("String.java", 1811)
 
4416
 
 
4417
    
 
4418
    // Red class access removed: java.util.regex.Pattern::matches
 
4419
    XMLVM_RED_CLASS_DEPENDENCY();
 
4420
    XMLVM_EXIT_METHOD()
 
4421
    return _r0.i;
 
4422
    //XMLVM_END_WRAPPER
 
4423
}
 
4424
 
 
4425
JAVA_OBJECT java_lang_String_replaceAll___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2)
 
4426
{
 
4427
    //XMLVM_BEGIN_WRAPPER[java_lang_String_replaceAll___java_lang_String_java_lang_String]
 
4428
    XMLVM_ENTER_METHOD("java.lang.String", "replaceAll", "?")
 
4429
    XMLVMElem _r0;
 
4430
    XMLVMElem _r1;
 
4431
    XMLVMElem _r2;
 
4432
    XMLVMElem _r3;
 
4433
    _r1.o = me;
 
4434
    _r2.o = n1;
 
4435
    _r3.o = n2;
 
4436
    XMLVM_SOURCE_POSITION("String.java", 1830)
 
4437
 
 
4438
    
 
4439
    // Red class access removed: java.util.regex.Pattern::compile
 
4440
    XMLVM_RED_CLASS_DEPENDENCY();
 
4441
 
 
4442
    
 
4443
    // Red class access removed: java.util.regex.Pattern::matcher
 
4444
    XMLVM_RED_CLASS_DEPENDENCY();
 
4445
 
 
4446
    
 
4447
    // Red class access removed: java.util.regex.Matcher::replaceAll
 
4448
    XMLVM_RED_CLASS_DEPENDENCY();
 
4449
    XMLVM_EXIT_METHOD()
 
4450
    return _r0.o;
 
4451
    //XMLVM_END_WRAPPER
 
4452
}
 
4453
 
 
4454
JAVA_OBJECT java_lang_String_replaceFirst___java_lang_String_java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2)
 
4455
{
 
4456
    //XMLVM_BEGIN_WRAPPER[java_lang_String_replaceFirst___java_lang_String_java_lang_String]
 
4457
    XMLVM_ENTER_METHOD("java.lang.String", "replaceFirst", "?")
 
4458
    XMLVMElem _r0;
 
4459
    XMLVMElem _r1;
 
4460
    XMLVMElem _r2;
 
4461
    XMLVMElem _r3;
 
4462
    _r1.o = me;
 
4463
    _r2.o = n1;
 
4464
    _r3.o = n2;
 
4465
    XMLVM_SOURCE_POSITION("String.java", 1851)
 
4466
 
 
4467
    
 
4468
    // Red class access removed: java.util.regex.Pattern::compile
 
4469
    XMLVM_RED_CLASS_DEPENDENCY();
 
4470
 
 
4471
    
 
4472
    // Red class access removed: java.util.regex.Pattern::matcher
 
4473
    XMLVM_RED_CLASS_DEPENDENCY();
 
4474
 
 
4475
    
 
4476
    // Red class access removed: java.util.regex.Matcher::replaceFirst
 
4477
    XMLVM_RED_CLASS_DEPENDENCY();
 
4478
    XMLVM_EXIT_METHOD()
 
4479
    return _r0.o;
 
4480
    //XMLVM_END_WRAPPER
 
4481
}
 
4482
 
 
4483
JAVA_OBJECT java_lang_String_split___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1)
 
4484
{
 
4485
    //XMLVM_BEGIN_WRAPPER[java_lang_String_split___java_lang_String]
 
4486
    XMLVM_ENTER_METHOD("java.lang.String", "split", "?")
 
4487
    XMLVMElem _r0;
 
4488
    XMLVMElem _r1;
 
4489
    XMLVMElem _r2;
 
4490
    _r1.o = me;
 
4491
    _r2.o = n1;
 
4492
    XMLVM_SOURCE_POSITION("String.java", 1870)
 
4493
 
 
4494
    
 
4495
    // Red class access removed: java.util.regex.Pattern::compile
 
4496
    XMLVM_RED_CLASS_DEPENDENCY();
 
4497
 
 
4498
    
 
4499
    // Red class access removed: java.util.regex.Pattern::split
 
4500
    XMLVM_RED_CLASS_DEPENDENCY();
 
4501
    XMLVM_EXIT_METHOD()
 
4502
    return _r0.o;
 
4503
    //XMLVM_END_WRAPPER
 
4504
}
 
4505
 
 
4506
JAVA_OBJECT java_lang_String_split___java_lang_String_int(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_INT n2)
 
4507
{
 
4508
    //XMLVM_BEGIN_WRAPPER[java_lang_String_split___java_lang_String_int]
 
4509
    XMLVM_ENTER_METHOD("java.lang.String", "split", "?")
 
4510
    XMLVMElem _r0;
 
4511
    XMLVMElem _r1;
 
4512
    XMLVMElem _r2;
 
4513
    XMLVMElem _r3;
 
4514
    _r1.o = me;
 
4515
    _r2.o = n1;
 
4516
    _r3.i = n2;
 
4517
    XMLVM_SOURCE_POSITION("String.java", 1893)
 
4518
 
 
4519
    
 
4520
    // Red class access removed: java.util.regex.Pattern::compile
 
4521
    XMLVM_RED_CLASS_DEPENDENCY();
 
4522
 
 
4523
    
 
4524
    // Red class access removed: java.util.regex.Pattern::split
 
4525
    XMLVM_RED_CLASS_DEPENDENCY();
 
4526
    XMLVM_EXIT_METHOD()
 
4527
    return _r0.o;
 
4528
    //XMLVM_END_WRAPPER
 
4529
}
 
4530
 
 
4531
JAVA_OBJECT java_lang_String_subSequence___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2)
 
4532
{
 
4533
    //XMLVM_BEGIN_WRAPPER[java_lang_String_subSequence___int_int]
 
4534
    XMLVM_ENTER_METHOD("java.lang.String", "subSequence", "?")
 
4535
    XMLVMElem _r0;
 
4536
    XMLVMElem _r1;
 
4537
    XMLVMElem _r2;
 
4538
    XMLVMElem _r3;
 
4539
    _r1.o = me;
 
4540
    _r2.i = n1;
 
4541
    _r3.i = n2;
 
4542
    XMLVM_SOURCE_POSITION("String.java", 1912)
 
4543
    XMLVM_CHECK_NPE(1)
 
4544
    _r0.o = java_lang_String_substring___int_int(_r1.o, _r2.i, _r3.i);
 
4545
    XMLVM_EXIT_METHOD()
 
4546
    return _r0.o;
 
4547
    //XMLVM_END_WRAPPER
 
4548
}
 
4549
 
 
4550
JAVA_INT java_lang_String_codePointAt___int(JAVA_OBJECT me, JAVA_INT n1)
 
4551
{
 
4552
    //XMLVM_BEGIN_WRAPPER[java_lang_String_codePointAt___int]
 
4553
    XMLVM_ENTER_METHOD("java.lang.String", "codePointAt", "?")
 
4554
    XMLVMElem _r0;
 
4555
    XMLVMElem _r1;
 
4556
    XMLVMElem _r2;
 
4557
    XMLVMElem _r3;
 
4558
    XMLVMElem _r4;
 
4559
    XMLVMElem _r5;
 
4560
    _r4.o = me;
 
4561
    _r5.i = n1;
 
4562
    XMLVM_SOURCE_POSITION("String.java", 1929)
 
4563
    if (_r5.i < 0) goto label6;
 
4564
    XMLVM_CHECK_NPE(4)
 
4565
    _r1.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
4566
    if (_r5.i < _r1.i) goto label12;
 
4567
    label6:;
 
4568
    XMLVM_SOURCE_POSITION("String.java", 1930)
 
4569
    _r1.o = __NEW_java_lang_IndexOutOfBoundsException();
 
4570
    XMLVM_CHECK_NPE(1)
 
4571
    java_lang_IndexOutOfBoundsException___INIT___(_r1.o);
 
4572
    XMLVM_THROW_CUSTOM(_r1.o)
 
4573
    label12:;
 
4574
    XMLVM_SOURCE_POSITION("String.java", 1932)
 
4575
    XMLVM_CHECK_NPE(4)
 
4576
    _r1.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_;
 
4577
    _r0.i = _r5.i + _r1.i;
 
4578
    XMLVM_SOURCE_POSITION("String.java", 1933)
 
4579
    XMLVM_CHECK_NPE(4)
 
4580
    _r1.o = ((java_lang_String*) _r4.o)->fields.java_lang_String.value_;
 
4581
    XMLVM_CHECK_NPE(4)
 
4582
    _r2.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.offset_;
 
4583
    XMLVM_CHECK_NPE(4)
 
4584
    _r3.i = ((java_lang_String*) _r4.o)->fields.java_lang_String.count_;
 
4585
    _r2.i = _r2.i + _r3.i;
 
4586
    _r1.i = java_lang_Character_codePointAt___char_1ARRAY_int_int(_r1.o, _r0.i, _r2.i);
 
4587
    XMLVM_EXIT_METHOD()
 
4588
    return _r1.i;
 
4589
    //XMLVM_END_WRAPPER
 
4590
}
 
4591
 
 
4592
JAVA_INT java_lang_String_codePointBefore___int(JAVA_OBJECT me, JAVA_INT n1)
 
4593
{
 
4594
    //XMLVM_BEGIN_WRAPPER[java_lang_String_codePointBefore___int]
 
4595
    XMLVM_ENTER_METHOD("java.lang.String", "codePointBefore", "?")
 
4596
    XMLVMElem _r0;
 
4597
    XMLVMElem _r1;
 
4598
    XMLVMElem _r2;
 
4599
    XMLVMElem _r3;
 
4600
    _r2.o = me;
 
4601
    _r3.i = n1;
 
4602
    XMLVM_SOURCE_POSITION("String.java", 1950)
 
4603
    _r1.i = 1;
 
4604
    if (_r3.i < _r1.i) goto label7;
 
4605
    XMLVM_CHECK_NPE(2)
 
4606
    _r1.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.count_;
 
4607
    if (_r3.i <= _r1.i) goto label13;
 
4608
    label7:;
 
4609
    XMLVM_SOURCE_POSITION("String.java", 1951)
 
4610
    _r1.o = __NEW_java_lang_IndexOutOfBoundsException();
 
4611
    XMLVM_CHECK_NPE(1)
 
4612
    java_lang_IndexOutOfBoundsException___INIT___(_r1.o);
 
4613
    XMLVM_THROW_CUSTOM(_r1.o)
 
4614
    label13:;
 
4615
    XMLVM_SOURCE_POSITION("String.java", 1953)
 
4616
    XMLVM_CHECK_NPE(2)
 
4617
    _r1.i = ((java_lang_String*) _r2.o)->fields.java_lang_String.offset_;
 
4618
    _r0.i = _r3.i + _r1.i;
 
4619
    XMLVM_SOURCE_POSITION("String.java", 1954)
 
4620
    XMLVM_CHECK_NPE(2)
 
4621
    _r1.o = ((java_lang_String*) _r2.o)->fields.java_lang_String.value_;
 
4622
    _r1.i = java_lang_Character_codePointBefore___char_1ARRAY_int(_r1.o, _r0.i);
 
4623
    XMLVM_EXIT_METHOD()
 
4624
    return _r1.i;
 
4625
    //XMLVM_END_WRAPPER
 
4626
}
 
4627
 
 
4628
JAVA_INT java_lang_String_codePointCount___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2)
 
4629
{
 
4630
    //XMLVM_BEGIN_WRAPPER[java_lang_String_codePointCount___int_int]
 
4631
    XMLVM_ENTER_METHOD("java.lang.String", "codePointCount", "?")
 
4632
    XMLVMElem _r0;
 
4633
    XMLVMElem _r1;
 
4634
    XMLVMElem _r2;
 
4635
    XMLVMElem _r3;
 
4636
    XMLVMElem _r4;
 
4637
    XMLVMElem _r5;
 
4638
    _r3.o = me;
 
4639
    _r4.i = n1;
 
4640
    _r5.i = n2;
 
4641
    XMLVM_SOURCE_POSITION("String.java", 1974)
 
4642
    if (_r4.i < 0) goto label8;
 
4643
    XMLVM_CHECK_NPE(3)
 
4644
    _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.count_;
 
4645
    if (_r5.i > _r1.i) goto label8;
 
4646
    if (_r4.i <= _r5.i) goto label14;
 
4647
    label8:;
 
4648
    XMLVM_SOURCE_POSITION("String.java", 1975)
 
4649
    _r1.o = __NEW_java_lang_IndexOutOfBoundsException();
 
4650
    XMLVM_CHECK_NPE(1)
 
4651
    java_lang_IndexOutOfBoundsException___INIT___(_r1.o);
 
4652
    XMLVM_THROW_CUSTOM(_r1.o)
 
4653
    label14:;
 
4654
    XMLVM_SOURCE_POSITION("String.java", 1977)
 
4655
    XMLVM_CHECK_NPE(3)
 
4656
    _r1.i = ((java_lang_String*) _r3.o)->fields.java_lang_String.offset_;
 
4657
    _r0.i = _r4.i + _r1.i;
 
4658
    XMLVM_SOURCE_POSITION("String.java", 1978)
 
4659
    XMLVM_CHECK_NPE(3)
 
4660
    _r1.o = ((java_lang_String*) _r3.o)->fields.java_lang_String.value_;
 
4661
    _r2.i = _r5.i - _r4.i;
 
4662
    _r1.i = java_lang_Character_codePointCount___char_1ARRAY_int_int(_r1.o, _r0.i, _r2.i);
 
4663
    XMLVM_EXIT_METHOD()
 
4664
    return _r1.i;
 
4665
    //XMLVM_END_WRAPPER
 
4666
}
 
4667
 
 
4668
JAVA_BOOLEAN java_lang_String_contains___java_lang_CharSequence(JAVA_OBJECT me, JAVA_OBJECT n1)
 
4669
{
 
4670
    //XMLVM_BEGIN_WRAPPER[java_lang_String_contains___java_lang_CharSequence]
 
4671
    XMLVM_ENTER_METHOD("java.lang.String", "contains", "?")
 
4672
    XMLVMElem _r0;
 
4673
    XMLVMElem _r1;
 
4674
    XMLVMElem _r2;
 
4675
    _r1.o = me;
 
4676
    _r2.o = n1;
 
4677
    XMLVM_SOURCE_POSITION("String.java", 1992)
 
4678
    //java_lang_Object_toString__[5]
 
4679
    XMLVM_CHECK_NPE(2)
 
4680
    _r0.o = (*(JAVA_OBJECT (*)(JAVA_OBJECT)) ((java_lang_Object*) _r2.o)->tib->vtable[5])(_r2.o);
 
4681
    XMLVM_CHECK_NPE(1)
 
4682
    _r0.i = java_lang_String_indexOf___java_lang_String(_r1.o, _r0.o);
 
4683
    if (_r0.i < 0) goto label12;
 
4684
    _r0.i = 1;
 
4685
    label11:;
 
4686
    XMLVM_EXIT_METHOD()
 
4687
    return _r0.i;
 
4688
    label12:;
 
4689
    _r0.i = 0;
 
4690
    goto label11;
 
4691
    //XMLVM_END_WRAPPER
 
4692
}
 
4693
 
 
4694
JAVA_INT java_lang_String_offsetByCodePoints___int_int(JAVA_OBJECT me, JAVA_INT n1, JAVA_INT n2)
 
4695
{
 
4696
    //XMLVM_BEGIN_WRAPPER[java_lang_String_offsetByCodePoints___int_int]
 
4697
    XMLVM_ENTER_METHOD("java.lang.String", "offsetByCodePoints", "?")
 
4698
    XMLVMElem _r0;
 
4699
    XMLVMElem _r1;
 
4700
    XMLVMElem _r2;
 
4701
    XMLVMElem _r3;
 
4702
    XMLVMElem _r4;
 
4703
    XMLVMElem _r5;
 
4704
    XMLVMElem _r6;
 
4705
    XMLVMElem _r7;
 
4706
    _r5.o = me;
 
4707
    _r6.i = n1;
 
4708
    _r7.i = n2;
 
4709
    XMLVM_SOURCE_POSITION("String.java", 2011)
 
4710
    XMLVM_CHECK_NPE(5)
 
4711
    _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_;
 
4712
    _r1.i = _r6.i + _r2.i;
 
4713
    XMLVM_SOURCE_POSITION("String.java", 2012)
 
4714
    XMLVM_CHECK_NPE(5)
 
4715
    _r2.o = ((java_lang_String*) _r5.o)->fields.java_lang_String.value_;
 
4716
    XMLVM_CHECK_NPE(5)
 
4717
    _r3.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_;
 
4718
    XMLVM_CHECK_NPE(5)
 
4719
    _r4.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.count_;
 
4720
    _r0.i = java_lang_Character_offsetByCodePoints___char_1ARRAY_int_int_int_int(_r2.o, _r3.i, _r4.i, _r1.i, _r7.i);
 
4721
    XMLVM_SOURCE_POSITION("String.java", 2014)
 
4722
    XMLVM_CHECK_NPE(5)
 
4723
    _r2.i = ((java_lang_String*) _r5.o)->fields.java_lang_String.offset_;
 
4724
    _r2.i = _r0.i - _r2.i;
 
4725
    XMLVM_EXIT_METHOD()
 
4726
    return _r2.i;
 
4727
    //XMLVM_END_WRAPPER
 
4728
}
 
4729
 
 
4730
JAVA_OBJECT java_lang_String_format___java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2)
 
4731
{
 
4732
    XMLVM_CLASS_INIT(java_lang_String)
 
4733
    //XMLVM_BEGIN_WRAPPER[java_lang_String_format___java_lang_String_java_lang_Object_1ARRAY]
 
4734
    XMLVM_ENTER_METHOD("java.lang.String", "format", "?")
 
4735
    XMLVMElem _r0;
 
4736
    XMLVMElem _r1;
 
4737
    XMLVMElem _r2;
 
4738
    _r1.o = n1;
 
4739
    _r2.o = n2;
 
4740
    XMLVM_SOURCE_POSITION("String.java", 2034)
 
4741
    _r0.o = java_util_Locale_getDefault__();
 
4742
    _r0.o = java_lang_String_format___java_util_Locale_java_lang_String_java_lang_Object_1ARRAY(_r0.o, _r1.o, _r2.o);
 
4743
    XMLVM_EXIT_METHOD()
 
4744
    return _r0.o;
 
4745
    //XMLVM_END_WRAPPER
 
4746
}
 
4747
 
 
4748
JAVA_OBJECT java_lang_String_format___java_util_Locale_java_lang_String_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_OBJECT n3)
 
4749
{
 
4750
    XMLVM_CLASS_INIT(java_lang_String)
 
4751
    //XMLVM_BEGIN_WRAPPER[java_lang_String_format___java_util_Locale_java_lang_String_java_lang_Object_1ARRAY]
 
4752
    XMLVM_ENTER_METHOD("java.lang.String", "format", "?")
 
4753
    XMLVMElem _r0;
 
4754
    XMLVMElem _r1;
 
4755
    XMLVMElem _r2;
 
4756
    XMLVMElem _r3;
 
4757
    XMLVMElem _r4;
 
4758
    XMLVMElem _r5;
 
4759
    XMLVMElem _r6;
 
4760
    _r4.o = n1;
 
4761
    _r5.o = n2;
 
4762
    _r6.o = n3;
 
4763
    XMLVM_SOURCE_POSITION("String.java", 2063)
 
4764
    if (_r5.o != JAVA_NULL) goto label10;
 
4765
    XMLVM_SOURCE_POSITION("String.java", 2064)
 
4766
    _r2.o = __NEW_java_lang_NullPointerException();
 
4767
    // "null format argument"
 
4768
    _r3.o = xmlvm_create_java_string_from_pool(179);
 
4769
    XMLVM_CHECK_NPE(2)
 
4770
    java_lang_NullPointerException___INIT____java_lang_String(_r2.o, _r3.o);
 
4771
    XMLVM_THROW_CUSTOM(_r2.o)
 
4772
    label10:;
 
4773
    XMLVM_SOURCE_POSITION("String.java", 2066)
 
4774
    //java_lang_String_length__[8]
 
4775
    XMLVM_CHECK_NPE(5)
 
4776
    _r2.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r5.o)->tib->vtable[8])(_r5.o);
 
4777
    if (_r6.o != JAVA_NULL) goto label38;
 
4778
    _r3.i = 0;
 
4779
    label17:;
 
4780
    _r0.i = _r2.i + _r3.i;
 
4781
    XMLVM_SOURCE_POSITION("String.java", 2068)
 
4782
 
 
4783
    
 
4784
    // Red class access removed: java.util.Formatter::new-instance
 
4785
    XMLVM_RED_CLASS_DEPENDENCY();
 
4786
    _r2.o = __NEW_java_lang_StringBuilder();
 
4787
    XMLVM_CHECK_NPE(2)
 
4788
    java_lang_StringBuilder___INIT____int(_r2.o, _r0.i);
 
4789
 
 
4790
    
 
4791
    // Red class access removed: java.util.Formatter::<init>
 
4792
    XMLVM_RED_CLASS_DEPENDENCY();
 
4793
    XMLVM_SOURCE_POSITION("String.java", 2069)
 
4794
 
 
4795
    
 
4796
    // Red class access removed: java.util.Formatter::format
 
4797
    XMLVM_RED_CLASS_DEPENDENCY();
 
4798
 
 
4799
    
 
4800
    // Red class access removed: java.util.Formatter::toString
 
4801
    XMLVM_RED_CLASS_DEPENDENCY();
 
4802
    XMLVM_EXIT_METHOD()
 
4803
    return _r2.o;
 
4804
    label38:;
 
4805
    _r3.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r6.o));
 
4806
    _r3.i = _r3.i * 10;
 
4807
    goto label17;
 
4808
    //XMLVM_END_WRAPPER
 
4809
}
 
4810
 
 
4811
JAVA_INT java_lang_String_indexOf___java_lang_String_java_lang_String_int_int_char(JAVA_OBJECT n1, JAVA_OBJECT n2, JAVA_INT n3, JAVA_INT n4, JAVA_CHAR n5)
 
4812
{
 
4813
    XMLVM_CLASS_INIT(java_lang_String)
 
4814
    //XMLVM_BEGIN_WRAPPER[java_lang_String_indexOf___java_lang_String_java_lang_String_int_int_char]
 
4815
    XMLVM_ENTER_METHOD("java.lang.String", "indexOf", "?")
 
4816
    XMLVMElem _r0;
 
4817
    XMLVMElem _r1;
 
4818
    XMLVMElem _r2;
 
4819
    XMLVMElem _r3;
 
4820
    XMLVMElem _r4;
 
4821
    XMLVMElem _r5;
 
4822
    XMLVMElem _r6;
 
4823
    XMLVMElem _r7;
 
4824
    XMLVMElem _r8;
 
4825
    XMLVMElem _r9;
 
4826
    XMLVMElem _r10;
 
4827
    XMLVMElem _r11;
 
4828
    XMLVMElem _r12;
 
4829
    XMLVMElem _r13;
 
4830
    _r9.o = n1;
 
4831
    _r10.o = n2;
 
4832
    _r11.i = n3;
 
4833
    _r12.i = n4;
 
4834
    _r13.i = n5;
 
4835
    XMLVM_SOURCE_POSITION("String.java", 2084)
 
4836
    XMLVM_CHECK_NPE(9)
 
4837
    _r0.o = ((java_lang_String*) _r9.o)->fields.java_lang_String.value_;
 
4838
    XMLVM_SOURCE_POSITION("String.java", 2085)
 
4839
    XMLVM_CHECK_NPE(9)
 
4840
    _r1.i = ((java_lang_String*) _r9.o)->fields.java_lang_String.offset_;
 
4841
    XMLVM_SOURCE_POSITION("String.java", 2086)
 
4842
    XMLVM_CHECK_NPE(9)
 
4843
    _r9.i = ((java_lang_String*) _r9.o)->fields.java_lang_String.count_;
 
4844
    XMLVM_SOURCE_POSITION("String.java", 2087)
 
4845
    XMLVM_CHECK_NPE(10)
 
4846
    _r3.o = ((java_lang_String*) _r10.o)->fields.java_lang_String.value_;
 
4847
    XMLVM_SOURCE_POSITION("String.java", 2088)
 
4848
    XMLVM_CHECK_NPE(10)
 
4849
    _r5.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.offset_;
 
4850
    XMLVM_SOURCE_POSITION("String.java", 2089)
 
4851
    XMLVM_CHECK_NPE(10)
 
4852
    _r10.i = ((java_lang_String*) _r10.o)->fields.java_lang_String.count_;
 
4853
    _r2.i = 1;
 
4854
    _r4.i = _r10.i - _r2.i;
 
4855
    _r9.i = _r9.i + _r1.i;
 
4856
    _r10.i = _r1.i + _r4.i;
 
4857
    label18:;
 
4858
    XMLVM_SOURCE_POSITION("String.java", 2092)
 
4859
    if (_r10.i >= _r9.i) goto label71;
 
4860
    XMLVM_SOURCE_POSITION("String.java", 2093)
 
4861
    XMLVM_CHECK_NPE(0)
 
4862
    XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r10.i);
 
4863
    _r2.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r10.i];
 
4864
    if (_r13.i != _r2.i) goto label60;
 
4865
    XMLVM_SOURCE_POSITION("String.java", 2094)
 
4866
    _r2.i = 0;
 
4867
    label25:;
 
4868
    if (_r2.i >= _r4.i) goto label56;
 
4869
    XMLVM_SOURCE_POSITION("String.java", 2095)
 
4870
    _r6.i = _r2.i + _r5.i;
 
4871
    XMLVM_CHECK_NPE(3)
 
4872
    XMLVM_CHECK_ARRAY_BOUNDS(_r3.o, _r6.i);
 
4873
    _r6.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r3.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r6.i];
 
4874
    _r7.i = _r10.i + _r2.i;
 
4875
    _r7.i = _r7.i - _r4.i;
 
4876
    XMLVM_CHECK_NPE(0)
 
4877
    XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r7.i);
 
4878
    _r7.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r7.i];
 
4879
    if (_r6.i == _r7.i) goto label53;
 
4880
    XMLVM_SOURCE_POSITION("String.java", 2097)
 
4881
    _r6.i = 1;
 
4882
    _r7.i = 1;
 
4883
    XMLVM_SOURCE_POSITION("String.java", 2098)
 
4884
    XMLVM_CHECK_NPE(0)
 
4885
    XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r10.i);
 
4886
    _r8.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r10.i];
 
4887
    _r7.i = _r7.i << _r8.i;
 
4888
    _r7.i = _r7.i & _r11.i;
 
4889
    if (_r7.i != 0) goto label73;
 
4890
    XMLVM_SOURCE_POSITION("String.java", 2099)
 
4891
    _r2.i = _r2.i + _r6.i;
 
4892
    label47:;
 
4893
    XMLVM_SOURCE_POSITION("String.java", 2101)
 
4894
    _r2.i = java_lang_Math_max___int_int(_r12.i, _r2.i);
 
4895
    _r10.i = _r10.i + _r2.i;
 
4896
    XMLVM_SOURCE_POSITION("String.java", 2102)
 
4897
    goto label18;
 
4898
    label53:;
 
4899
    _r2.i = _r2.i + 1;
 
4900
    goto label25;
 
4901
    label56:;
 
4902
    XMLVM_SOURCE_POSITION("String.java", 2105)
 
4903
    _r9.i = _r10.i - _r4.i;
 
4904
    _r9.i = _r9.i - _r1.i;
 
4905
    label59:;
 
4906
    XMLVM_SOURCE_POSITION("String.java", 2113)
 
4907
    XMLVM_EXIT_METHOD()
 
4908
    return _r9.i;
 
4909
    label60:;
 
4910
    XMLVM_SOURCE_POSITION("String.java", 2108)
 
4911
    _r2.i = 1;
 
4912
    XMLVM_CHECK_NPE(0)
 
4913
    XMLVM_CHECK_ARRAY_BOUNDS(_r0.o, _r10.i);
 
4914
    _r6.i = ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r0.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r10.i];
 
4915
    _r2.i = _r2.i << _r6.i;
 
4916
    _r2.i = _r2.i & _r11.i;
 
4917
    if (_r2.i != 0) goto label68;
 
4918
    XMLVM_SOURCE_POSITION("String.java", 2109)
 
4919
    _r10.i = _r10.i + _r4.i;
 
4920
    label68:;
 
4921
    XMLVM_SOURCE_POSITION("String.java", 2111)
 
4922
    _r10.i = _r10.i + 1;
 
4923
    goto label18;
 
4924
    label71:;
 
4925
    _r9.i = -1;
 
4926
    goto label59;
 
4927
    label73:;
 
4928
    _r2 = _r6;
 
4929
    goto label47;
 
4930
    //XMLVM_END_WRAPPER
 
4931
}
 
4932
 
 
4933
JAVA_OBJECT java_lang_String_getValue__(JAVA_OBJECT me)
 
4934
{
 
4935
    //XMLVM_BEGIN_WRAPPER[java_lang_String_getValue__]
 
4936
    XMLVM_ENTER_METHOD("java.lang.String", "getValue", "?")
 
4937
    XMLVMElem _r0;
 
4938
    XMLVMElem _r1;
 
4939
    _r1.o = me;
 
4940
    XMLVM_SOURCE_POSITION("String.java", 2120)
 
4941
    XMLVM_CHECK_NPE(1)
 
4942
    _r0.o = ((java_lang_String*) _r1.o)->fields.java_lang_String.value_;
 
4943
    XMLVM_EXIT_METHOD()
 
4944
    return _r0.o;
 
4945
    //XMLVM_END_WRAPPER
 
4946
}
 
4947
 
 
4948
JAVA_BOOLEAN java_lang_String_isEmpty__(JAVA_OBJECT me)
 
4949
{
 
4950
    //XMLVM_BEGIN_WRAPPER[java_lang_String_isEmpty__]
 
4951
    XMLVM_ENTER_METHOD("java.lang.String", "isEmpty", "?")
 
4952
    XMLVMElem _r0;
 
4953
    XMLVMElem _r1;
 
4954
    _r1.o = me;
 
4955
    XMLVM_SOURCE_POSITION("String.java", 2124)
 
4956
    //java_lang_String_length__[8]
 
4957
    XMLVM_CHECK_NPE(1)
 
4958
    _r0.i = (*(JAVA_INT (*)(JAVA_OBJECT)) ((java_lang_String*) _r1.o)->tib->vtable[8])(_r1.o);
 
4959
    if (_r0.i != 0) goto label8;
 
4960
    _r0.i = 1;
 
4961
    label7:;
 
4962
    XMLVM_EXIT_METHOD()
 
4963
    return _r0.i;
 
4964
    label8:;
 
4965
    _r0.i = 0;
 
4966
    goto label7;
 
4967
    //XMLVM_END_WRAPPER
 
4968
}
 
4969
 
 
4970
JAVA_INT java_lang_String_compareTo___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1)
 
4971
{
 
4972
    //XMLVM_BEGIN_WRAPPER[java_lang_String_compareTo___java_lang_Object]
 
4973
    XMLVM_ENTER_METHOD("java.lang.String", "compareTo", "?")
 
4974
    XMLVMElem _r0;
 
4975
    XMLVMElem _r1;
 
4976
    XMLVMElem _r2;
 
4977
    _r1.o = me;
 
4978
    _r2.o = n1;
 
4979
    XMLVM_SOURCE_POSITION("String.java", 53)
 
4980
    _r2.o = _r2.o;
 
4981
    XMLVM_CHECK_NPE(1)
 
4982
    _r0.i = java_lang_String_compareTo___java_lang_String(_r1.o, _r2.o);
 
4983
    XMLVM_EXIT_METHOD()
 
4984
    return _r0.i;
 
4985
    //XMLVM_END_WRAPPER
 
4986
}
 
4987
 
 
4988
void java_lang_String___CLINIT_()
 
4989
{
 
4990
    //XMLVM_BEGIN_WRAPPER[java_lang_String___CLINIT___]
 
4991
    XMLVM_ENTER_METHOD("java.lang.String", "<clinit>", "?")
 
4992
    XMLVMElem _r0;
 
4993
    XMLVMElem _r1;
 
4994
    XMLVMElem _r2;
 
4995
    XMLVM_SOURCE_POSITION("String.java", 140)
 
4996
    _r1.o = __NEW_java_lang_String_CaseInsensitiveComparator();
 
4997
    _r2.o = JAVA_NULL;
 
4998
    XMLVM_CHECK_NPE(1)
 
4999
    java_lang_String_CaseInsensitiveComparator___INIT____java_lang_String_1(_r1.o, _r2.o);
 
5000
    java_lang_String_PUT_CASE_INSENSITIVE_ORDER( _r1.o);
 
5001
    XMLVM_SOURCE_POSITION("String.java", 157)
 
5002
    _r1.i = 128;
 
5003
    XMLVM_CLASS_INIT(char)
 
5004
    _r1.o = XMLVMArray_createSingleDimension(__CLASS_char, _r1.i);
 
5005
    java_lang_String_PUT_ascii( _r1.o);
 
5006
    XMLVM_SOURCE_POSITION("String.java", 158)
 
5007
    _r0.i = 0;
 
5008
    label15:;
 
5009
    _r1.o = java_lang_String_GET_ascii();
 
5010
    _r1.i = XMLVMArray_count(((org_xmlvm_runtime_XMLVMArray*) _r1.o));
 
5011
    if (_r0.i >= _r1.i) goto label28;
 
5012
    XMLVM_SOURCE_POSITION("String.java", 159)
 
5013
    _r1.o = java_lang_String_GET_ascii();
 
5014
    _r2.i = _r0.i & 0xffff;
 
5015
    XMLVM_CHECK_NPE(1)
 
5016
    XMLVM_CHECK_ARRAY_BOUNDS(_r1.o, _r0.i);
 
5017
    ((JAVA_ARRAY_CHAR*) (((org_xmlvm_runtime_XMLVMArray*) _r1.o)->fields.org_xmlvm_runtime_XMLVMArray.array_))[_r0.i] = _r2.i;
 
5018
    _r0.i = _r0.i + 1;
 
5019
    goto label15;
 
5020
    label28:;
 
5021
    XMLVM_SOURCE_POSITION("String.java", 161)
 
5022
    XMLVM_EXIT_METHOD()
 
5023
    return;
 
5024
    //XMLVM_END_WRAPPER
 
5025
}
 
5026